Единый подход к разработке ботов
Большинство архитектур голосовых и веб-чатботов разрабатываются независимо друг от друга. Это приводит к дублированию кода, различным механизмам управления состоянием и повторению логики.
Решение проблемы
VoIPBin представил прототип, который устраняет эту проблему. Вместо того чтобы создавать отдельные архитектуры для каждого канала взаимодействия, теперь можно использовать единую логику как для голосового общения через SIP-протокол, так и для текстовых чатов на сайте.
Как это работает?
В основе решения лежит технология Direct Hash, изначально разработанная для голосовых вызовов. Она позволяет генерировать уникальный хеш-код, который напрямую привязывается к определённому потоку искусственного интеллекта:
sip:direct.<12-hex-chars>@sip.voipbin.net
Теперь этот же механизм применяется и для веб-клиентов. Веб-виджет чатбота подключается к тому же хешу и использует ту же самую логику взаимодействия с искусственным интеллектом. Таким образом, нет необходимости поддерживать два отдельных потока или точки подключения.
Преимущества подхода
Использование единой логики имеет несколько ключевых преимуществ:
- Отсутствие дублирования: один раз спроектированный поток взаимодействий может обслуживать как голосовые вызовы, так и сессии веб-чата.
- Снижение сложности разработки: не нужно писать отдельный код для разных каналов связи.
- Единое управление состоянием: одна система управляет всеми аспектами диалога, будь то голосовое общение или текстовый чат.
Архитектура aicall
Под капотом находится движок под названием aicall. Изначально он был разработан для обработки асинхронных голосовых звонков в реальном времени. Он отслеживает состояние разговора, управляет жизненным циклом беседы и обрабатывает очереди сообщений.
Оказалось, что эта архитектура прекрасно подходит и для веб-разговоров. Асинхронные сообщения, контекст состояния и очередность реплик – всё это присуще как голосовым звонкам, так и веб-диалогам.
Таким образом, инфраструктура, созданная для голоса, успешно справляется и с задачами веб-взаимодействия.
Текущий статус проекта
На данный момент решение представлено в виде прототипа. Архитектура проверена, серверы запущены, а протестировать систему можно прямо сейчас на сайте voipbin.net.