Чтение онлайн

на главную - закладки

Жанры

Asterisk™: будущее телефонии Второе издание
Шрифт:

Файл extensions.conf для Торонто:

[globals]

[general]

autofallthrough=yes

[default]

[incoming_calls]

[phones]

include => internal include => remote

[internal]

exten => _2XXX,1,NoOp

exten => _2XXX,n,Dial(SIP/${EXTEN},30)

exten => _2XXX,n,Playback(the-party-you-are-calling&is-curntly-unavail) exten => _2XXX,n,Hangup

[remote]

exten => _1XXX,1,NoOp

exten => _1XXX,n,Dial(SIP/osaka/${EXTEN})

exten => _1XXX,n,Hangup

[osaka_incoming] include => internal

Файл extensions.conf

для Осаки:

[globals]

[general]

autofallthrough=yes [default] [incoming_calls] [phones]

include => internal include => remote

[internal]

exten => _1XXX,1,NoOp

exten => _1XXX,n,Dial(SIP/${EXTEN},30)

exten => _1XXX,n,Playback(the-party-you-are-calling&is-curntly-unavail) exten => _1XXX,n,Hangup

[remote]

exten => _2XXX,1,NoOp

exten => _2XXX,n,Dial(SIP/toronto/${EXTEN})

exten => _2XXX,n,Hangup

[toronto_incoming] include => internal

После того как файл extensions.conf сконфигурирован, можно выполнить его перезагрузку из консоли Asterisk с помощью команды dialplan reload. Удостовериться в том, что диалплан загружен, поможет команда dialplan show.

Вот и все! Теперь можно звонить с одного сервера Asterisk на другой.

Конфигурация программного телефона IAX

Протокол IAX2 создан для обеспечения удобства работы с сетями, имеющими необычную конфигурацию, особенно с использованием технологии NAT (Network Address Translation - трансляция сетевых адресов). Это является его основным преимуществом и делает IAX2 превосходным протоколом для программных телефонов, выступающих в роли клиентов, поскольку они часто используются на портативных компьютерах, которые подключаются к различным сетям, зачастую без возможности управления самой сетью (например, при подключении к сети в разных гостиницах).

Протокол Inter-Asterisk eXchange (IAX) обычно используется для связи сервер-сервер; по сравнению с SIP его поддерживает большее число аппаратных телефонов. Есть и программные телефоны, поддерживающие протокол IAX, и работа по обеспечению поддержки аппаратных телефонов во встроенном ПО продолжается по нескольким направлениям. Основное различие между протоколами IAX и SIP - способ передачи медиа-данных между конечными точками.

При использовании протокола SIP для передачи трафика RTP (голоса) используются порты, отличные от тех, что работают с методами обмена сигналами. Например, Asterisk получает сигналы SIP через порт 5060, а трафик RTP (голос) проходит через порты от 10000 до 20000 по умолчанию. IAX-протокол отличается тем, что и обмен сигналами, и трафик медиа-данных выполняется через один порт: 4569. Следствие такого подхода - протокол IAX лучше подходит для топологий с использованием NAT.

Существует множество программных телефонов на базе IAX,

но не так много аппаратных. Наиболее очевидная причина этому - IAX2 до сих пор не стандартизован IETF (Internet Engineering Task Force - Комитет по стандартизации интернет-протоколов), хотя многие уже перешли на него и пользуются предоставляемыми им преимуществами.

Превосходный программный телефон на базе IAX2 - idefisk. Он доступен бесплатно для скачивания по адресу http://www.asteriskguru.com На сайте Asterisk Guru можно также найти большое количество превосходной документации! Пожалуйста, обратите внимание, что пробел не входит в список допустимых символов. Не используйте пробелы в именах контекстов, потому что результат вам не понравится!. Авторы данной книги добились замечательных результатов с этим программным телефоном, и, поскольку он выполняется в Microsoft Windows, Mac OS X и Linux, он является отличным примером для применения межплатформенных программных телефонов. Здесь будет продемонстрирована версия 1.31, хотя в апреле 2007 была выпущена версия 2.0, но пока не вышла ее реализация для Linux.

