以下是我正在遵循的设置: 我遵循了https://developers.google.com/actions/assistant/updates中提到的内容:
{ code: 400,
message: 'Unauthorized push.',
status: 'INVALID_ARGUMENT' } } '400: Bad Request'
这是发送通知的代码: 我已经对userId进行了硬编码,这是我在向用户请求许可后的最后一步意图中实现后端的userId。
const google = require('googleapis');
const key = require("./service-account-key.json");
var jwtClient = new google.auth.JWT(
key.client_email, null, key.private_key,
['https://www.googleapis.com/auth/actions.fulfillment.conversation'],
null
);
jwtClient.authorize(function (err, tokens) {
var notif = {
userNotification: {
title: "This is a test reply",
},
target: {
userId: 'ABwppHE75K2ZVr00a7EcCT_4hv00fck7aFtdR7PmO_w3U3j9w1b3uCjyCoStVAHSgv5LL3Swup9RmkZ-',
intent: 'doctor_reply'
}
}
console.log(JSON.stringify(tokens) + "\n" + JSON.stringify(notif));
request.post('https://actions.googleapis.com/v2/conversations:send', {
'auth': {
'bearer': tokens.access_token
},
'json': true,
'body': { 'customPushMessage': notif, 'isInSandbox': true}
}, function(err,httpResponse,body) {
console.log("notification sent");
console.log(err, body, httpResponse.statusCode + ': ' + httpResponse.statusMessage)
});
});
有没有人遇到过类似的问题?
答案 0 :(得分:1)
经过调试和调试后通过反复试验。我意识到我是在IOS手机和手机上尝试的。由于某些原因,api因IOS助手版本而出现此错误。我假设,因为他们在他们的文档中说它仍处于测试阶段,他们可能没有为ios用户启用它。
一旦我对我的Android手机运行谷歌助手测试版本,我立即获得了200个&通知就像一个魅力。