Страница 1 из 1

Откуда берётся DID входящего вызова с потока E1

Добавлено: 20 сен 2016, 11:33
max_mts
Здравствуйте. Помогите пожалуйста разобраться, откуда Asterisk берет идентификатор входящего вызова, приходящего на плату потока E1.
Что есть: Asterisk с платой Digium E1 и подключенная по этому потоку телефонная станция Siemens. Город приходит по SIP-у на Астериск, но в данном случае это не важно, так как вопрос внутренней коммутации.
В чём суть проблемы: при звонках с Siemens-a на Asterisk в логах последнего в качестве номера звонящего абонента подставляется городской номер SIP-телефнии никак не связанный с Сименсом. Всю голову сломал пытаясь понять откуда вообще он этот номер берёт.

Вот что валится в лог Астра при звонке на него с Siemens:

Код: Выделить всё

-- Span 1: Channel 0/29 got hangup request, cause 16
  == Spawn extension (ext-trunk, tdial, 9) exited non-zero on 'DAHDI/i1/241-16'
    -- Hungup 'DAHDI/i1/241-16'
    -- Accepting call from '8121112233' to '89114445566' on channel 0/29, span 1
    -- Executing [89114445566@from-pstn:1] Set("DAHDI/i1/8121112233-17", "__FROM_DID=89114445566") in new stack
    -- Executing [89114445566@from-pstn:2] Gosub("DAHDI/i1/8121112233-17", "app-blacklist-check,s,1()") in new stack
    -- Executing [s@app-blacklist-check:1] GotoIf("DAHDI/i1/8121112233-17", "0?blacklisted") in new stack
    -- Executing [s@app-blacklist-check:2] Set("DAHDI/i1/8121112233-17", "CALLED_BLACKLIST=1") in new stack
    -- Executing [s@app-blacklist-check:3] Return("DAHDI/i1/8121112233-17", "") in new stack
    -- Executing [89114445566@from-pstn:3] Set("DAHDI/i1/8121112233-17", "CDR(did)=89114445566") in new stack
    -- Executing [89114445566@from-pstn:4] ExecIf("DAHDI/i1/8121112233-17", "1 ?Set(CALLERID(name)=8121112233)") in new stack
Вот откуда он берёт этот 8121112233? Это номер моей городской телефонии приходящей по SIP на Asterisk и никак не связанной с Siemens.
Поиск по конфигурационным файлам в папке /etc/asterisk дал только одну строку из файла extensions_additional.conf:

Код: Выделить всё

[root@aster-ast asterisk]# grep -iRI "8121112233" /etc/asterisk/*.conf
/etc/asterisk/extensions_additional.conf:OUTCID_1 = 8121112233

Re: Откуда берётся DID входящего вызова с потока E1

Добавлено: 20 сен 2016, 11:58
ded
Вы этот номер выставили нечаянно зачем-то на DAHDI транке, который из Siemens. Что было совершенно не нужно.

И это (8121112233) не DID, а CID -
__FROM_DID=89114445566 - вот этот DID (Destination ID)

Re: Откуда берётся DID входящего вызова с потока E1

Добавлено: 21 сен 2016, 08:44
max_mts
Спасибо! Вчера честно пытался гуглить эту тему, но видимо мне нужна боне развёрнутое объяснение фразе "Вы этот номер выставили нечаянно зачем-то на DAHDI транке, который из Siemens". А где именно выставляется этот номер? Изучал конфиги и вот, что там есть:
chan_dahdi.conf

Код: Выделить всё

[trunkgroups]

[channels]
context=from-trunk
rxwink=300		; Atlas seems to use long (250ms) winks
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
faxdetect=incoming
echotraining=800
rxgain=0.0
txgain=0.0
callgroup=1
pickupgroup=1
callprogress=no
group=1
echocancel=yes
signalling=pri_net
channel =>1-15,17-31
switchtype=euroisdn
resetinterval=never
immediate=no
Здесь описание контекста from-trunk. А вот в файле extensions.conf к этому from-trunk цепляется тот самый from-pstn из моего лога. Вот так:

Код: Выделить всё

;-------------------------------------------------------------------------------
; from-trunk:
;
; Context is really just an aliax of from-pstn
;
[from-trunk]
include => from-pstn
;-------------------------------------------------------------------------------

;-------------------------------------------------------------------------------
; from-pstn:
;
; Entry context for calls from the outside world to hit FreePBX
[from-pstn]
include => from-pstn-custom		; create this context in extensions_custom.conf to include customizations
include => ext-did
include => ext-did-post-custom
include => from-did-direct
include => ext-did-catchall		; THIS MUST COME AFTER ext-did
Читал описание ключей для chan-dahdi.conf но все эти callerid и прочие, вроде не про это.

Re: Откуда берётся DID входящего вызова с потока E1

Добавлено: 21 сен 2016, 10:33
ded
Выставили не в конфигах, а в вэб интерфейсе - на транке, или на маршруте.

И. если у вас схема
Siemens => E1=> Asterisk ----> город
то лучше не context=from-trunk
а context=from-internal

Re: Откуда берётся DID входящего вызова с потока E1

Добавлено: 28 окт 2016, 09:42
max_mts
Вынужден поднять тему, так как даже после прочтения "будущего телефонии" так и не осилил эту проблему ((.
Так и не смог понять, где именно в web-интерфейсе можно было выставить подобную настройку. Может быть у Elsaix через Web нет таких настроек? В любом случае это же должно отразится в коняги-файлах, а там я уже все глаза сломал разыскивая.

Помогите, пожалуйста добить вопрос. Может скриншоты какие показать или файлы кончиков, чтобы понятнее было?