Twilio MessagingResponse () после перенаправления Flask - PullRequest
1 голос
/ 19 мая 2019

Как и в Twilio Docs , я могу создать объект MessagingResponse () для отправки текста ответа на мой телефон. Однако что, если я хочу сначала перенаправить на внутреннюю страницу? Я не могу просто сделать MessagingResponse () в перенаправленной функции, как я хочу:

@app.route("/news", methods=['GET', 'POST'])
def news():
    ....
    resp = MessagingResponse()
    resp.message(msg)
    return ""

@app.route("/", methods=['GET', 'POST'])
def hello():
    return redirect("news")

Я не получаю текст обратно, если использую приведенный выше код. Однако, если я вручную создаю клиента из twilio.rest следующим образом:

@app.route("/news", methods=['GET', 'POST'])
def news():
    ....
    client = Client(account_sid, auth_token)
    message = client.messages.create(to=request.values.get("From"), from_=request.values.get("To"),
                                         body=msg)

Я успешно делаю то, что хочу. Я не понимаю, почему MessagingResponse () не работает, когда объект запроса совпадает.

1 Ответ

0 голосов
/ 19 мая 2019

Ваш первый фрагмент - это то, как вы отвечаете на входящие текстовые сообщения с помощью XML или TwiML (одна вещь)
from twilio.twiml.messaging_response import MessagingResponse

, а ваш второй фрагмент - как вы отправляете текстовые сообщения через REST API (еще одна вещь))
from twilio.rest import Client

Глядя на свой первый фрагмент, если вы отвечаете пустой строкой на входящие текстовые сообщения, вы не получите текст обратно (Twilio не будет ничего делать), как таковой:

вместо

return ""

попробуйте

return str(resp)

и убедитесь, что msg не пусто.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...