要求SDK python返回LinkAccountCard

问题描述 投票:1回答:1

我是Alexa自定义技能的新手,如果我的用户触发了需要认证的意图,我希望他们链接其帐户以继续使用我的技能。当然,我的技能需要向他们返回说明,以帮助他们了解如何关联他们的帐户。

我在Officical docs中找到了,但是很遗憾,没有python的示例代码。经过数小时的互联网研究,我在LinkAccountClass上找到了ask_sdk_model.ui。所以我开始像这样将此类添加到我的代码中:

from ask_sdk_model.ui import LinkAccountCard if not handler_input.request_envelope.context.system.user.access_token: speech = "You must open alexa app on your phone and link you account to continue" handler_input.response_builder.speak(speech).set_card(LinkAccountCard(speech)) return handler_input.response_builder.set_should_end_session(False).response

但是Alexa一直对我说:“抱歉,我不能帮您这个忙。”如果我使用.set_card(SimpleCard(speech))而不是.set_card(LinkAccountCard(speech)),Alexa会显示消息“您必须在手机上打开alexa应用程序并链接您的帐户才能继续”,而不会出现任何错误。那么,如何将linkAccountCard返回给用户以帮助他们进入设置中的链接帐户?

非常感谢!

python alexa alexa-skills-kit ask-sdk
1个回答
0
投票

LinkAccountCard不接受任何参数;将其更改为.set_card(LinkAccountCard()),您应该会很好。 Alexa提供了该卡的副本。

或者,您可以使用…

from ask_sdk_model.ui import Card

… 

handler_input.response_builder.set_card(Card('LinkAccount'))
© www.soinside.com 2019 - 2024. All rights reserved.