VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Digium и Ростелеком

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

corpse
Сообщения: 78
Зарегистрирован: 21 июл 2016, 11:17

Digium и Ростелеком

Сообщение corpse »

Уважаемые форумчане, требуется помощь.
Установлена карта Digium TDM800P (4 внешних аналоговых/4 внутренних). Настроил канал DAHDI для соединения с Ростелеком. Звонок проходит на внутренний телефон, но если поднять трубку то соединения не устанавливается, Ростелеком не видит что трубка была поднята.
При этом если маршрут на внутренний IP телефон, то Asterisk как будто рвет канал, поскольку звонок идет не неперывно на аппарат, а как несколько звонков (счетчик пропущенных на аппарате увеличивается).
Уже как только не крутил chan_dahdi.conf

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

[channels]
language=en
context=from-pstn
relaxdtmf=yes
signalling=fxs_ks
faxdetect=incoming
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=800
rxgain=0.0
txgain=0.0
callgroup=1
pickupgroup=1
callprogress = yes
group=1
overlapdial=yes
busydetect=yes
busycount=5
mmediate=no
Подскажите пожалуйста в какую сторону копать?
Спасибо!
ded
Сообщения: 15629
Зарегистрирован: 26 авг 2010, 19:00

Re: Digium и Ростелеком

Сообщение ded »

Ростелеком не видит что трубка была поднята, потому что в разных странах мира разные параметры аналоговых телефонных линий.
Это: напряжение незанятой линии, напряжение в линии при поднятии трубки, напряжение при вызове (звонок). И также - индикация сигналов: длинный гудок, гудки вызова - КПВ (ring tone), короткие гудки (занято и отбой), эти параметры можно увидеть в файле/etc/asterisk/indications.conf, характеризуются частотой сигнала в герцах и длительностью сигналов и пауз.
Их надо назначать для ваших аналоговых портов FXO.
И это ещё не всё. Если в линии отсутствует заземление - ещё наплачетесь с зависанием, эхо, низким уровнем громкости, и пр. А на телефонных FXS портах геморрой с flash, dtmf, пульсом, трансферами, и др.
Читать:
http://asterisk.ru/knowledgebase/analogue
corpse
Сообщения: 78
Зарегистрирован: 21 июл 2016, 11:17

Re: Digium и Ростелеком

Сообщение corpse »

ded огромное спасибо за наводку. Но в файле indications.conf содержится информация в соответствии с Вашими же рекомендациями найденными на этом форуме и вроде как соответствуют требованиям ГОСТа, не считая параметра ring, который вы рекомендуете, как 425/1000,0/4000, а у меня 800 и 3200.
indications.conf

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

[general]
country=ru

[ru]
description = Russian Federation
ringcadence = 1000,4000
dial = 425
busy = 425/350,0/350
ring = 425/800,0/3200
congestion = 425/350,0/350
callwaiting = 425/200,0/5000
dialrecall = !350+440/100,!0/100,!350+440/100,!0/100,!350+440/100,!0/100,350+440
record = 1400/500,0/15000
info = !950/330,!1400/330,!1800/330,0
Вот что происходит в CLI:

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

