AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Подскажите что нужно исправить в конфиге для вот такой схемы...

Asterisk IP PBX 14 сообщений -
#1

Есть несколько астерисков, один центральный с подключенными внешними линиями sip, вся связь с внешним миром осуществляется через него, между собой астериски связаны по sip.
Так вот, есть в диалплане неосновного астериска такие строчки для отзвонки на сотовый телефон сотрудника если его нет на месте

exten => 550,1,Dial(DAHDI/g0/${EXTEN},7,t)
exten => 550,n,GotoIfTime(7:58-00:02,mon-sat,*,*?norm)
exten => 550,n,Dial(DAHDI/g0/${EXTEN},,t)
exten => 550,n,Hangup()
exten => 550,n(norm),Dial(SIP/sp1to5/89XXXXXXXX&DAHDI/g0/${EXTEN})

звонки с астериска на астерисик проходят на ура, ну и во внешний мир тоже... НО если абонент основного астериска звонит на второй, при попытке завернуть (последняя строчка примера) звонок обратно на первый астериск для внешнего звонка получаю вот такую ошибку

NOTICE[4448] chan_sip.c: Failed to authenticate on INVITE to '"Grebenez" ;tag=as02d34a15'

т.е. какие то проблемы с аунтификацией.... звонок проходит как будто не по настройкам пира sp1to5 а с данными пира 102 который авторизован на первом астериске.... как лечить?
#2

Проверьте

insecure=port,invite

_________________
P4 3.0 + 1Gb CentOS 5.8 Aster 1.8.16
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
#3

стоит для пиров астериска и исходящем... на пирах телефонов не стоит.

Added after 8 minutes:

блин... поставил на пир телефона insecure=port,invite и заработало... чем черевато? теперь для всез пиров прописывать Sad
#4

А пир на первом астериске у вас заведен как
[102]
type=friend
bla
bla
bla

?

И при этом, extention для этого пира тоже 102?
#5

угу
#6

Вот потому у вас и каша. Выдержка из sip.conf.samle:


Код:
;------- Naming devices ------------------------------------------------------
;
; When naming devices, make sure you understand how Asterisk matches calls
; that come in.
; 1. Asterisk checks the SIP From: address username and matches against
; names of devices with type=user
; The name is the text between square brackets [name]
; 2. Asterisk checks the From: addres and matches the list of devices
; with a type=peer
; 3. Asterisk checks the IP address (and port number) that the INVITE
; was sent from and matches against any devices with type=peer
;
; Don't mix extensions with the names of the devices. Devices need a unique
; name. The device name is *not* used as phone numbers. Phone numbers are
; anything you declare as an extension in the dialplan (extensions.conf).


Отедльно подчеркну:
; Don't mix extensions with the names of the devices. Devices need a unique
; name. The device name is *not* used as phone numbers. Phone numbers are
; anything you declare as an extension in the dialplan (extensions.conf).
#7

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

и что то я всё равно не понял причем тут номер звонящего, название его устройства (пусть и совпадают) и моя схема.
#8

Я понимаю, что это удобно, но так КАТЕГОРИЧЕСКИ не рекоменудется делать.
Переименуйте пир таким образом, что бы он он не был равен номеру телефона и все у вас сразу же получится.
#9

Можно называть так:
имясервера_экстеншен

Тогда не будут совпадающие на разных серверах и одновременно не теряется удобство обработки с использованием ${EXTEN}

_________________
Intel Core 2 Duo E6400 @ 2.40GHz / 6Gb / 160Gb || Gentoo Linux || Asterisk 1.8.12
Решения телефонии на базе Asterisk || http://it-need.ru
#10

так, а с чего взяли что совпадают на разных серверах то? нет, нумерация у меня по всей организации сквозная, совпадающих нет.... повторю цепочку(номера могут быть любыми) - пир 102 на главном сервере звонит на 512, который на доп сервере... т.е. происходит dial(SIP/досервер/512).... в свою очередь допсервер отрабатывает dial(SIP/512) и дальше dial(SIP/главныйсервер/номер сотового) вот на этом моменте и происходит отбой
NOTICE[4448] chan_sip.c: Failed to authenticate on INVITE to '"Grebenez" ;tag=as02d34a15'
#11

Дело не в совпадающих. А в том, что второй сервер инициирует звонок на первый с From:102, и первый астериск, используя этот From пытается найти для него соотвествующий пир, что бы авторизовать данный звонок. И вот ведь неожиданность! НАХОДИТ ЕГО! И требует для него авторизацию, о которой второй сервер ничего не знает.
А если бы пир в sip.conf не был бы назван как 102, то и проблемы бы не было, и тогда бы первый астериск пытался бы обработать этот звонок согласно правилам описаным для пира sip1to5 на первом астериске, где есть insecure=port,invite в который бы этот звонок попал бы на основании IP адреса второго астера.

Так что лучше не спорте, а переименуйте пир 102 и попробуйте. Будет вам щасте.
#12

ну в общем ясно.... это мне с полтыщи пиров переделывать и макросов кучку Sad
#13

А что, автозамена уже не катит? Делов-то на одну минуту подумать и 2 секунды сделать.
#14

серверов 5 и в работе всё, на автозамену надейся, а всё 10 раз перепроверь Smile