我有一个Android应用程序,发送短信息给我的twilio号码,内容在json中。我有一个twiml烧瓶python应用程序,应该从Android应用程序读取用户以前的短信,它应该返回一个自定义的回复消息,说明用户在文本中说的重复。
所以如果用户说“圣何塞”。 twiml应用程序(托管在heroku服务器上)将回复“你想要去”< - Destination - > “?”。所以在这种情况下它会回答“你想去圣何塞吗?”
如何才能阅读用户留言并根据留言回复?
P.S。我对python和flask和twilio有点新,所以任何代码答案都会有所帮助。
这是我的代码:
from flask import Flask, request, redirect
from twilio.rest import TwilioRestClient
import twilio.twiml
import requests
import json
import httplib
app = Flask(__name__)
# Try adding your own number to this list!
callers = {
"+14151234556": "The Hunter",
"+14158675310": "The Best",
"+14158675311": "Virgil",
}
@app.route("/", methods=['GET', 'POST'])
def hello_monkey():
ACCOUNT_SID = "askdfjhaksjdfklajsdlfjaslkdfjals"
AUTH_TOKEN = "kasjdkjaSDKjaskdjkasJDkasjdkljAS"
"""Respond and greet the caller by name."""
from_number = request.values.get('From', None)
if from_number in callers:
message = callers[from_number] + ", follow these directions to get to your destination: "
else:
message = "User, thanks for the message!"
resp = twilio.twiml.Response()
resp.message(message)
return str(resp)
if __name__ == "__main__":
app.run(debug=True)
答案 0 :(得分:0)
Twilio开发者传播者在这里。你似乎走在正确的道路上,并且几乎是正确的。
您需要做的就是更改以下代码段:
from_number = request.values.get('From', None)
if from_number in callers:
message = callers[from_number] + ", follow these directions to get to your destination: "
else:
message = "User, thanks for the message!"
要:
from_number = request.values.get('From', None)
if from_number in callers:
message = callers[from_number] + ", follow these directions to get to your destination: " + request.values.get('Body', None)
else:
message = "User, thanks for the message!"
注意我是如何向它添加request.values.get('Body', None)
的,因此它会选择该变量并在生成TwiML时使用它。如果能解决您的问题,请告诉我。