Общее описание
kannel - это open source wap и sms шлюз, предназначенный для передачи SMS сообщений оператору сотовой связи по протоколу SMPP. Приложение очень гибкое. Возможность настроить модем для передачи SMS тоже имеется. Но самое главное преимущество этого программного обеспечения - это бесплатность и нормальная работа (настроил и забыл).
Конфигурируется kannel через командную строчку, что не является особой проблемой лично для меня (GUI нет). Придется внимательно почитать документацию и забыть про какую-либо поддержку. Приложение c 20 октября 2010 не обновляется создателями.
Мониторинг за работой сервера осуществляется через Web-интерфейс - простое приложение на php, входит в комплект поставки kannel.
Сервер состоит из нескольких демонов (далее по тексту бинарники):
- bearerbox - основная часть приложения осуществляющая маршрутизацию сообщений от любых демонов сервера оператору;
- smsbox - демон, который позволяет отправлять SMS по протоколу http;
- wapbox - wap-шлюз (работает по протоколу UDP, служит для отображения WML страниц и не рассматривается в данной статье);
Дополнительные демоны:
- sqlbox - демон позволяющий отправлять SMS через запись в базу данных MySQL;
- opensmppbox - SMPP шлюз для подключения дочерних серверов по протоколу SMPP;
Важно! В данном мануале нет информации по настройке USB модемов для передачи смс.
Установка дополнительного ПО
$ sudo su
# apt-get update && apt-get install mysql-server php5-cli nginx php5-fpm gcc make
Сборка (компиляция и установка) kannel
Для установки kannel можно использовать deb пакеты sudo apt-get install kannel
, но по-умолчанию установится только wapbox и smsbox, при этом чтобы заработал smsbox нужно раскомментировать директиву в файле /etc/default/kannel
. Рекомендую установить kannel из deb пакета, чтобы посмотреть что и как работает и запускается.
В том случае, сли вы устанавливаете opensmppbox, sqlbox не в коем случае нельзя использовать собранные пакеты и готовые бинарники. Нужно все пакеты собирать на сервере использования. Это связано с тем, что при сборке дополнительных пакетов используются вновь собранные библиотеки kannel. Если основной сервер имеет другую версию, отличную от дополнителных демонов, то возможны ошибки типа opensmppbox multi-message die это связано с уже собранными библиотеками kannel.
Для установки kannel с поддержкой базы данных нужна библиотека mysql клиента.
Устанавливаем их:
# apt-get install libmysqlclient-dev libxml2-dev