Настройка конфигурационного файла канала (iax.conf)

Как всегда, постараемся наладить все быстро с минимальной настройкой конфигурационного файла, чтобы максимально сократить проблемы, которые могут возникнуть при конфигурации устройств. Как это было с файлом sip.conf, для регистрации IAX-телефона в Asterisk, в файл iax.conf необходимо добавить лишь несколько простых строк. Давайте посмотрим:

[general] autokill=yes

[idefisk] type=friend host=dynamic context=phones

Да, действительно, это все, что необходимо для настройки программного телефона. Это не самая безопасная или функциональная конфигурация (даже не использует ся пароль), но она будет работать. В разделе [general] файла iax.conf имеется единственная опция - autokill=yes. Она используется для того, чтобы предотвратить задержку в системе, когда участник сети не отвечает (ACK) на пакет NEW (запрос на установление нового соединения) в течение 2000 мс. Вместо значения yes здесь можно задать время (в миллисекундах) ожидания ACK на пакет NEW. Управлять опцией autokill (автоуничтожение) для каждого отдельного равноправного участника сети можно, определяя параметр qualify (качество) для тех участников, о возможном недостаточном качестве используемых сетевых соединений которых известно заранее.

Весь остальной файл - описание программного телефона. Мы определяем для него тип friend, указывая Asterisk на то, что будем производить звонки на это устройство, а также принимать звонки с него. friend является сокращенной записью для одновременного определения peer (отправляющего вызовы программному телефону) и user (принимающего вызовы от программного телефона). Можно было бы дать отдельные описания для peer и user:

[idefisk] type=user context=phones

[idefisk] type=peer host=dynamic

Сконфигурировав файл iax.conf, сохраняем его и перезагружаем модуль канала IAX2 из консоли Asterisk с помощью команды module reload chan_iax2.so. Подтверждаем существование нового равноправного участника сети, выполнив команду iax2 show peers.

localhost*CLI> iax2 show peers

Name/Username Host Mask Port Status

idefisk (Unspecified) (D) 255.255.255.255 0 Unmonitored

1 iax2 peers [0 online, 0 offline, 1 unmonitored]

Конфигурация программного телефона

Поделиться:
Популярные книги

Аргумент барона Бронина 2

Ковальчук Олег Валентинович
2. Аргумент барона Бронина
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Аргумент барона Бронина 2

Прометей: повелитель стали

Рави Ивар
3. Прометей
Фантастика:
фэнтези
7.05
рейтинг книги
Прометей: повелитель стали

Убивать чтобы жить 5

Бор Жорж
5. УЧЖ
Фантастика:
боевая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 5

Газлайтер. Том 10

Володин Григорий
10. История Телепата
Фантастика:
боевая фантастика
5.00
рейтинг книги
Газлайтер. Том 10

Вечный. Книга IV

Рокотов Алексей
4. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Вечный. Книга IV

Камень. Книга шестая

Минин Станислав
6. Камень
Фантастика:
боевая фантастика
7.64
рейтинг книги
Камень. Книга шестая

Сумеречный стрелок

Карелин Сергей Витальевич
1. Сумеречный стрелок
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный стрелок

Скандальный развод, или Хозяйка владений "Драконье сердце"

Милославская Анастасия
Фантастика:
попаданцы
фэнтези
5.00
рейтинг книги
Скандальный развод, или Хозяйка владений Драконье сердце

Дракон - не подарок

Суббота Светлана
2. Королевская академия Драко
Фантастика:
фэнтези
6.74
рейтинг книги
Дракон - не подарок

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Седьмая жена короля

Шёпот Светлана
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Седьмая жена короля

Третье правило дворянина

Герда Александр
3. Истинный дворянин
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Третье правило дворянина

Кодекс Крови. Книга VI

Борзых М.
6. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга VI

Газлайтер. Том 18

Володин Григорий Григорьевич
18. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Газлайтер. Том 18