Файл конфігурації
Файл конфігурації для каналів SIP в Asterisk як для вхідних, так і вихідних дзвінків.
Кожен SIP клієнт або сервер визначається в цьому файлі як текстовий блок, наведений нижче:
Asterisk у ролі SIP клієнта
У файлі конфігурації sip.conf у розділі [general] додайте визначенняregister:
Формат: register => user [:secret[:authuser]] @host [:port] [/extension]
Приклад: ; Зареєструвати 2345 у sip провайдера, як номер 1234 в нашій стороні. register => 2345:[email protected]/1234
Визначення сервера для здійснення вихідних дзвінків має бути приблизно таким:
[mysipprovider-out] type=peer secret=password username=2345 host=sipserver.mysipprovider.com fromuser=2345 fromdomain=fwd.pulver.com nat = yes context = from-mysipprovider ; цей контест має бути визначений у extensions.conf
У файлі extensions.conf, для здійснення вихідних дзвінків, у Вас має бути правило набору, приблизно такого вигляду:
Зверніть увагу, що конструкція $ витягує весь вміст змінної, в якій міститься екстеншен (збігається з шаблоном), за винятком першої цифри, в даному випадку: 9 + набір цифр. Для отримання докладнішої інформації зверніться до розділу по роботі з підрядками в описі змінних Asterisk.
Далі наводиться секція (файла extensions.conf), яка приймає виклики від sip провайдера і направляє його в потрібне місце:
Конфігурація SIP – секція general
Секція [general] , файлу sip.conf, включає наступні змінні:
Конфігурація SIP - клієнти та бенкети
Нижченаведені змінні можуть бути задані вопис кожного SIP клієнта:
Зверніть увагу
Кожен SIP клієнт, який повинен працювати з Asterisk, має бути визначений у файлі SIP.CONF. Нижче наводиться кілька прикладів:
[user1_snomsip] type=friend secret=blah host=dynamic dtmfmode=inband ; Можна вибрати з: inband, rfc2833, або info defaultip=192.168.0.59 mailbox=1234,2345 ; Голосова скринька для роботи індикатора "отриманих нових повідомлень" disallow=all allow=ulaw ; якщо режим dtmf встановлений 'inband', allow=alaw ; то ми повинні використовувати лише кодек g.711
[user2_pingtel] type=friend username=user2_pingtel secret=blah host=dynamic qualify=1000 ; Розглядаємо клієнта як непрацюючого, ; якщо від нього йде більше 1 сек. callgroup = 1,3-4; Клієнт є членом груп викликів: 1, 3 та 4 pickupgroup=1,3-4 ; Ми можемо здійснювати "pick-up" викликів, натиснувши *8, ; для викликів із груп 1, 3 та 4 defaultip=192.168.0.60 disallow=all allow=ulaw allow=alaw allow=g729
username=user4_cisco fromuser=markster ; Визначаємо ім'я користувача, що міститься в полі "from" замість callerid secret=blah defaultip=192.168.0.4; використовуйте або host=dynamic або defaultip=. amaflags=default; Можливо: default, omit, billing, documentation accountcode=markster ; Користувач асоціюється з аккаунтом коду для спрощення білінгу. disallow=all allow=ulaw allow=alaw allow=g729 allow=g723.1
Нижченаведений опис взято з Digium Asterisk handbook?.
exten => 1010,1, Dial(SIP/user3_cisco,10,t)
Якщо хтось здійснить дзвінок на номер 1010, тоді буде спроба викликати SIP клієнта, зареєстрованого якuser3_cisco.
- John Todd, loligo.com: http://www.loligo.com/asterisk/current/sip.conf
Поєднання з Free World Dialup? (без використання NAT)
[ general ] disallow=all allow=gsm allow=ulaw allow=alaw context=from-sip maxexpirey=180 defaultexpirey=160 tos=reliability register => : @fwd.pulver.com/CONTACT
[ fwd.pulver.com ] type=friend secret= username= host=fwd.pulver.com insecure=very ; необхідно для підтримки вхідних FWD дзвінків
Тепер йдемо до опису файлу extensions.conf і дивимося як нам налаштувати контексти [from-sip] та [fwd-out] у плані набору.
Використання Asterisk у зв'язці з SIP проксі SER
[ general ] context=OUTGOING autocreatepeer=yes
[ Provider ] type=friend username=XXXXX secret=XXXXX host=xxxxx.FakeProvider.com
Отже, тепер коли Asterisk отримує виклик з SER, він виконує дію "autocreatepeer" і дозволяє обробити цей виклик у контексті OUTGOING.