Jwt 403关于谷歌行动推送通知请求

Jwt 403关于谷歌行动推送通知请求,jwt,actions-on-google,Jwt,Actions On Google,我正在尝试为Google Actions Intent执行推送通知 到目前为止,我已经按照这里的说明进行了操作: 这是我的结果代码: const {google} = require('googleapis'); var request = require('request'); const key = require('./bot.json'); module.exports = async function (context, myQueueItem) { context.log

我正在尝试为Google Actions Intent执行推送通知

到目前为止,我已经按照这里的说明进行了操作:

这是我的结果代码:

const {google} = require('googleapis');
var request = require('request');

const key = require('./bot.json');

module.exports = async function (context, myQueueItem) {
    context.log('JavaScript queue trigger function processed work item', myQueueItem);

    let jwtClient = new google.auth.JWT(
        key.client_email, null, key.private_key,
       ['https://www.googleapis.com/auth/actions.fulfillment.conversation'],
        null
      );

      jwtClient.authorize((err, tokens) => {
        // code to retrieve target userId and intent
        let notif = {
          userNotification: {
            title: [message],
          },
          target: {
              userId:[obtained from permission request],
              intent: [name of intent],
            // Expects a IETF BCP-47 language code (i.e. en-US)
            locale: 'en-US'
          },
        };

        request.post('https://actions.googleapis.com/v2/conversations:send', {
          'auth': {
            'bearer': tokens.access_token,
           },
          'json': true,
          'body': {'customPushMessage': notif},
        }, (err, httpResponse, body) => {
            console.log(body);
           console.log(httpResponse.statusCode + ': ' + httpResponse.statusMessage);
        });
      });
};

//module.exports(console, "Test");

这将导致来自通知服务的403。这是因为生成了用户id、意图名称还是jwtoken?

以下是发送推送通知之前需要检查的步骤

  • 检查您的谷歌权限设置 为了测试该操作,您需要启用必要的权限
  • 转到“活动控制”页面()。 如果您尚未登录,请使用您的Google帐户登录。 确保启用了以下权限:

    a.Web & App Activity
    b.Device Information
    c.Voice & Audio Activity
    
    2.目标意图名称应添加到隐式调用字段中。 启用推送通知。
    3.在您的google助手中使用与您在GCP

    中登录时使用的相同的电子邮件id。您是否启用了在操作控制台中为您的意图在用户参与中发送推送通知?是的,我在用户参与中启用了它。您一直都有403吗?发送通知时,每用户每分钟有1个通知的限制。你收到错误信息了吗?是的。100%失败您是否为项目启用了操作API?转到以激活Actions API,并选择您在Google控制台上的Actions上创建的项目。然后,单击启用按钮。