Amazon Alexa帐户链接未在LinkAccount卡上显示授权链接

时间:2018-07-08 00:39:57

标签: oauth alexa alexa-skill

已经讨论了无数有关该主题的资料,请在这里提供帮助:

我正在设置从Amazon Alexa“技能”到外部服务的OAuth 2.0帐户链接。该技能成功识别出缺少访问令牌,并向用户显示LinkAccount卡。问题是:卡上没有指向授权页面的链接。

技能的帐户链接设置中肯定提供了相应的授权URI。

意图代码:

const LaunchRequestHandler = {

canHandle(handlerInput) {
    return handlerInput.requestEnvelope.request.type === 'LaunchRequest';
},

handle(handlerInput) {
    const accessToken = handlerInput.requestEnvelope.context.System.user.accessToken;

    if (accessToken == undefined){
        const speechText = "Please use the Alexa app to link your Amazon account to the external account" 

        return handlerInput.responseBuilder
            .speak(speechText)
            .withLinkAccountCard()
            .getResponse();

    } else {
        const speechText = 'Welcome to the Alexa Skills Kit, you can say hello!';

        return handlerInput.responseBuilder
            .speak(speechText)
            .reprompt(speechText)
            .withSimpleCard('Hello World', speechText)
            .getResponse();
    }
},

};

JSON输出:

{
"body": {
    "version": "1.0",
    "response": {
        "outputSpeech": {
            "type": "SSML",
            "ssml": "<speak>Please use the Alexa app to link your Amazon account to the external account</speak>"
        },
        "card": {
            "type": "LinkAccount"
        }
    },
    "sessionAttributes": {},
    "userAgent": "ask-node/2.0.7 Node/v6.10.3"
}

}

我正在使用Amazon开发人员控制台模拟器和iOS Alexa应用进行测试(无物理设备)。

谢谢。

0 个答案:

没有答案