Всем привет! У платформы МТС Exolve есть сообщество, которое часто делится полезными гайдами от прокачки серверов до создания своих приложений. Наиболее интересные и подробные продолжаем размещать в нашем хабе.
В этот раз изучим возможности автоматических SIP-звонков благодаря гайду нашего пользователя. Он описал сценарии, когда пригодится функция автоматического звонка на определённый номер:
Мониторинг и тестирование системы: В телекоммуникациях важно регулярно проверять работоспособность системы звонков. Автоматические тестовые звонки позволяют убедиться, что SIP-сервер работает корректно и что исходящие звонки проходят без сбоев.
Автоматизация рутинных задач: В некоторых случаях необходимо автоматически совершать звонки для выполнения определённых действий, таких как уведомления, оповещения или обратные звонки клиентам.
Использование в системах оповещения: Автоматические звонки могут быть интегрированы в системы экстренного оповещения или информационные системы, которые должны связываться с определённым человеком или группой людей в случае возникновения критической ситуации.
Перейдём к пошаговой инструкции, как настроить такую систему автоматических звонков на Ubuntu с использованием Linphone.
Установка необходимых компонентов
Установка Linphone: откройте терминал и выполните следующие команды на Ubuntu:
sudo apt update
sudo apt install linphone-nogtk
linphone-nogtk — это версия Linphone без графического интерфейса, которая работает через консоль.
Установите expect, который позволяет автоматизировать взаимодействие с Linphone:
sudo apt install expect
Регистрация SIP-учётной записи
Учетную запись регистрируем учетную запись на МТС Exolve. Для автоматической регистрации SIP-учётной записи на сервере sip.exolve.ru, вам нужно добавить настройки в конфигурационный файл Linphone.
Откройте файл конфигурации Linphone для редактирования:
nano ~/.linphonerc
Вставьте следующие настройки, заменив данные на свои:
[auth_info_0]
username=ВАШ_SIP_ЛОГИН # Ваш SIP-логин
passwd=ВАШ_SIP_ПАРОЛЬ # Ваш SIP-пароль
realm=sip.exolve.ru # Адрес SIP-сервера
userid=ВАШ_SIP_ЛОГИН # Ваш SIP-логин
[proxy_0]
reg_proxy=sip:sip.exolve.ru # Адрес SIP-сервера
reg_identity=sip:ВАШ_SIP_ЛОГИН@sip.exolve.ru # Ваш SIP-логин и сервер
reg_expires=600 # Время действия регистрации в секундах
register_enabled=1 # Включить автоматическую регистрацию
username — ваш логин SIP.
passwd — ваш пароль SIP.
realm и reg_proxy — адрес SIP-сервера sip.exolve.ru.
reg_identity — это ваш полный SIP-идентификатор (логин@sip.exolve.ru).
register_enabled=1 — активирует автоматическую регистрацию при запуске Linphone.
Сохраните изменения и закройте файл.
Проверка регистрации SIP
Для проверки, зарегистрировалась ли SIP-учётная запись, можно вручную проверить статус через Linphone:
linphonec
Проверьте список зарегистрированных прокси:
proxy list
Вы должны увидеть сообщение о том, что ваш SIP зарегистрирован (например, "registered: yes").
Создание скрипта для автоматического звонка
Создайте новый файл для скрипта:
nano make_call.sh
Добавьте код для выполнения звонка:
#!/usr/bin/expect
# Запуск Linphone
spawn linphonec
expect "linphonec>"
# Задержка перед отправкой команды вызова (например, 2 секунды)
sleep 2
# Отправка команды вызова
send "call sip:НУЖНЫЙ_НОМЕР@sip.exolve.ru\\\\r"
# Удержание звонка на 30 секунд
sleep 30
# Завершение вызова
send "terminate\\\\r"
expect "linphonec>"
# Завершение программы
send "quit\\\\r"
expect eof
В этом скрипте:
call sip:НУЖНЫЙ_НОМЕР@sip.exolve.ru — это номер телефона, на который нужно позвонить через сервер sip.exolve.ru.
Сделайте скрипт исполняемым:
chmod +x
make_call.sh
Чтобы запустить автоматический SIP-звонок, выполните:
./make_call.sh
Таким образом на любое событие в системе вы можете настроить данный скрипт для автоматического звонка.
Какие еще могут быть сценарии использования автоматического звонка
Посмотрим, как эта функция может упростить жизнь и улучшить процессы в различных областях.
1. Перенос встреч с пациентами
Робот может позвонить пациенту и предложить варианты переноса визита с учётом загруженности врачей и других факторов.
2. Автоматизация напоминаний и уведомлений
Такие звонки хорошо справляются с напоминаниями клиентам о важных событиях или обязательствах. Например, региональный оператор по утилизации отходов автоматизировал напоминания о платежах через голосового робота. Он обзванивает клиентов, сообщает о задолженностях и фиксирует их ответы.
3. Интеграция с CRM и IoT
Интеграция с CRM позволяет автоматически выполнять звонки по обращениям, анализировать их и предоставлять отчёты по ключевым метрикам. Например, сеть зарядных станций для электромобилей автоматизировала обработку обращений и аналитику.
4. Логистика и транспорт
Автоматические звонки помогают всё держать под контролем. Например, уведомления водителей, когда система звонит и сообщает о новых заказах или изменениях маршрута. Или оповещения в курьерских службах, когда робот звонит клиентам и сообщает, когда приедет доставка или если что-то изменилось.
5. Розничная торговля и маркетинг
Можно оптимизировать маркетинговые кампании. Например, интернет-магазин мебели сократил затраты на связь на 15% благодаря автоматическому определению автоинформаторов, то есть система автоматически совершает звонки и при этом завершает те, что попадают на автоответчики.