我试图在基本卡中实现按钮,我得到了一个错误
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链接,而不是电话号码。
至于从谷歌助手应用程序拨打电话号码,我不确定目前是否支持此功能。