Asterisk PJSIP з авторизацією за IP адресою.

Приклад налаштування підключення Asterisk PJSIP до Zadarma з авторизацією за IP адресою.

Якщо сервер з Asterisk знаходиться на "білому" IP (Не за роутером, а наприклад в дата-центрі) вихідні дзвінки можна здійснювати без використання сип-логіна і пароля, з авторизацією за адресою. Вхідні дзвінки можна приймати без реєстрації за схемою SIP URI.

Дані зазначені в прикладі:

  • 15555555555 - Ваш прямий номер підключений в Zadarma.
  • 2.20.190.41 - IP адреса Вашого сервера з Asterisk.
  • 101 - Внутрішній номер Asterisk до якого підключається софтфон/ip-телефон для прийому і здійснення дзвінків.
В особистому кабінеті, в розділі "Налаштування - прямий номер" направте дзвінки з вiртуального номера на зовнішній сервер (SIP URI) у форматі 15555555555@2.20.190.41

Створення SIP-транка:

В особистому кабінеті, в розділі "Налаштування - Сіп Налаштування" внизу сторінки натисніть "Додати SIP-транк".

Вкажіть назву для SIP-транка і виберіть один з існуючих сип-логінів, він буде ідентифікатором SIP-транка і стане недоступний для реєстрації (прийому вхідних дзвінків).

Додайте вашу статичну IP адресу або кілька IP (Наприклад якщо до вашої АТС підведений основний інтернет-канал і резервний).

Для підтвердження IP адреси необхідно направити дзвінок на сервер sip.zadarma.com на номер 8888

Після підтвердження вашого IP адреси, ви можете здійснювати вихідні дзвінки відправляючи нам INVITE з необхідним номером CallerID прямо в заголовку From: що значно спрощує налаштування при великій кількості номерів і полегшує розуміння роботи вихідної маршрутизації.

Редагуємо pjsip.conf

[udp-transport]
type=transport
protocol=udp
bind=0.0.0.0

[zadarma]
type=aor
contact=sip:15555555555@sip.zadarma.com:5060

[zadarma]
type=endpoint
transport=udp-transport
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
aors=zadarma
from_domain=sip.zadarma.com
direct_media=no

[zadarma]
type=identify
endpoint=zadarma
match=sip.zadarma.com

Внутрішній номер 101 до якого підключається софтфон/ip-телефон для прийому і здійснення дзвінків.

[101]
type=endpoint
transport=udp-transport
context=zadarma-out
disallow=all
allow=alaw
allow=ulaw
auth=101
aors=101

[101]
type=auth
auth_type=userpass
password=101
username=101

[101]
type=aor
max_contacts=10
Маршрутизація дзвінків налаштовується у файлі extensions.conf

[zadarma-in]
;вхідні дзвінки направляються на внутрішній номер 101
exten => 15555555555,1, Dial(PJSIP/101)                 

[zadarma-out]

;дзвінки на тризначні внутрішні номери астеріска
exten => _XXX,1,Dial(PJSIP/${EXTEN})                    

;підстановка CallerID 15555555555
exten => _XXX.,1,Set(CALLERID(num)=15555555555)         
same => n,Dial(PJSIP/${EXTEN}@zadarma)

Налаштування завершено.