在讨论问题之前,我想介绍一个图书馆。 Flask-Ask 是一个Flask扩展程序,它使构建Amazon Echo的Alexa技能变得更加容易。我相信大多数人都知道。使用Flask_Ask,我可以启动技能
@ask.launch
def welcome()
return statement('Welcome to the Skill')
因此,当我启动该技能时,会触发welcome方法(表现为端点),而alexa说Welcome to the Skill
。假设,如果我想映射意图,下面是示例
@ask.intent('FirstName')
def setupName(name):
name = name.lower()
return statement('Hello your name is',name)
当我说出意图“ FirstName”的示例话语时,例如Sure.{name}
,名字是manu,那么Alexa会说Hello your name is Manu
。
现在,转到Flask api。要呈现html页面,
@app.route('/')
def home():
return render_template('home')
@app.route('/index')
def index():
return render_template('index')
当我访问url / home,/ index时,上述两个方法返回页面home.html,index.html。
现在我的问题是我该如何呈现HTML页面以及Alexa技能回复。例如,以下方法应呈现模板并返回Alexa的响应。有没有办法实现以下行为。
@app.route('/name')
@app.intent('FirstIntent')
def setupName(name):
name = name.lower()
'''
return statement('Hello your name is',name)
return render_template('name.html')
'''
总的来说,我想转到另一个页面并返回alexa答复。如果我的问题不清楚,请原谅我。我很高兴回答问题。