【问题标题】:Alex reminder api - Error: connect ECONNREFUSED 127.0.0.1:443Alex 提醒 api - 错误:连接 ECONNREFUSED 127.0.0.1:443
【发布时间】:2019-02-27 02:40:41
【问题描述】:

我想使用我的 Alexa 技能创建提醒。 但我收到“错误:连接 ECONNREFUSED 127.0.0.1:443”的错误

文档链接 - https://developer.amazon.com/docs/smapi/alexa-reminders-api-reference.html

我已在 deleloper.amazon.com 中启用了我的 alexa 技能的提醒权限。

我已经包含了 https 模块。

提前致谢。

if (event.request.type === 'IntentRequest') {
    var response =  new Response(context,event.session);
    if (event.request.intent.name in intentHandlers) {
       intentHandlers['newTimer'](event.request, event.session, response,getSlots(event.request),event);
        }
}



// Code to create reminder 
intentHandlers['newTimer'] = function(request,session,response,slots,event){

  var time  = new Date();  
  let start = time.toISOString();
  if (start.substring(start.length - 1) === 'Z') {
    start = start.substring(0, start.length - 1);
  }

var post_data  = JSON.stringify({
   "requestTime" : start,
   "trigger": {
        "type" : "SCHEDULED_ABSOLUTE",
        "scheduledTime" : "2018-02-26T19:00:00.000",
        "timeZoneId" : "America/Los_Angeles",
        "recurrence" : {                     
            "freq" : "WEEKLY",               
            "byDay": ["MO"]                 
        }
   },
   "alertInfo": {
        "spokenInfo": {
            "content": [{
                "locale": "en-US", 
                "text": "walk the dog"
            }]
        }
    },
    "pushNotification" : {                            
         "status" : "ENABLED"
    }
});

  const req_options = {
    path: event.context.System.apiEndpoint + '/v1/alerts/reminders',
    method: 'POST',
    headers: {
      "Authorization": 'Bearer'+event.context.System.apiAccessToken, 
      "content-type": "application/json",
    }
  }

  const req = https.request(req_options, (res) => {
    res.on('data', (d) => {
      response.speechText = 'Ok, Setting timer for 25 minutes.';
      response.repromptText = 'For example, . ';
      response.shouldEndSession = false;
      response.done();
    })
  })
req.write(post_data);

  req.on('error', (error) => {
      response.speechText = 'Sorry Unable to set reminder for you.'+error;
      response.repromptText = 'For example, . ';
      response.shouldEndSession = false;
      response.done();
  })


}

【问题讨论】:

    标签: alexa


    【解决方案1】:

    你应该在 Bearer 和 access token 之间添加一个空格

    "Authorization": 'Bearer '+event.context.System.apiAccessToken'

    您使用的是哪个版本的alexa-sdk

    【讨论】:

      猜你喜欢
      • 2020-09-19
      • 2022-12-23
      • 2020-12-11
      • 2019-03-15
      • 2021-03-14
      • 1970-01-01
      • 1970-01-01
      • 2019-08-07
      • 2018-08-07
      相关资源
      最近更新 更多