Этот пример приложения на Django моделирует типичный опыт работы колл-центра, но с добавлением больше Reese’s Pieces.
Потерпевшие крушение инопланетяне могут позвонить агенту и получить инструкции о том, как безопасно покинуть Землю. В этом руководстве мы покажем ключевые фрагменты кода, которые позволяют агенту отправить звонящего на голосовую почту, а позже прочитать расшифровки и прослушать сообщения.
Чтобы запустить это примерное приложение самостоятельно, скачайте код и следуйте инструкциям на GitHub.
*Больше примеров приложений IVR на нашей странице приложений IVR.*
Когда наш инопланетный звонящий выбирает планету, нам нужно определить, куда направить звонок. В зависимости от его выбора мы направим звонок на добавочный номер. Добавочные номера используются для поиска *агента*. Любая строка может быть использована для определения добавочного номера.
Когда инопланетный звонящий сделал свой выбор, мы используем нажатие клавиши для поиска запрашиваемого `Agent`.
Как только мы нашли агента, мы можем использовать глагол
Теперь, когда пользователь выбрал своего агента, наш следующий шаг — соединить звонок с этим агентом.
Этот код начинает процесс передачи звонка нашему агенту.
Передавая `url` в существительное `
По сути, мы говорим Twilio выполнить некоторый TwiML, который услышит только агент.
Теперь нашего агента можно вызвать, но как агент взаимодействует с этой функцией? Давайте разберёмся, что происходит во время скрининга звонка агента.
Когда наш агент поднимает трубку, мы используем глагол `
Если агент отвечает, введя любую цифру, ответ будет обработан нашим маршрутом `agent/connect_message`. Это `
Теперь наш агент может взаимодействовать со звонком, но что, если агент в данный момент отсутствует? В таких случаях полезно настроить голосовую почту.
Когда Twilio делает запрос к нашему методу действия `Call`, он передаёт аргумент `DialCallStatus`, чтобы сообщить о статусе звонка. Если статус был «completed», мы завершаем звонок. В противном случае нам нужно `
Мы также указываем `action` для `
Теперь давайте посмотрим, как на самом деле записать звонок.
Когда мы говорим Twilio записывать, у нас есть несколько опций, которые можно передать глаголу `
Здесь мы указываем `
Обратите внимание, что мы перенаправляем на URL, специфичный для этого агента. Это удобный способ указать, какой агент был вызван для создания голосового сообщения. Таким образом, мы также можем сохранить связанного агента вместе с голосовой почтой.
Наконец, мы увидим, как просмотреть голосовую почту агента.
Как только мы нашли агента, всё, что нам нужно сделать, — это отобразить его записи. Мы связываем агента вместе с его записями в `View`.
Можно искать записи через Twilio REST API, но так как у нас уже есть все необходимые данные в запросе `transcribe_callback`, мы можем легко сохранить их самостоятельно и сэкономить время на дополнительном запросе.
Вот и всё! Мы только что реализовали IVR с реальными агентами, скринингом звонков и голосовой почтой.
Если вы разработчик Python, работающий с Twilio, возможно, вам будут интересны и другие наши руководства.
Увеличьте скорость реагирования, автоматизируя ключевые для вашего бизнеса рабочие процессы.
Мгновенно собирайте структурированные данные от пользователей с помощью опроса, проводимого по голосовому звонку или SMS.
#### Помогло ли это?
Спасибо за ознакомление с этим руководством! Если у вас есть отзывы, которыми вы хотите поделиться, мы будем рады их услышать. Свяжитесь с нами в Twitter и расскажите, что вы создали!