Как установить URL для голосового API Twilio? - PullRequest
0 голосов
/ 11 марта 2019

Я новичок в колбе.Я использовал функцию url_for, чтобы найти twilio xml-файл для ответа на вызов.Я запускаю свое приложение на локальном хосте.При выполнении этого кода возвращается, не может найти эту ошибку XML-файла.Номер ошибки: 21205

мой маршрут:

@app.route('/scall', methods=['POST'])
def scall():
    account_sid = '***************'
    auth_token = '***************'
    client = Client(account_sid, auth_token)
    phonenumber = request.form['phonenumber']
    call = client.calls.create(
                        url="url_for('templates', filename='res.xml')",
                        to='+91' + phonenumber,
                        from_='************'
                    )

1 Ответ

0 голосов
/ 11 марта 2019

Евангелист разработчика Twilio здесь.

Ваша проблема в том, что Twilio пытается найти этот XML-файл в месте, к которому у него нет доступа.

Когда вы передаете параметр url, вы просто указываете Twilio, что делать при ответе на вызов.Поэтому Twilio затем отправляет HTTP-запрос к тому XML-файлу, который, как мы надеемся, будет иметь TwiML, который он понимает.

Вместо этого вам нужно дать ему URL-адрес, который доступен публично.Есть несколько вариантов, как это сделать:

  1. Размещать XML где-нибудь доступным (S3, Dropbox, ваш веб-сервер и т. Д.)
  2. Создать TwiML Bin внутри консоли Twilio и укажите прямо на нее.
  3. Используйте такой инструмент, как ngrok , чтобы показать свой локальный хост и указать этот URL из своего кода.

Надеюсь, это поможет вам.

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