Instrukcje konfiguracji sprzętu VoIP Konfiguracja Asterisk PJSIP

Przykład ustawień aktywacji Asterisk PJSIP w Zadarma.

Dane przedstawione w przykładzie:

  • 111111 - Twój numer SIP z Panelu Klienta.
  • Password - Twoje hasło numeru SIP z zakładki "Konfiguracji konta SIP" w Panelu Klienta.
  • 1234-100 - Twój numer wewnętrzny centrali telefonicznej z Panelu klienta
  • Password - Twoje hasło numeru wewnętrznego centrali telefonicznej z Panelu Klienta
  • 101 - Wewnętrzny numer Asterisk, do którego podłączany jest ‎softphone/telefon IP w celu odbierania połączeń przychodzących i wykonywania połączeń ‎wychodzących.

Standardowy przykład konfiguracji

Połączenia wychodzące z wirtualnego numeru 101 kierowane są na 111111 Połączenia ‎przychodzące odbierane są po rejestracji i kierowane są na wirtualny numer 101

Połączenia wychodzące z wirtualnego numeru 101 kierowane są na 1234-100 Połączenia ‎przychodzące odbierane są po rejestracji i kierowane są na wirtualny numer 101

Edytujemy pjsip.conf


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

[111111]
type=registration
transport=udp-transport
outbound_auth=111111_auth
server_uri=sip:sip.zadarma.com
client_uri=sip:111111@sip.zadarma.com
retry_interval=60
expiration=120
contact_user=111111

[111111_auth]
type=auth
auth_type=userpass
password=Password
username=111111

[111111]
type=aor
contact=sip:sip.zadarma.com

[111111]
type=endpoint
transport=udp-transport
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
outbound_auth=111111_auth
aors=111111
from_user=111111
direct_media=no

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




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

[1234-100]
type=registration
transport=udp-transport
outbound_auth=1234-100_auth
server_uri=sip:pbx.zadarma.com
client_uri=sip:1234-100@pbx.zadarma.com
retry_interval=60
expiration=120
contact_user=1234-100

[1234-100_auth]
type=auth
auth_type=userpass
password=Password
username=1234-100

[1234-100]
type=aor
contact=sip:pbx.zadarma.com

[1234-100]
type=endpoint
transport=udp-transport
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
outbound_auth=1234-100_auth
aors=1234-100
from_user=1234-100
direct_media=no

[1234-100]
type=identify
endpoint=1234-100
match=pbx.zadarma.com


Numer wirtualny, do którego będzie podłączony softphone/telefon IP w celu odbioru połączeń ‎przychodzących i wykonywania połączeń wychodzących.


[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

Routing połączeń przychodzących i wychodzących można skonfigurować w pliku extensions.conf



[zadarma-in]
exten => 111111,1, Dial(PJSIP/101)                     ; wszystkie połączenia przychodzące z 111111‎ przekierowane na numer wirtualny 101‎

[zadarma-out]
exten => _XXX,1,Dial(PJSIP/${EXTEN})                   ; połączenia na trzycyfrowe numery Asteriska‎
exten => _XXX.,1,Dial(PJSIP/${EXTEN}@111111)           ; połączenia na numery czterocyfrowe lub więcej przez 111111‎





[zadarma-in]
exten => 1234-100,1, Dial(PJSIP/101)                   ; wszystkie połączenia przychodzące z 1234-100‎ przekierowane na numer wirtualny 101‎

[zadarma-out]
exten => _XXX,1,Dial(PJSIP/${EXTEN})                   ; połączenia z trójcyfrowych numeów wirtualnych Asteriska‎
exten => _XXX.,1,Dial(PJSIP/${EXTEN}@1234-100)         ; połączenia na numery czteroma cyframi lub więcej na 1234-100‎


Standardowa konfiguracja zakończona.

Jeśli masz podłączonych kilka numerów telefonicznych, w ramach wygody możesz nadać każdemu ‎numerowi swoją nazwę, na przykładWarszawa i London, a także skonfigurować routing ‎przychodzący w oaprciu o ten parametr. Nazwa numeru przekazywana jest w ‎parametrze CALLERID(name).

W poniższym przykładzie połączenia z numeru Warszawa kierowane są na ‎wirtualny numer 101, połączenia z numeru London kierowane są na numer 102, ‎a wszelkie inne połączenia Asterisk będą przerywane sygnałem "Zajęte".



[zadarma-in]

exten => _X.,1,GotoIf($["${CALLERID(name)}" = "warszawa"]?2:3)
exten => _X.,2,Dial(PJSIP/101)
exten => _X.,3,GotoIf($["${CALLERID(name)}" = "london"]?4:5)
exten => _X.,4,Dial(PJSIP/102)
exten => _X.,5,Busy


Twój numer telefoniczny, na który zostało wykonane połączenie, przekazywany jest do CALLED_DID . W oparciu o ten parametr możesz skonfigurować ‎routing przychodzący.

W poniższym przykładzie połączenia z numeru 442045770077 kierowane są na ‎wirtualny numer 101, połączenia z numeru 442037691880 kierowane są na numer 102, ‎a wszelkie inne połączenia Asterisk będą przerywane sygnałem "Zajęte".



[zadarma-in]

exten => _X.,1,GotoIf($["${PJSIP_HEADER(read,CALLED_DID)}" = "442045770077"]?2:3)
exten => _X.,2,Dial(PJSIP/101)
exten => _X.,3,GotoIf($["${PJSIP_HEADER(read,CALLED_DID)}" = "442037691880"]?4:5)
exten => _X.,4,Dial(PJSIP/102)
exten => _X.,5,Busy



Konfiguracja zakończona.

Przykład konfiguracji №2 (SIP URI)

Jeśli serwer z Asterisk znajduje się na "białym" adresie IP (Nie za routerem, a na przykład w ‎centrum danych), połączenia można odbierać bez rejestracji w schemacie SIP URI.

Dane przedstawione w przykładzie:

  • 15555555555 - Twój numer telefoniczny podłączony w ‎Zadarma.
  • 2.20.190.41 - Adres IP Twojego serwera z Asterisk.

W Panelu Klienta w rozdziale "Ustawienia - Numer telefoniczny" możesz przekierować połączenia z ‎numeru telefonicznego na serwer zewnętrzny (SIP URI) w formacie 15555555555@2.20.190.41

Edytujemy pjsip.conf


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

[15555555555]
type=endpoint
transport=udp-transport
context=zadarma-in
disallow=all
allow=alaw
allow=ulaw
aors=15555555555
direct_media=no

[15555555555]
type=identify
endpoint=15555555555
match=sip.zadarma.com
match=sipurifr.zadarma.com
match=sipde.zadarma.com
match=sipuriny.zadarma.com


Trasowanie przychodzące w extensions.conf


[zadarma-in]

exten => 15555555555,1, Dial(PJSIP/101)


Konfiguracja zakończona.

Przykład konfiguracji z wykorzystaniem autoryzacji z pomocą adresu IP.