Персональный сайт Федоренко Александра Суббота, 14.06.2025, 20:22
Приветствую Вас Гость | RSS
Меню сайта

Категории раздела
CentOS [5]
Asterisk [16]
Elastix [4]
Виртуализация [3]
Raspberry Pi [5]
Статьи по настройке и использованию Raspberry Pi

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Главная » Статьи » LINUX » Asterisk

Базовая настройка asterisk

Сейчас я покажу как настроить asterisk на двух пользователей и подключить sip-trunk от sipnet-а.

Установку и запуск asterisk я показывал в прошлом посте, так что не будем возвращаться к этому.

 

Для начала перейдем в папку с конфигами asterisk и создадим директорию для своих конфиго, и сами файлы конфигов (не люблю все писать в базовых конфигах):

cd /etc/asterisk/

mkdir conf

touch conf/sip_trunk.conf

touch conf/sip_register.conf

touch conf/sip_users.conf

touch conf/extensions.conf

Теперь сделаем что бы asterisk читал от туда наши данные, для этого используется директива «#include«. В случае с extensions.conf проще не куда, просто в конец файла /etc/asterisk/extensions.conf добавляем строку:

#include conf/extensions.conf

А вот с sip.conf немного больше работы. Нам в файле /etc/asterisk/sip.conf нужно прописать целых три include. Итак приступим. Первым пропишем sip_trunk.conf, для этого перед блоком ganeral вставляем #include conf/sip_trunk.conf

В итоге должно получится так:

#include conf/sip_trunk.conf

[general]

Далее вставим конфиг для регистрации транков. Ищем в блоке [general] текст «OUTBOUND SIP REGISTRATIONS» и за ней вставим #include conf/sip_register.conf

В итоге должно получится так:

;——————— OUTBOUND SIP REGISTRATIONS —————
#include conf/sip_register.conf

И теперь в конец файла /etc/asterisk/sip.conf добавляем строку:

#include conf/sip_users.conf

Последний штрих и asterisk будет видеть наши файлы:

asterisk -rx ‘sip reload’ && asterisk -rx ‘dialplan reload’

 

Теперь перейдем непосредственно к конфигурированию.

Задача 1: Создание внутреннего номера.

Открываем файл conf/sip_users.conf и пишем в него следующее:

[100]
type=friend
secret=qwe
host=dynamic
context=out
dtmfmode=RFC2833
disallow=all
allow=ulaw
allow=alaw
nat=comedia
qualify=yes

Теперь разберем все по порядку:

  • [100] — указываем внутренний номер;
  • type — в данном случае (friend) разрешаются входящие и исходящие звонки;
  • secret — пароль от номера;
  • host — указывает с какого адреса регистрируется телефон (в данном случае с любого);
  • context — собственно указывает по какому контексту будет идти вызов при исходящем вызове;
  • dtmfmode — указываем dtmf на RFC2833;
  • disallow — отключаем все голосовые кодеки;
  • allow — подключаем указанные кодеки;
  • nat — указываем является ли телефон за nat. В asterisk 11 убрали значение yes и вмесно него мы можем указать comedia или force_rport;
  • qualify — проверка доступности номера (yes = 200 мс);

Теперь у нас есть внутренний номер, но толку от этого мало, необходимо asterisk научить звонить. Но сначала подключим линию от sipnet.

Задача 2. Подключение внешних линий (sipnet.ru).

Открываем файл conf/sip_trunk.conf и пишем следующее:

[sipnet]
secret=you_pass
defaultuser=you_sipnet_id
trunkname=sipnet
host=sipnet.ru
type=friend
context=income
insecure=invite
fromuser=you_sipnet_id
fromdomain=sipnet.ru
disallow=all
allow=alaw
allow=ulaw
allow=g729
nat=no
dtmfmode=rfc2833

Следующий шаг, это прописать регистрацию. Открываем conf/sip_register.conf и пишем:

register => you_sipnet_id:you_pass@sipnet.ru

Готово.

Задача 3. Учим asterisk звонить.

Открываем conf/extensions.conf и пишем:

[income]
exten => s,1,Dial(SIP/100,90,mt) ;Входящий звонок попадает на номер 100
same => n,Hangup ;Кладем трубку, если номер 100 не смог ответить

[out]
exten => _XXX,1,Dial(SIP/${EXTEN},90,mtT) ;Звонки между внутренними номерами
same => n,Hangup

;Звонок через sipnet. Звонок происходит через 7.
exten => _7X.,1,Dial(SIP/${EXTEN:1}@sipnet,90,mT)
same => n,Hangup

Разбор полётов. Структыра комманды Dial: Dial(type/identifier,timeout,options,URL)

Теперь немного об опциях команды Dial в этом примере

  • 90 — время ожидания ответа;
  • m — проигрывать музыку при ожидании;
  • t — разрешает ответевшему пользователю перевести звонок;
  • T — разрешает звонящему пользователю перевести звонок;

Теперь последний штрих, перезагрузка sip и dialplan:

asterisk -rx ‘sip reload’ && asterisk -rx ‘dialplan reload’

Все, на asterisk можно звонить и делать исходящие вызовы.

Profit! =)



Источник: http://miho.org.ua/?p=65
Категория: Asterisk | Добавил: AFed (21.04.2014)
Просмотров: 1922 | Комментарии: 1 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Поиск

Copyright MyCorp © 2025Создать бесплатный сайт с uCoz