Asterisk IAX Каналы
Новое в релизе Asterisk v1.2.0: Соглашение о именах IAX каналов претерпело некоторые небольшие изменения, теперь вызываемый номер так же может следовать за символом "-", а не только за символом "/".
Начиная с Января 2004, IAX - подразумевает под собой протокол IAX2. Старая версия теперь называется IAX1. Для обратной совместимости, исходники протокола IAX1 все еще представлены в дистрибутиве, и их компиляция может быть включена при помощи параметров в файле Makefile.
Для дополнительной информации о протоколе, смотри раздел: IAX.
IAXtel, начиная с Декабря 2003, поддерживает только протокол IAX2.
Протокол IAX2 может быть использован для следующих целей:
- Для соединений с другими серверами Asterisk с другими серверами Asterisk
- Для соединения с IAXtel
- Для соединений с IAX клиентами
IAX каналы описываются в файле конфигурации iax.conf и используются в файле extensions.conf
Имена каналов
Формат имен IAX каналов, использующийся для исходящих вызовов:IAX/[<user>[:<secret>]@]<peer>[:<portno>][/<exten>[@<context>][/<options>]]
- <user>: идентификатор пользователя на удаленной системе, или имя клиента, сконфигурированного в файле iax.conf (опционально).
- <secret>: Пароль (не обязательно). Как альтернатива, это может быть имя файла, содержащего ключ RSA, без соответствующего расширения файла (.key или .pub), и заключенного в [квадратные скобки], например, так: [thefilename]
- <peer>: Имя вызываемого сервера.
- <portno>: Номер порта, который используется при соединении с удаленным сервером (не обязательно)
- <exten>: Екстеншен, который должен быть вызван на удаленном сервере Asterisk (не обязательно)
- <context>: Контекст, который должен быть использован на удаленном сервере Asterisk (не обязательно).
- <options>: Пока доступен только один параметр - 'a', который подразумевает: 'запрос автоматического ответа',
Примеры имен каналов для исходящих соединений::
- IAX/mark:asdf@myserver/6275@default – Вызов сервера "myserver", используя имя пользователя: "mark" и пароль: "asdf", и запрос на вызов екстеншена: 6275 в контексте по умолчанию: default.
- IAX/iaxphone/s/a – Вызов "iaxphone" и запрос немедленного ответа.
- IAX/guest@misery.digium.com – Вызов в Digium
- IAX/john:[johnrsa]@somewhere.com — Вызов направляется на сервер: somewhere.com, используется имя пользователя: "john" и ключ RSA для авторизации.
Формат имен IAX каналов, использующийся для входящих вызовов довольно прост:
IAX[[<username>@]<host>]/<callno>
- <username>: имя пользователя, если оно известно
- <host>: имя или адрес хоста, с которого поступило соединение
- <callno>: вызываемый локальный номер в системе
Примеры имен каналов для входящих соединений:
- IAX[mark@192.168.0.1]/14 – Вызов номера: 14 от пользователя "mark" с адреса: 192.168.0.1
- IAX[192.168.10.1]/13 – Вызов номера: 13 с адреса: 192.168.10.1
Обратите внимание
Для организации транкового канала IAX необходима поддержка аппаратного таймера в системе с Asterisk. Смотри раздел: "Asterisk таймеры" для дополнительной информации.IAX Транк позволяет нескольким голосовым потокам использовать один "транковый канал" при коммуникации с другим сервером, тем самым, уменьшая избыточность создаваемых IP пакетов. Обычно, уже после использования 4 одновременных соединений, становиться заметен выигрыш в объеме передаваемых данных на один пакет с данными, когда используется транковый канал.
Ссылки по теме:
- Asterisk readme iax: Содержимое файла Readme.iax из стандартной поставки.
- Asterisk iax rsa auth: О RSA авторизации для соединений по протоколу IAX2.
- Файл iax.conf: Конфигурация IAX соединений.
- Asterisk handbook
- Asterisk security
- Каналы в Asterisk
- Asterisk IAX media path: Native bridging of IAX calls
- IAX: Протокол IAX
- Asterisk RealTime IAX
- статистика транка по протоколу IAX2