Разделы сайта

Настройка Астериска под конкретную ситуацию

Теперь рассмотрим конкретно заданную ситуацию. Например, имеется два офиса, находящихся в разных зданиях. Здания могут находиться как рядом друг с другом, так и в двух противоположных точках земного шара. Этот пункт повлияет только на то, будет ли нужен выход в интернет для связи между астерисками, или достаточно будет объединить две сети этих зданий, например, маршрутизатором, если бы они находились рядом.

Предположим, что два офиса находятся рядом. В каждом офисе стоит свой сервер с Астериском, дабы разделить нагрузку двух этих офисов. В каждом офисе имеется некое количество работников, которые желают общаться между собой по телефону. Все они разбиты по группам в разные кабинету. Например, в первом здании есть кабинет бухгалтеров, кабинет менеджеров, кабинет директора с секретарем, пункт охраны и вахта. Во втором здании имеется кабинет технической поддержки, и кабинет системных администраторов.

Теперь необходимо посчитать количество телефонов, чтобы создать нужное число пользователей Астериска. Все эти пользователи прописываются в файле «sip.conf».

[basic-options](!) - шаблон базовых опций;

dtmfmode=rfc2833 - задаем способ передачи DTMF сигналов;

context=incoming-sip - задаем контекст диалплана для маршрутизации;

type=friend - задаем тип пользователя;

host=dynamic - задаем тип хоста;

[my-codecs](!) - шаблон используемых кодков;

disallow=all -запрещаем все

allow=gsm разрешаем кодек;

allow=g729

allow=g723=ulaw

[1101](my-codecs,basic-options) - описываем пользователей=buhgalter1

[1102](my-codecs,basic-options)=buhgalter2

[1103](my-codecs,basic-options)=buhgalter3

[1201](my-codecs,basic-options)=manager1

[1202](my-codecs,basic-options)=manager2

[1203](my-codecs,basic-options)=manager3

[1301](my-codecs,basic-options)=ohrana

[1001](my-codecs,basic-options)=vahta

[1401](my-codecs,basic-options)=zam.directora

[1402](my-codecs,basic-options)=director

В контексте «general» прописываются все необходимые настройки для возможности связи с Астериском через SIP протокол. В основном, эти настройки уже заданы изначально при установке астериска и в изменении не нуждаются. Во всяком случае, если Вам придется что-нибудь там изменить, то там имеются комментарии к командам, которые дадут Вам понять, что они означают. Здесь они описываться не будут.

Как видно из кода, синтаксис позволяет использование шаблонов. То есть мы можем написать какой-то набор команд, назвать их каким-то образом (например, [my-codecs]), а затем, поставив рядом восклицательный знак в круглых скобках, вот так (!), мы превращаем данный набор команд в шаблон, который потом легко использовать. Чтобы каждому пользователю не прописывать заново одни и те же команды, достаточно рядом с именем пользователя в круглых скобках указать через запятую имена шаблонов. Теперь в описании пользователя имеется только команда задания пароля - secret.

Для примера, было решено в первом здании создать записи для 10 пользователей телефонии. За каждым пользователем скрывается телефонный аппарат. Людей, естественно, может быть больше чем этих телефонов. Количество пользователей можно наращивать сколь угодно много, просто создавая еще один набор команд. В качестве имен в данном примере использованы номера, по которым будут дозваниваться до пользователей другие абоненты сети. Это сделано для удобства перенаправления в диалплане. Можно задавать различные имена, никак не связанные с номером телефона.

Итак, пользователи имеются, осталось настроить диалплан. Он настраивается путем добавления нужных команд в файл «extensions.conf».

[incoming-datacard]=> s,1,Answer()=> s,n,Background(/home/company2)=> s,n,WaitExten()=> _11XX,1,Dial(SIP/1101&SIP/1102&SIP/1103)=> _11XX,n,Hangup()=> _12XX,1,Dial(SIP/1201&SIP/1202&SIP/1203)=> _12XX,n,Hangup()=> _13XX,1,Dial(SIP/1301&SIP/1302)=> _13XX,n,Hangup()=> _14XX,1,Dial(SIP/1401)=> _14XX,n,Hangup()=> i,1,Hangup()=> t,1,Hangup()

[incoming-sip]=> _8932XXXXXXX,1,Dial(Datacard/megafon/${EXTEN},60)=> _8922XXXXXXX,1,Dial(Datacard/megafon/${EXTEN},60)=> _8912XXXXXXX,1,Dial(Datacard/mts/${EXTEN},60)=> _8982XXXXXXX,1,Dial(Datacard/mts/${EXTEN},60)=> _8965XXXXXXX,1,Dial(Datacard/beeline/${EXTEN},60)

; локальные номера:=> _1XXX,1,Dial(SIP/${EXTEN},20)=> _1XXX,n,Hangup()=> _2XXX,1,Dial(IAX2/office1:pass4office1@office2/${EXTEN},20)

Теперь по порядку. Команда «еxten» это синтаксис добавочного номера (extension - числовой идентификатор, присвоенный линии, идущей к конкретному телефону). После нее идет знак => и далее номер или имя. Как видно выше, используется запись типа «_1ХХХ». Это означает что любые номера, начинающиеся на единицу и имеющие за собой, неважно какие, еще три цифры будут перенаправлены соответствующим пользователям.

Перейти на страницу: 1 2 3 4

Интересное из раздела

Проект кабельной линии автоматики, телемеханики и связи на участке железной дороги Красноярск – Саянская – Абакан
Главная задача, поставленная перед железнодорожным транспортом, обеспечение всевозрастающей потребности народного хозяйства в перевозках, повышение скоросте ...

Организация и расчет сетей поездной и станционной радиосвязи
Бурное развитие радиотехники создало все предпосылки для широкого использования радиосредств на железнодорожном транспорте. Массовое внедрение радиосвязи н ...

Cинтез инвертирующего усилителя
Операционные усилители в настоящее время находят широкое применение при разработке различных аналоговых и импульсных электронных устройств. Это связано с те ...