我编写了一个简单的脚本,用于在用户首先发送文本时向用户发送文本。当我将电话号码直接链接到webhook时,一切正常。但是,当我将webhook作为http请求嵌入到Studio流中时,该函数被运行(我已经调试了运行的打印语句),但是消息没有发送给用户。谁能告诉我为什么?
供参考,这是我的代码
namedtuple
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
当您将HTTP请求用作Twilio Studio流的一部分时,响应将由流本身接收,而不是用于控制发送给用户的消息。
如果不需要来自运行该代码的任何服务器的任何外部输入,则建议使用Studio中的发送消息小部件替换HTTP请求。
如果作为流程的一部分,您需要在服务器上进行一些外部处理,那么我建议您以JSON形式返回结果,并嵌入要发送的消息。像这样:
from flask import Flask, request, jsonify
@app.route('/sms', methods=['POST'])
def sms_reply():
message = get_awesome_message()
return jsonify(message=message)
然后,在Studio流程中,该请求成功返回后,其他小部件(包括发送消息小部件)便可以通过调用widgets.MY_WIDGET_NAME.parsed
来使用结果。进一步了解using the HTTP request widget in the documentation。