Знакомство с Yate
Yate (акроним Yet Another Telephony Engine, "очередной движок телефонии") - движок телефонии следующего поколения, свободное и открытое программное обеспечение для коммуникаций с поддержкой передачи видео, голоса и мгновенных сообщений.
Работающий на основе протокола интернет телефонии (VoIP) и телефонной сети общего пользования (PSTN), Yate легко расширяем. Приложение поддерживает протоколы SIP, H.323, IAX, MGCP, Jingle, Jabber, E1, T1, протокол аналоговой телефонии, ISDN PRI, BRI, и SS7.
Оно написано на C++ с применением модульной архитектуры, что позволяет использовать такие исполняемые языки, как Perl, Python или PHP для расширения функционала.
Помните, что нижеприведенные инструкции подходят только для Linux платформ. |
Чтобы получить информацию об использовании с другими платформами, пройдите в раздел "Загрузка" и следуйте соответствующим указанным инструкциям. |
После установки Yate вы можете пропустить раздел "Загрузка исходного кода Yate из SVN" и сразу перейти к разделу "Файлы настроек" |
Загрузка исходного кода Yate из SVN
Для получения полной сборки Yate вам понадобится:
- Базовые инструменты разработчика:
- GNU make (осуществить сборку, используя BSD make не получится);
- Компилятор C++ из набора программ GNU (gcc/g++) и его библиотеки;
- Сборщик сценариев конфигурации autoconf;
- SVN-клиент.
Перейдите в /usr/src или любую другую удобную вам папку для размешения исходного кода. После установки SVN-клиента, вы можете получить исходный код, просто воспользовавшись командой:
svn checkout http://voip.null.ro/svn/yate/trunk yate-SVN |
cd yate-SVN |
Первая команда сменит рабочую директорию, вторая скачает из SVN на ваш компьютер дерево каталогов (в которую вносятся изменения в код проекта) в новую папку yate-SVN. Третья сменит рабочую директорию на папку с исходным кодом Yate.
Для получения более подробной информации перейдите в раздел "Установка".
Сборка
Чтобы создать файл настройки, выполните следующую команду, после чего сконфигурируйте исходный код:
./autogen.sh |
./configure |
Соберите исходный код:
make |
Запуск
- Для запуска в режиме отладки используйте ./run -vvvvvv
- Для запуска в режиме службы выполните ./run -d
Для получения более подробной информации о ключах, которые можно использовать при запуске Yate, выполните: ./run --help
Для использования в режиме отладки попробуйте следующие ключи:
-v | Подробная отладка (можно использовать несколько раз) |
-d | Запустить в качестве службы, подавлять вывод, если сохранение отладочных сообщений файла отключено |
-l filename | Выводить отладочную информацию в файл |
-Dt | Временные отметки в отладочных сообщениях относительно времени запуска программы |
Файлы настройки
Добавление пользователей
[100] | password = 001 |
[200] | password = 002 |
Если вы хотите использовать базу данных, существует другой способ добавления пользователей. В этом случае используйте файл register.conf.
Настройка SIP
Для настройки SIP используется файл ysipchan.conf. В редактировании этого файла нет необходимости, так как по умолчанию Yate подсоединится ко всем сетевым интерфейсам порта 5060 вашего сервера. Если этот порт используется другими программами, вам необходимо указать другой, введя его в секции [general].
Маршрутизация
Нет необходимости настраивать маршрутизацию для зарегистрированных пользователей SIP на сервере. Yate будет маршрутизировать звонки между пользователями, указанными в regfile.conf.
Чтобы добавить запрос аутентификации для всех входящих вызовов, включите следующие строки в файл regexroute.conf:
[default] |
${username}^$=-;error=noauth |
Чтобы указать маршрутизацию других зарегистрированных пользователей, PSTN, шлюзов, отредактируйте regexroute.conf.
Чтобы зарегистрировать пользователей в базе данных, используйте register.conf. Затем укажите правила маршрутизации в regexroute.conf.
Настройка телефонов
Вам необходимо настроить пользователей из файла regfile на двух SIP-телефонах (можно использовать программные SIP-телефоны) чтобы совершать звонки с помощью Yate Server.
Проверка установки
Если Yate был запущен в то время, как вы редактировали файл настроек, перезапустите Yate, чтобы изменения вступили в силу.
Наберите один из следующих номеров с телефона-клиента:
99991001 | вы услышите звук набора |
99991002 | вы услышите звук, соответствующий сигналу "Занято" |
99991003 | вы услышите звук звонка |
Эти номера выделены в тестовых целях и всех их можно найти в файле "regexroute.conf". Позвонив на любой из них вы услышите стандартный телефонный звук.
Позвоните с одного номера на другой, чтобы проверить звук. Если другой конец линии слышно, возможно у вас проблемы с NAT.
Если вы хотите увидеть поток сообщений, можно использовать telnet-клиент. Подключитесь следующим образом:
telnet localhost 5038 |
Введите следующие команды, чтобы включить вывод сообщений отладки и подсветку вывода:
- debug on
- color on
Модуль Email-маркетинга в настоящее время недоступен.