首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得Alexa技能中的下一个功能

如何获得Alexa技能中的下一个功能
EN

Stack Overflow用户
提问于 2020-02-02 17:58:56
回答 1查看 98关注 0票数 0

我是新建立alexa技能,我正在尝试建立一个技能,读取您的wifi密码。在未来,我想使这种动态,以便有人可以添加他们自己的wifi密码,并让他们读回来。现在我的密码是硬编码的。我想提示alexa向用户询问一个特定的密码(目前我也有这个硬编码)。如果密码正确,则读出存储的wifi密码。问题是我不知道如何处理第二个函数。下面是用户和Alexa之间的对话流程。

用户:"Alexa,我的wifi密码是什么?“

亚历克莎:“你的密码是什么?”

用户:“好极了。”

如果正确密码 Alexa:“谢谢。你的wifi密码是P A,S,S,W,O,R。”

如果密码错误 Alexa:“密码错误。您的密码错误是什么?”

这是我的GetPassword函数。

代码语言:javascript
复制
const GetPassword = {
    canHandle(handlerInput) {
        return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest';
    },
    handle(handlerInput) {
        const speakOutput = "What is the passphrase?"
        return handlerInput.responseBuilder
            .speak(speakOutput)
            .reprompt(speakOutput)
            .getResponse();
    }
};

这是我的CheckPhrase函数。

代码语言:javascript
复制
const CheckPhrase = {
    canHandle(handlerInput) {
        return Alexa.getRequestType(handlerInput.requestEnvelope) === 'IntentRequest';
    },
    handle(handlerInput) {
        const speakOutput = "Your password is, YOUR_WIFI_PASSWORD"
        return handlerInput.responseBuilder
            .speak(speakOutput)
            .reprompt(speakOutput)
            .getResponse();
    }
};

我的目的是在运行第一个函数之后,当用户在短语中输入/输入时执行CheckPhrase。我可以很好地到达第一个函数,并且被提示输入一个密码。但是当我输入密码时,它只是重复前面的提示符。我尝试过使用if/ not语句来验证用户的输入,但我不太确定如何访问正确的值。我还尝试在刚刚执行密码读取的responseBuilder of GetPassword中调用GetPassword。我也尝试过使用reprompt,但我相信如果在经过一定时间之后,这种技能还没有收到用户的输入,那就更好了。

如果这些是amazon技能开发的基本方面,我很抱歉,但是我已经阅读了文档,也许我没有使用正确的短语来搜索我正在寻找的东西,但它一直没有效果。我看过几篇文章,但我没有找到任何与输入验证或使用辅助函数有关的问题。

我的代码目前托管在Alexa控制台中,而不是Lambda (我不确定这是否相关)。我现在不使用任何插槽。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-03 23:30:57

听起来你需要时间确认。从官方文档中查看此页面:https://developer.amazon.com/en-US/docs/alexa/custom-skills/define-the-dialog-to-collect-and-confirm-required-information.html

Sidenote:当代码按预期工作时,您可能需要使用一些SSML来拼写密码:https://forums.developer.amazon.com/questions/190384/how-configure-alexa-to-confirm-numeric-slots-input.html

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60028989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档