[Jul 22 13:18:42] NOTICE[14991] sig_analog.c: Alarm cleared on channel 3
[Jul 22 13:18:42] VERBOSE[15053] sig_analog.c:     -- Starting simple switch on 'DAHDI/3-1'
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:1] NoOp("DAHDI/3-1", "Entering from-dahdi with DID == ") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:2] Ringing("DAHDI/3-1", "") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:3] Set("DAHDI/3-1", "DID=s") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:4] NoOp("DAHDI/3-1", "DID is now s") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:5] GotoIf("DAHDI/3-1", "1?dahdiok:checkzap") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (from-zaptel,s,9)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:9] NoOp("DAHDI/3-1", "Is a DAHDI Channel") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:10] Set("DAHDI/3-1", "CHAN=3-1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:11] Set("DAHDI/3-1", "CHAN=3") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:12] Macro("DAHDI/3-1", "from-dahdi-3,s,1") in new stack
[Jul 22 13:18:43] WARNING[15053] app_macro.c: No such context 'macro-from-dahdi-3' for macro 'from-dahdi-3'
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:13] NoOp("DAHDI/3-1", "Returned from Macro from-dahdi-3") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-zaptel:14] Goto("DAHDI/3-1", "from-pstn,s,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (from-pstn,s,1)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-pstn:1] Set("DAHDI/3-1", "__FROM_DID=s") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-pstn:2] Gosub("DAHDI/3-1", "app-blacklist-check,s,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@app-blacklist-check:1] GotoIf("DAHDI/3-1", "0?blacklisted") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@app-blacklist-check:2] Set("DAHDI/3-1", "CALLED_BLACKLIST=1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@app-blacklist-check:3] Return("DAHDI/3-1", "") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-pstn:3] ExecIf("DAHDI/3-1", "1 ?Set(CALLERID(name)=)") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-pstn:4] Set("DAHDI/3-1", "__CALLINGPRES_SV=allowed_not_screened") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-pstn:5] Set("DAHDI/3-1", "CALLERPRES()=allowed_not_screened") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@from-pstn:6] Goto("DAHDI/3-1", "from-did-direct,303,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (from-did-direct,303,1)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [303@from-did-direct:1] Macro("DAHDI/3-1", "exten-vm,novm,303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:1] Macro("DAHDI/3-1", "user-callerid,") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:1] Set("DAHDI/3-1", "AMPUSER=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:2] GotoIf("DAHDI/3-1", "0?report") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:3] ExecIf("DAHDI/3-1", "1?Set(REALCALLERIDNUM=)") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:4] Set("DAHDI/3-1", "AMPUSER=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:5] Set("DAHDI/3-1", "AMPUSERCIDNAME=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:6] GotoIf("DAHDI/3-1", "1?report") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-user-callerid,s,10)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:10] GotoIf("DAHDI/3-1", "0?continue") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:11] Set("DAHDI/3-1", "__TTL=64") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:12] GotoIf("DAHDI/3-1", "1?continue") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-user-callerid,s,19)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:19] Set("DAHDI/3-1", "CALLERID(number)=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:20] Set("DAHDI/3-1", "CALLERID(name)=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-user-callerid:21] NoOp("DAHDI/3-1", "Using CallerID "" <>") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:2] Set("DAHDI/3-1", "RingGroupMethod=none") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:3] Set("DAHDI/3-1", "VMBOX=novm") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:4] Set("DAHDI/3-1", "__EXTTOCALL=303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:5] Set("DAHDI/3-1", "CFUEXT=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:6] Set("DAHDI/3-1", "CFBEXT=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:7] Set("DAHDI/3-1", "RT=""") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:8] Macro("DAHDI/3-1", "record-enable,303,IN") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-record-enable:1] GotoIf("DAHDI/3-1", "1?check") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-record-enable,s,4)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-record-enable:4] ExecIf("DAHDI/3-1", "0?MacroExit()") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-record-enable:5] GotoIf("DAHDI/3-1", "0?Group:OUT") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-record-enable,s,15)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-record-enable:15] GotoIf("DAHDI/3-1", "1?IN") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-record-enable,s,20)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-record-enable:20] ExecIf("DAHDI/3-1", "1?MacroExit()") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-exten-vm:9] Macro("DAHDI/3-1", "dial-one,"",tr,303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:1] Set("DAHDI/3-1", "DEXTEN=303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:2] Set("DAHDI/3-1", "DIALSTATUS_CW=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:3] GosubIf("DAHDI/3-1", "0?screen,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:4] GosubIf("DAHDI/3-1", "0?cf,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:5] GotoIf("DAHDI/3-1", "1?skip1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-dial-one,s,8)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:8] GotoIf("DAHDI/3-1", "0?nodial") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:9] GotoIf("DAHDI/3-1", "0?continue") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:10] Set("DAHDI/3-1", "EXTHASCW=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:11] GotoIf("DAHDI/3-1", "1?next1:cwinusebusy") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-dial-one,s,12)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:12] GotoIf("DAHDI/3-1", "0?docfu:skip3") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-dial-one,s,16)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:16] GotoIf("DAHDI/3-1", "1?next2:continue") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-dial-one,s,17)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:17] GotoIf("DAHDI/3-1", "1?continue") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-dial-one,s,25)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:25] GotoIf("DAHDI/3-1", "0?nodial") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:26] GosubIf("DAHDI/3-1", "1?dstring,1:dlocal,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:1] Set("DAHDI/3-1", "DSTRING=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:2] Set("DAHDI/3-1", "DEVICES=303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:3] ExecIf("DAHDI/3-1", "0?Return()") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:4] ExecIf("DAHDI/3-1", "0?Set(DEVICES=03)") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:5] Set("DAHDI/3-1", "LOOPCNT=1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:6] Set("DAHDI/3-1", "ITER=1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:7] Set("DAHDI/3-1", "THISDIAL=SIP/303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:8] GosubIf("DAHDI/3-1", "1?zap2dahdi,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:1] ExecIf("DAHDI/3-1", "0?Return()") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:2] Set("DAHDI/3-1", "NEWDIAL=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:3] Set("DAHDI/3-1", "LOOPCNT2=1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:4] Set("DAHDI/3-1", "ITER2=1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:5] Set("DAHDI/3-1", "THISPART2=SIP/303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:6] ExecIf("DAHDI/3-1", "0?Set(THISPART2=DAHDI/303)") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:7] Set("DAHDI/3-1", "NEWDIAL=SIP/303&") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:8] Set("DAHDI/3-1", "ITER2=2") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:9] GotoIf("DAHDI/3-1", "0?begin2") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:10] Set("DAHDI/3-1", "THISDIAL=SIP/303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [zap2dahdi@macro-dial-one:11] Return("DAHDI/3-1", "") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:9] Set("DAHDI/3-1", "DSTRING=SIP/303&") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:10] Set("DAHDI/3-1", "ITER=2") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:11] GotoIf("DAHDI/3-1", "0?begin") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:12] Set("DAHDI/3-1", "DSTRING=SIP/303") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [dstring@macro-dial-one:13] Return("DAHDI/3-1", "") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:27] GotoIf("DAHDI/3-1", "0?nodial") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:28] GotoIf("DAHDI/3-1", "1?skiptrace") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Goto (macro-dial-one,s,30)
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:30] Set("DAHDI/3-1", "D_OPTIONS=tr") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:31] ExecIf("DAHDI/3-1", "0?SIPAddHeader(Alert-Info: )") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:32] ExecIf("DAHDI/3-1", "0?SIPAddHeader()") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:33] ExecIf("DAHDI/3-1", "0?Set(CHANNEL(musicclass)=)") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:34] GosubIf("DAHDI/3-1", "0?qwait,1") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:35] Set("DAHDI/3-1", "__CWIGNORE=") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:36] Set("DAHDI/3-1", "__KEEPCID=TRUE") in new stack
[Jul 22 13:18:43] VERBOSE[15053] pbx.c:     -- Executing [s@macro-dial-one:37] Dial("DAHDI/3-1", "SIP/303,"",tr") in new stack
[Jul 22 13:18:43] VERBOSE[15053] netsock2.c:   == Using SIP RTP TOS bits 184
[Jul 22 13:18:43] VERBOSE[15053] netsock2.c:   == Using SIP RTP CoS mark 5
[b][Jul 22 13:18:43] VERBOSE[15053] app_dial.c:     -- Called SIP/303
[Jul 22 13:18:43] VERBOSE[15053] app_dial.c:     -- SIP/303-00000001 is ringing[/b]
[Jul 22 13:18:48] NOTICE[15053] sig_analog.c: Alarm cleared on channel 3
[Jul 22 13:18:49] WARNING[15053] chan_dahdi.c: Detected alarm on channel 3: Red Alarm
[Jul 22 13:18:49] VERBOSE[15053] app_macro.c:   == Spawn extension (macro-dial-one, s, 37) exited non-zero on 'DAHDI/3-1' in macro 'dial-one'
[Jul 22 13:18:49] VERBOSE[15053] app_macro.c:   == Spawn extension (macro-exten-vm, s, 9) exited non-zero on 'DAHDI/3-1' in macro 'exten-vm'
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:   == Spawn extension (from-did-direct, 303, 1) exited non-zero on 'DAHDI/3-1'
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [h@from-did-direct:1] Macro("DAHDI/3-1", "hangupcall,") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:1] GotoIf("DAHDI/3-1", "1?endmixmoncheck") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,9)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:9] NoOp("DAHDI/3-1", "End of MIXMON check") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:10] GotoIf("DAHDI/3-1", "1?nomeetmemon") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,15)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:15] NoOp("DAHDI/3-1", "MEETME_RECORDINGFILE=") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:16] GotoIf("DAHDI/3-1", "1?noautomon") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,18)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:18] NoOp("DAHDI/3-1", "TOUCH_MONITOR_OUTPUT=") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:19] GotoIf("DAHDI/3-1", "1?noautomon2") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,25)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:25] NoOp("DAHDI/3-1", "MONITOR_FILENAME=") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:26] GotoIf("DAHDI/3-1", "1?skiprg") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,29)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:29] GotoIf("DAHDI/3-1", "1?skipblkvm") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,32)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:32] GotoIf("DAHDI/3-1", "1?theend") in new stack
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Goto (macro-hangupcall,s,34)
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:     -- Executing [s@macro-hangupcall:34] Hangup("DAHDI/3-1", "") in new stack
[Jul 22 13:18:49] VERBOSE[15053] app_macro.c:   == Spawn extension (macro-hangupcall, s, 34) exited non-zero on 'DAHDI/3-1' in macro 'hangupcall'
[Jul 22 13:18:49] VERBOSE[15053] pbx.c:   == Spawn extension (from-did-direct, h, 1) exited non-zero on 'DAHDI/3-1'
[Jul 22 13:18:49] VERBOSE[15053] sig_analog.c:     -- Hanging up on 'DAHDI/3-1'
[Jul 22 13:18:49] VERBOSE[15053] chan_dahdi.c:     -- Hungup 'DAHDI/3-1'
[Jul 22 13:18:54] NOTICE[14991] sig_analog.c: Alarm cleared on channel 3
[Jul 22 13:18:54] VERBOSE[15054] sig_analog.c:     -- Starting simple switch on 'DAHDI/3-1'
[Jul 22 13:18:55] VERBOSE[15054] pbx.c:     -- Executing [s@from-zaptel:1] NoOp("DAHDI/3-1", "Entering from-dahdi with DID == ") in new stack
Еще обратил внимание на то, что если в chan_dahdi.conf убрать параметр cidstart, то звонок срывается сразу. сейчас он выставлен в

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

cidstart=ring
Спасибо!
ded
Сообщения: 15629
Зарегистрирован: 26 авг 2010, 19:00

Re: Digium и Ростелеком

Сообщение ded »

всё даже хуже, чем обычно :)
1) Используете freePBX, нужно бы забить информацию о тел. линиях правильно в модуль DID's number from Zap channel - старое наследие, когда деревья были большими, и DAHDI назывался Zap. Укажите какие городские номера закреплены за портами, типа DAHDI/3 = 654321
тогда можно использовать после этого модуль входящей маршрутизации по DID. А то Астериск вообще не понимает какую линию куда разруливать.
"Entering from-dahdi with DID == "

2) Кроме того, определние Caller ID там по логу видно - не работает у вас. cidstart=ring - мимо. Звонок срывается вот от чего:

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

[Jul 22 13:18:48] NOTICE[15053] sig_analog.c: Alarm cleared on channel 3
[Jul 22 13:18:49] WARNING[15053] chan_dahdi.c: Detected alarm on channel 3: Red Alarm
Похоже у вас там переполюсовка - polarity inverse. Уже знаете что в Гугль забивать и читать, верно?

3) Вы извините, разруливать аналоговый шлак становиться всё труднее с годами. Люди, приходящие в VoIP всё тяжелее врубаются в пыль веков.
corpse
Сообщения: 78
Зарегистрирован: 21 июл 2016, 11:17

Re: Digium и Ростелеком

Сообщение corpse »

ded, еще раз огромное спасибо за помощь, но переплюсовка не помогла.
Добавил в конфиг информацию для переплюсовки:

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

answeronpolarityswitch = yes 
hanguponpolarityswitch = yes 
в соответствии с найденной статьей http://sit-kit.blogspot.ru/2013/08/call ... t.html?m=1
ded
Сообщения: 15629
Зарегистрирован: 26 авг 2010, 19:00

Re: Digium и Ростелеком

Сообщение ded »

Переполюсовка не может помочь, она или есть (в гор. линии) при снятии трубки, и тогда даём указание - как реагировать на неё:
answeronpolarityswitch = yes
hanguponpolarityswitch = yes
или её нет. К слову сказать - Вы дали два противоречивых указания.
Отвечать в линию при переполюсовке? - да.
Или трубку положить при переполюсовке? - да.
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Digium и Ростелеком

Сообщение virus_net »

[offtop]
Чисто интересно
corpse писал(а):в соответствии с найденной статьей
Т.е.
answeronpolarityswitch
hanguponpolarityswitch
Вас нисколько не напрягло ?
[/offtop]
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
corpse
Сообщения: 78
Зарегистрирован: 21 июл 2016, 11:17

Re: Digium и Ростелеком

Сообщение corpse »

Более детальное изучение причин возникновения данного типа сообщений:
ded писал(а):Код: выделить все
[Jul 22 13:18:48] NOTICE[15053] sig_analog.c: Alarm cleared on channel 3
[Jul 22 13:18:49] WARNING[15053] chan_dahdi.c: Detected alarm on channel 3: Red AlarmПохоже у вас там переполюсовка - polarity inverse. Уже знаете что в Гугль забивать и читать, верно?
вывело на причину, проблема оказалась с патчкордом от патчпанели до Digium. Замена решила все проблемы.
Переплюсовка в линии по факту отсутствует.
Еще раз огромное спасибо всем ответившим.
corpse
Сообщения: 78
Зарегистрирован: 21 июл 2016, 11:17

Re: Digium и Ростелеком

Сообщение corpse »

ded, подскажите еще пожалуйста, как избавиться от этого, чтоб разрулить входящие вызовы на группы:
ded писал(а):"Entering from-dahdi with DID == "
Все сделал в соответствии с вашими рекомендациями:
1. Забил в ZAP Channel DID's информацию по каналу.
2. Изменил в dahdi_channels.conf контекст на from-zaptel, пробовал from-dahdi.
Все равно возвращает: Entering from-dahdi with DID ==

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


   -- Starting simple switch on 'DAHDI/3-1'
    -- Executing [s@from-zaptel:1] NoOp("DAHDI/3-1", "Entering from-dahdi with DID == ") in new stack
    -- Executing [s@from-zaptel:2] Ringing("DAHDI/3-1", "") in new stack
    -- Executing [s@from-zaptel:3] Set("DAHDI/3-1", "DID=s") in new stack
    -- Executing [s@from-zaptel:4] NoOp("DAHDI/3-1", "DID is now s") in new stack
    -- Executing [s@from-zaptel:5] GotoIf("DAHDI/3-1", "1?dahdiok:checkzap") in new stack
    -- Goto (from-zaptel,s,9)
    -- Executing [s@from-zaptel:9] NoOp("DAHDI/3-1", "Is a DAHDI Channel") in new stack
    -- Executing [s@from-zaptel:10] Set("DAHDI/3-1", "CHAN=3-1") in new stack
    -- Executing [s@from-zaptel:11] Set("DAHDI/3-1", "CHAN=3") in new stack
    -- Executing [s@from-zaptel:12] Macro("DAHDI/3-1", "from-dahdi-3,s,1") in new stack
    -- Executing [s@macro-from-dahdi-3:1] NoOp("DAHDI/3-1", "Entering macro-from-dahdi-3 with DID = s and setting to: 539925") in new stack
    -- Executing [s@macro-from-dahdi-3:2] Set("DAHDI/3-1", "__FROM_DID=539925") in new stack
    -- Executing [s@macro-from-dahdi-3:3] Goto("DAHDI/3-1", "from-trunk,539925,1") in new stack
    -- Goto (from-trunk,539925,1)
  == Channel 'DAHDI/3-1' jumping out of macro 'from-dahdi-3'
    -- Executing [539925@from-trunk:1] Goto("DAHDI/3-1", "from-internal,539925,1") in new stack
    -- Goto (from-internal,539925,1)
    -- Executing [h@from-internal:1] Macro("DAHDI/3-1", "hangupcall") in new stack
    -- Executing [s@macro-hangupcall:1] GotoIf("DAHDI/3-1", "1?endmixmoncheck") in new stack
    -- Goto (macro-hangupcall,s,9)
    -- Executing [s@macro-hangupcall:9] NoOp("DAHDI/3-1", "End of MIXMON check") in new stack
    -- Executing [s@macro-hangupcall:10] GotoIf("DAHDI/3-1", "1?nomeetmemon") in new stack
    -- Goto (macro-hangupcall,s,15)
    -- Executing [s@macro-hangupcall:15] NoOp("DAHDI/3-1", "MEETME_RECORDINGFILE=") in new stack
    -- Executing [s@macro-hangupcall:16] GotoIf("DAHDI/3-1", "1?noautomon") in new stack
    -- Goto (macro-hangupcall,s,18)
    -- Executing [s@macro-hangupcall:18] NoOp("DAHDI/3-1", "TOUCH_MONITOR_OUTPUT=") in new stack
    -- Executing [s@macro-hangupcall:19] GotoIf("DAHDI/3-1", "1?noautomon2") in new stack
    -- Goto (macro-hangupcall,s,25)
    -- Executing [s@macro-hangupcall:25] NoOp("DAHDI/3-1", "MONITOR_FILENAME=") in new stack
    -- Executing [s@macro-hangupcall:26] GotoIf("DAHDI/3-1", "1?skiprg") in new stack
    -- Goto (macro-hangupcall,s,29)
    -- Executing [s@macro-hangupcall:29] GotoIf("DAHDI/3-1", "1?skipblkvm") in new stack
    -- Goto (macro-hangupcall,s,32)
    -- Executing [s@macro-hangupcall:32] GotoIf("DAHDI/3-1", "1?theend") in new stack
    -- Goto (macro-hangupcall,s,34)
    -- Executing [s@macro-hangupcall:34] Hangup("DAHDI/3-1", "") in new stack
  == Spawn extension (macro-hangupcall, s, 34) exited non-zero on 'DAHDI/3-1' in macro 'hangupcall'
  == Spawn extension (from-internal, h, 1) exited non-zero on 'DAHDI/3-1'
    -- Hanging up on 'DAHDI/3-1'
    -- Hungup 'DAHDI/3-1'
Соответственно не удается разрулить входящий звонок на основе DID номера.
Спасибо!
ded
Сообщения: 15629
Зарегистрирован: 26 авг 2010, 19:00

Re: Digium и Ростелеком

Сообщение ded »

CLI> dahdi show channels ?
Не вижу как реазизован п.1
Забил в ZAP Channel DID's информацию по каналу.
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH