Actions on google 多支持:askForNewSurface

Actions on google 多支持:askForNewSurface,actions-on-google,Actions On Google,有人能让askForNewSurface()工作吗? 它应该询问用户是否希望在其他支持上继续对话,但实际上似乎只是默默地失败了,至少对我来说是这样 我在一个法国谷歌主页上与一名法国助手进行了尝试,该主页链接到一个同样配置在法国安卓手机上的法国账户,但没有成功 我尝试将所有内容都转换为英语,效果更好,因为“HasAvailablesSurfaceCapabilities”返回true(如果我的记忆力不太差,法语就不是这样了……),但它只是在askForNewSurface()调用时停止 我通过谷歌

有人能让askForNewSurface()工作吗? 它应该询问用户是否希望在其他支持上继续对话,但实际上似乎只是默默地失败了,至少对我来说是这样

我在一个法国谷歌主页上与一名法国助手进行了尝试,该主页链接到一个同样配置在法国安卓手机上的法国账户,但没有成功

我尝试将所有内容都转换为英语,效果更好,因为“HasAvailablesSurfaceCapabilities”返回true(如果我的记忆力不太差,法语就不是这样了……),但它只是在askForNewSurface()调用时停止

我通过谷歌SDK上的操作在他们的文档之后制作了这个助手

代码如下:

if (assistant.hasSurfaceCapability(assistant.SurfaceCapabilities.SCREEN_OUTPUT)) {
    if (!assistant.isNewSurface()) {
        assistant.tell("I found no screen.");
    } else {
        assistant.tell("You seem to have a screen available !");
    }
} else if (assistant.hasAvailableSurfaceCapabilities(assistant.SurfaceCapabilities.SCREEN_OUTPUT)) {
    try {
        let res = assistant.askForNewSurface("To display additional content", "Do you want proceed on this scree ?", [assistant.SurfaceCapabilities.SCREEN_OUTPUT]);
        console.log(res);
    }catch(e) {
        console.error("ERROR askForNewSurface()");
        console.log(e);
    }
} else {
    assistant.tell("Sorry i found no screen");
}
当然,“console.error(“error askForNewSurface()”);永远不会被激发。一切似乎都很好,但什么也没发生

有什么想法吗

祝您愉快:)

它在工作

我在测试的项目中有非常奇怪的行为,所以我从零开始了一个新的项目

这是一个在google actions最开始的时候用GaAction CLI开发的项目。后来我把它切换到DialogFlow/webhook。 非常奇怪的是,有时我作为DialogFlow源接收请求,有时作为SDK源接收请求。 此外,配置的“操作”部分是空的,它应该告诉我它是否链接到“对话流”、“SDK”或其他任何东西,我无法将其正确设置回原处。 最后,dialogflow在更新后迁移到管理多语言可能并不完美,因为该项目最初是全英文的,但当我导出该项目时,JSON文件的名称都是“intentName_fr”,而不是“en”

TLDR项目可能在各个层面上都搞砸了:D

我用相同的源代码从头开始构建了一个新的,并且工作正常。我会问“如果我把它发送到你的手机上可以吗?”如果我说可以,我会在手机上收到通知

谢谢大家的回答:)

它起作用了

我在测试的项目中有非常奇怪的行为,所以我从零开始了一个新的项目

这是一个在google actions最开始的时候用GaAction CLI开发的项目。后来我把它切换到DialogFlow/webhook。 非常奇怪的是,有时我作为DialogFlow源接收请求,有时作为SDK源接收请求。 此外,配置的“操作”部分是空的,它应该告诉我它是否链接到“对话流”、“SDK”或其他任何东西,我无法将其正确设置回原处。 最后,dialogflow在更新后迁移到管理多语言可能并不完美,因为该项目最初是全英文的,但当我导出该项目时,JSON文件的名称都是“intentName_fr”,而不是“en”

TLDR项目可能在各个层面上都搞砸了:D

我用相同的源代码从头开始构建了一个新的,并且工作正常。我会问“如果我把它发送到你的手机上可以吗?”如果我说可以,我会在手机上收到通知


谢谢大家的回答:)

我想知道这个功能是否准备好了。如果我告诉我的家,“在我的手机上显示google.com”,它会回答“没有屏幕显示网站”。我想我以后再试试!嗯,这个功能应该可以正常工作。此外,英语和法语之间应该有特征对等,所以应该没有区别。星期一我会找人来试试,看看我们能不能搞清楚这里到底发生了什么。嗨,杜斯,对我来说成功了。视频如下所示。几个问题:您是否已经到了询问用户是否想要切换的地步?如果使用Dialogflow,是否在Dialogflow中设置了正确的事件?另外,与第二个链接相比,您似乎正在使用此文档。第二个链接在对话框流中提供了有关事件的更多信息。谢谢您的回答!明天上班的时候我会检查一下!我似乎确实错过了dialogflow事件,这可能是我挣扎的原因。感谢您非常有用的videi系统编码器!我会让你们两个张贴后,我添加到我的项目丢失的一块!我只是想澄清一下,你是否得到提示说它将在电话上继续对话?我真的想知道这个功能是否准备好了。如果我告诉我的家,“在我的手机上显示google.com”,它会回答“没有屏幕显示网站”。我想我以后再试试!嗯,这个功能应该可以正常工作。此外,英语和法语之间应该有特征对等,所以应该没有区别。星期一我会找人来试试,看看我们能不能搞清楚这里到底发生了什么。嗨,杜斯,对我来说成功了。视频如下所示。几个问题:您是否已经到了询问用户是否想要切换的地步?如果使用Dialogflow,是否在Dialogflow中设置了正确的事件?另外,与第二个链接相比,您似乎正在使用此文档。第二个链接在对话框流中提供了有关事件的更多信息。谢谢您的回答!明天上班的时候我会检查一下!我似乎确实错过了dialogflow事件,这可能是我挣扎的原因。感谢您非常有用的videi系统编码器!我会让你们两个张贴后,我添加到我的项目丢失的一块!我想明确一点,你是否得到提示说它将在电话上继续对话?