我正在为物联网使用谷歌智能家居操作...我更新了我的操作网址和帐户链接详细信息。当我尝试在模拟器中启用测试以将我的 TestAPP 部署到云时,它失败了,它给我一个错误“不支持 GoogleFulfillment 'actions.fulfillment.devices'”并且链接的应用程序不更新旧 URL。这几天前奏效了。谷歌方面的任何变化或任何人有任何线索?
问问题
930 次
1 回答
1
有一个手动解决方法。感谢 Google 助理论坛:
步骤: 1 - 在https://developers.google.com/actions/tools/gactions-cli下载 gactions cli
2 - 使用任何命令进行身份验证:
./gactions list --project [YOUT_PROJECT_ID]
3 - 下载您的操作的 json 表示:
./gactions get --project [YOUR_PROJECT_ID] --version draft > action.json
4 - 编辑 json。从其数组中提取唯一的对象,删除嵌套的“googleFulfillments”对象:
"googleFulfillments": [
{
"endpoint": {
"baseUrl": "[URL]"
},
"name": "actions.fulfillment.devices"
}
],
5 - 删除文件顶部和末尾的括号“[]”。一次只能激活一种语言。从 action.json 文件中删除所有不必要的数据。该文件如下所示,其参数为:
{
"accountLinking": {
"accessTokenUrl": "xxxx",
"assertionTypes": [
"ID_TOKEN"
],
"authenticationUrl": "xxx",
"clientId": "xxx",
"clientSecret": "xxxx",
"grantType": "AUTH_CODE"
},
"actions": [
{
"description": "Smart home action for project xxxxxxx",
"fulfillment": {
"conversationName": "AoGSmartHomeConversation_xxxxxx"
},
"name": "actions.devices"
}
],
"conversations": {
"AoGSmartHomeConversation_xxxxxxxx": {
"name": "",
"url": "xxxxxxx"
}
},
"locale": "en",
"manifest": {
"category": "xxx",
"companyName": "xxx",
"contactEmail": "xxx",
"displayName": "xxx",
"largeLandscapeLogoUrl": "xxxxxx",
"longDescription": "xxxx",
"privacyUrl": "xxx",
"shortDescription": "xxxx",
"smallSquareLogoUrl": "xxxx",
"termsOfServiceUrl": "xxxxx",
"testingInstructions": "xxxxx"
}
}
6 - 如果您更新了履行、身份验证或令牌的 URL,请转到 Google 操作控制台并在那里更新他的条目;
7 - 将您的固定动作推入测试:
./gactions test --project [YOUR_PROJECT_ID] --action_package ./action.json
这取代了谷歌助手手册设置中的步骤“点击测试下的模拟器”。它对我有用!
更多帮助:https ://community.home-assistant.io/t/google-assistant-trouble-shooting/99223/142
于 2019-02-22T18:18:16.170 回答