Добрый день !
Начальство решило перейти на Ip телефонию. Во я уже третий день ее настраиваю. Все казалось бы настроено, но как то странно работает перевод звонков между внутренними абонентами.
Правда абоненты подключаются в серверу asterisk через да DINSTAR DAG 1000-8s, и через DINSTAR DAG 2000-16s. Навроде как в настройке этих железок запутаться сложно. Там все логично и понятно. И вот когда я через них подключаю обычные аналоговые телефоны, то они нормально регистрируются на сервер Asterisk. Мои попытки пробовать осуществить звонки между внутренними абонентами приводят к тому что иногда это удается сделать верно. А по большей части звонки между внутренними абонентами переводятся на один какой-то номер, а не на тот который указан при звонке. Не знаю в чем дело помогите разобраться в проблеме ?
К поставщику IP телефонии и от него звонки ходят нормально.
Заранее благодарю.
Asterisk v 21.9.1 установлен на Ubuntu 24.04.2 LTS, FreePBX не использую
Конфиги ниже
pjsip.conf
===========
[udp-transport]
type=transport
protocol=udp
bind=0.0.0.0
allow_reload=true
local_net=192.168.0.0/24 ;Здесь указываем свою локальную подсеть
local_net=127.0.0.1/32
external_media_address=########### ;Здесь указываем внешний IP адрес роутера
external_signaling_address=########### ;Здесь указываем внешний IP адрес роутера
;
;
;======== Настройка подключения к MASTERTEL ===============
[XXXXXXXXXX]
type=registration
transport=udp-transport
outbound_auth=XXXXXXXXXX_auth
server_uri=sip:100.238.113.100:5060
client_uri=sip:XXXXXXXXXX@100.238.113.100:5060 ; вносим свой SIP ID
retry_interval=60
expiration=120
contact_user=XXXXXXXXXX
;
[XXXXXXXXXX_auth]
type=auth
auth_type=userpass
username=XXXXXXXXX ; вносим свой SIP ID
password=XXXXXXXXXXX ;Указываем свой пароль от аккаунта
;
[XXXXXXXXXX]
type=aor
contact=sip:100.238.113.100:5060
;
[XXXXXXXXXX]
type=endpoint
transport=udp-transport
context=XXXXXXXXXX-in
dtmf_mode = rfc4733
disallow=all
allow=alaw,ulaw
direct_media=no
from_user=XXXXXXXXXX
outbound_auth=XXXXXXXXXX_auth
aors=XXXXXXXXXX
direct_media=no
rtp_symmetric=yes
force_rport=yes
rewrite_contact=yes
;
[XXXXXXXXXX]
type=identify
endpoint=XXXXXXXXXX
match=100.238.113.100
;=======================================================
;
;
;======== Шаблон для настройки новых клиентов =========
;Используем шаблон для удобства добавления новых абонентов
;
[endpoint-template](!)
type=endpoint
language=ru
transport=udp-transport
context=from-internal
;dtmf_mode = rfc4733
disallow=all
allow=alaw
allow=ulaw
;allow=gsm
;allow=g723
allow=g729
;;callgroup=1
;;pickupgroup=1
;;devicestatebusy_at=1
force_rport=yes
rewrite_contact=yes
;
[pass-auth](!)
type=auth
auth_type=userpass
;
[contact-aor](!)
type=aor
max_contacts=1
;========================================================
;
;
;=========================================================
; Номера сотрудников офиса
;=========================================================
;======Номер 110=========
[110](endpoint-template)
;callerid=Pupkin <110>
auth=auth110
aors=110
[auth110](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=110
;
[110](contact-aor)
;
;
;======Номер 111=========
[111](endpoint-template)
;callerid=Pupkin <111>
auth=auth111
aors=111
[auth111](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=111
;
[111](contact-aor)
;
;
;======Номер 112=========
[112](endpoint-template)
;callerid=Pupkin <112>
auth=auth112
aors=112
[auth112](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=112
;
[112](contact-aor)
;
;
;======Номер 113=========
[113](endpoint-template)
;callerid=Pupkin <113>
auth=auth113
aors=113
[auth113](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=113
;
[113](contact-aor)
;
;
;======Номер 115=========
[115](endpoint-template)
;callerid=Pupkin <115>
auth=auth115
aors=115
[auth115](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=115
;
[115](contact-aor)
;
;
;======Номер 117=========
[117](endpoint-template)
;callerid=Pupkin <117>
auth=auth117
aors=117
[auth117](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=117
;
[117](contact-aor)
;
;
;======Номер 118=========
[118](endpoint-template)
;callerid=Pupkin <118>
auth=auth118
aors=118
[auth118](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=118
;
[118](contact-aor)
;
;
;======Номер 119=========
[119](endpoint-template)
;callerid=Pupkin <119>
auth=auth119
aors=119
[auth119](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=119
;
[119](contact-aor)
;
;
;======Номер 121=========
[121](endpoint-template)
;callerid=Pupkin <121>
auth=auth121
aors=121
[auth121](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=121
;
[121](contact-aor)
;
;
;======Номер 122=========
[122](endpoint-template)
;callerid=Pupkin <122>
auth=auth122
aors=122
[auth122](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=122
;
[122](contact-aor)
;
;
;======Номер 123=========
[123](endpoint-template)
;callerid=Pupkin <123>
auth=auth123
aors=123
[auth123](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=123
;
[123](contact-aor)
;
;
;======Номер 126=========
[126](endpoint-template)
;callerid=Pupkin <126>
auth=auth126
aors=126
[auth126](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=126
;
[126](contact-aor)
;
;
;======Номер 130=========
[130](endpoint-template)
;callerid=Pupkin <130>
auth=auth130
aors=130
[auth130](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=130
;
[130](contact-aor)
;
;
;==========================================================
;
;
;========================================================
; Номера сотрудников на производстве и лаборатории
;========================================================
;======Номер 107=========
[107](endpoint-template)
;callerid=Pupkin <107>
auth=auth107
aors=107
[auth107](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=107
;
[107](contact-aor)
;
;
;======Номер 108=========
[108](endpoint-template)
;callerid=Petrov <108>
auth=auth108
aors=108
;
[auth108](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=108
;
[108](contact-aor)
;
;
;======Номер 109=========
[109](endpoint-template)
;callerid=Sidorov <109>
auth=auth109
aors=109
;
[auth109](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=109
;
[109](contact-aor)
;=======================
;
;
;======Номер 114=========
[114](endpoint-template)
;callerid=Number114 <114>
auth=auth114
aors=114
;
[auth114](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=114
;
[114](contact-aor)
;=======================
;
;
;======Номер 116=========
[116](endpoint-template)
;callerid=Number116 <116>
auth=auth116
aors=116
;
[auth116](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=116
;
[116](contact-aor)
;=======================
;
;
;======Номер 120=========
[120](endpoint-template)
;callerid=Number120 <120>
auth=auth120
aors=120
;
[auth120](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=120
;
[120](contact-aor)
;=======================
;
;
;======Номер 129=========
[129](endpoint-template)
;callerid=Number129 <129>
auth=auth129
aors=129
;
[auth129](pass-auth)
password=123 ;Указываем свой пароль доступа для абонента
username=129
;
[129](contact-aor)
;=======================
extensions.conf
==============
[general]
static = yes
writeprotect = no
priorityjumping = no
autofallthrough = yes
clearglobalvars = no
;
;
[globals]
DIR_RECORDS=/var/calls/
;
;
[default]
;
; Для записи звонков
[recording]
exten => s,1,Set(fname=${UNIQUEID}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M)}-${ARG1}-${ARG2})
exten => s,n,Set(monopt=nice -n 19 /usr/bin/lame -b 32 --silent "${DIR_RECORDS}${fname}.wav" "${DIR_RECORDS}${fname}.mp3" && rm -f "${DIR_RECORDS}${fname}.wav" && chmod o+r "${DIR_RECORDS}${fname}.mp3")
exten => s,n,Set(CDR(filename)=${fname}.mp3)
exten => s,n,Set(CDR(realdst)=${ARG2})
exten => s,n,MixMonitor(${DIR_RECORDS}${fname}.wav,b,${monopt})
exten => s,n(no),Verbose(Exit record)
exten => s,n,Return()
;
;
;=== Исходящие звонки и звонки на внутренние номера
;
[from-internal]
;
; С переводом внутренних звонков
exten => _XXX,1,Dial(PJSIP/${EXTEN},15)
;
; Звонки на внешние номера
[long]
exten => _XXX.,1,Dial(PJSIP/${EXTEN}@XXXXXXXXXX)
;
;
;=== Входящие звонки Первоначально звонок идет в очередь, если не был введен добавочный номер
;========================================================================
[XXXXXXXXXX-in]
; Так будет с приветстствием
exten => XXXXXXXXXX,1,Goto(ivr-main,s,1)
;
;=== Воспроизведение приветсвия при звонках
[ivr-main]
exten => s,1,Answer()
; Проигрываем приветствие
exten => s,2,Background(/etc/asterisk/ivr/ivr-main)
; Ждем 8 сек вводв добавочного номера
exten => s,3,WaitExten(8)
; Звоним по введенному добавочному номеру
exten => _XXX,1,Dial(PJSIP/${EXTEN})
; Если введен не существующий добавочный номер, то сообщаем об это и
;отправляем в начало приветствия
exten => _XXX,2,Playback(privacy-incorrect)
exten => _XXX,3,Goto(ivr-main,s,1)
; Если звонящий ничего не вводит, то звонок переводится на секретаря
exten => t,1,Queue(secretary,t)
;

