Twilio: дождитесь статуса вызова перед выполнением следующей команды в Python

Привет, я все еще пытаюсь осмыслить API Twilio. Может ли кто-нибудь дать некоторые рекомендации по этому вопросу? Буду безмерно признателен !:

Я пытаюсь выполнить следующую команду в Python Django:

for customerServiceRep in availCustomerServiceReps:
    try:
        client = TwilioRestClient(account_sid, auth_token)
        call = client.calls.create(to="+1" + str(int(customerServiceRep[0])),
                                   from_="+19xxxxxxxxx", url="http://xxxxx.xxxx.com/agent/")

    except:
        continue 

Я в основном просматриваю каждого доступного представителя службы поддержки клиентов и набираю их (потому что клиент был просто поставлен в очередь за несколько минут до этого). Но прямо сейчас я одновременно звоню всем представителям службы поддержки клиентов (поскольку цикл for проходит через всех и звонит). Я пытаюсь понять, как я могу «подождать» этого цикла for, чтобы вызов вернулся как [«занят», «недоступен», «сбой» и т. Д.], Прежде чем он уйдет и вызовет следующего доступного представителя.

Это очень похоже на тимлет "findme" (https://www.twilio.com/labs/twimlets/source/findme), за исключением того, что я не могу понять, как проверяется "статус" каждого номера перед тем, как уйдет следующий звонок.


person user330739    schedule 14.10.2014    source источник


Ответы (1)


Евангелист Twilio здесь.

Я думаю, ваш вопрос симпатичный близко к этому.

В основном вам нужно будет использовать параметр StatusCallback , чтобы Twilio сообщала вашему приложению, каков результат исходящего вызова. Вы можете позвонить всем сразу, как показано выше, а затем, когда кто-то ответит, просто используйте REST API для завершения всех других исходящих вызовов, или вы можете сделать один исходящий вызов за раз, дождаться, пока Twilio вызовет URL-адрес StatusCallback и затем решите, нужно ли вам звонить следующему агенту или нет.

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

person Devin Rader    schedule 14.10.2014