簡體   English   中英

Twilio SMS Repsonse

[英]Twilio SMS Repsonse

我在玩Python和Twilio,嘗試設置對SMS的自動響應。 當我發送文本但沒有其他詳細信息時,響應通過。 我的測試服務器還給出了400個錯誤的請求,因此它不了解所請求的內容。 我可能只是使用了錯誤的語法,因為我從不同的示例和文本中編譯了此代碼。 如果有人知道我在做什么錯誤或知道正確的語法,我將不勝感激。

from flask import Flask, request
from twilio.twiml.messaging_response import *

#initialize Flask application
app = Flask(__name__)

#route for handling request on endpoint
@app.route("/sms", methods=['POST', 'GET'])

def inbound_sms():
    #gets number that text is sent from
    inbound_num = request.form['From']
    #gets message that was sent
    message_body = request.form['Body']

    reply = MessagingResponse()
    #Sends reply with attached details
    reply.message("Thank you!".format(inbound_num, message_body))
    return str(reply)

if __name__ == "__main__":
    app.run(debug=True)

Twilio開發人員布道者在這里。

您沒有收到消息中的數字和正文,因為您缺少字符串格式的內容。 您需要使用{}在數字和主體插入字符串的位置添加占位符。 像這樣:

reply.message("Thank you! Number: {}. Body: {}".format(inbound_num, message_body))

我不知道為什么您的應用程序會響應400。 在我看來,這是正確的,如果Twilio發送響應,則它應該可以工作。

我可以使用以下方法來解決http 400錯誤:

request.form.get('')

代替:

request.form['']

我以為它與Flask有關,但我不確定。 我對Flask知之甚少。

一切都正確顯示在發件人的電話上,但我注意到我的測試頁不會替換發件人的電話號碼或正文。 僅回復消息。 所以看起來像這樣:

謝謝! 用戶:無消息:無

我也不確定問題所在。 我可能最終會像您建議的那樣使用數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM