我想使用Twilio的语音可编程号码来编写简单流程。我想问用户4个问题,然后根据第一个问题(是或否)问一个不同的问题,并根据第二个问题(是或否)问一个不同的问题,依此类推。
到目前为止,我有以下内容:
from flask import Flask, request
from twilio.twiml.voice_response import VoiceResponse, Gather
import twilio
app = Flask(__name__)
@app.route("/voice", methods=['GET', 'POST'])
def voice():
"""Respond to incoming phone calls with a 'Hello world' message"""
# Start our TwiML response
resp = VoiceResponse()
# Read a message aloud to the caller
resp.say("Welcome to chatbot!", voice='alice')
# Start our <Gather> verb
with resp.gather(numDigits=1, action="/handle-key", method="POST") as g:
g.say("""For sales, press 1.
For marketing, press 2.
""")
print (resp)
return str(resp)
@app.route("/handle-key", methods=['GET', 'POST'])
def handle_key():
"""Handle key press from a user."""
digit_pressed = request.values.get('Digits', None)
resp = VoiceResponse()
print (digit_pressed)
resp.say("You pressed " + str(digit_pressed))
return str(resp)
@app.route('/sales', methods = ['GET', 'POST'])
def sales():
pass
@app.route('/marketing', methods = ['GET', 'POST'])
def marketing():
pass
if __name__ == "__main__":
app.run(debug=True)
我的问题是我是否必须为每个收集动作创建新功能,还是可以在初始视图(功能语音)中收集按下的数字/文本(来自用户所说的语音)
我在这个问题上花费了相当多的时间,还无法给出确切的答案。