在谷歌助手应用程序内拨打电话时出现问题



我试图在基本卡中实现按钮,我得到了一个错误

API版本2:无法分析JSON响应字符串,"INVALID_ARGUMENT"错误:"(expected_inputs[0].input_prompt.rich_initial_prompt.items[1].basic_card.buttons[0].open_url_action(版本:找不到字段。"HTTP状态代码:200。

conv.ask(new BasicCard({
text: `This is a basic card.  Text in a basic card can include "quotes" and`,
subtitle: 'This is a subtitle',
buttons: [
{
"title": "Call",
"openUrlAction": {
"url": "tel:+91123456789",
"androidApp": {
"packageName": "com.android.phone"
},
"versions": []
}
},
],
"formattedText": "Some text",
image: new Image({
url: 'https://storage.googleapis.com/actionsresources/logo_assistant_2x_64dp.png',
alt: 'Image alternate text',
}),
"title": "Card Title"
}));

我尝试了所有的方法在按钮阵列中添加另一个空对象,也出现了同样的错误:

buttons: [
{
"title": "Call",
"openUrlAction": {
"url": "tel:+91123456789",
"androidApp": {
"packageName": "com.android.phone"
},
"versions": []
}
},
{}
],

下面的尝试代码出现错误:

expected_inputs[0]。input_prompt.rich_initial_promt.items[1]。basic_card.buttons[0]。open_url_action:协议必须是http或https。

buttons: new Button({
"title": "button text",
'url': "tel:+91123456789",
"androidApp": {
"packageName": "com.android.phone"
}
})

在操作控制台模拟器中得到响应:

"buttons": [
{
"title": "button text",
"openUrlAction": {
"url": "tel:+919177723773"
}
}
]

您无法通过助手打开tel:URL。

如错误所示:

expected_inputs[0]。input_prompt.rich_initial_promt.items[1]。basic_card.buttons[0]。open_url_action:协议必须是http或https。

请记住,Assistant运行在不支持tel:URL的设备上,即使它们支持https:URL。

您正在使用的URL属性包括一个电话号码。链接属性只能使用指向网页的链接。这也会在您收到的错误消息中返回:

">协议必须是http或https。".

因此,如果你想修复这个错误,你需要在按钮中包含http或https链接,而不是电话号码。

至于从谷歌助手应用程序拨打电话号码,我不确定目前是否支持此功能。

最新更新