Не спрашивайте что я курил или какие грибы ел, но нужно для эксперимента соединить две астериски по E1! Физически поток поднялся, но вызовы не идут - "Все линии заняты". Маршрутизация как при IAX2 не работает... Может есть у кого идеи?
Добавил!
(сервер 1, подключен span2)
pbx*CLI> pri show spans
PRI span 1/0: In Alarm, Down, Active
PRI span 2/0: Up, Active
cat /etc/asterisk/dahdi-channels.conf
; Autogenerated by /usr/sbin/dahdi_genconf on Wed Aug 15 09:30:40 2012
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;
; Span 1: TE2/0/1 "T2XXP (PCI) Card 0 Span 1"
group=2
context=from-pstn
switchtype = euroisdn
signalling = pri_cpe
channel => 1-15,17-31
context = default
group = 63
; Span 2: TE2/0/2 "T2XXP (PCI) Card 0 Span 2"
group=3
context=from-pstn
switchtype = euroisdn
signalling = pri_cpe
channel => 32-46,48-62
context = default
group = 63
cat /etc/dahdi/system.conf
# Autogenerated by /usr/sbin/dahdi_genconf on Wed Aug 15 09:30:40 2012
# If you edit this file and execute /usr/sbin/dahdi_genconf again,
# your manual changes will be LOST.
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Span 1: TE2/0/1 "T2XXP (PCI) Card 0 Span 1" (MASTER)
span=1,1,0,ccs,hdb3
echocanceller=oslec,1-15,17-31
# termtype: te
bchan=1-15,17-31
dchan=16
# Span 2: TE2/0/2 "T2XXP (PCI) Card 0 Span 2"
span=2,2,0,ccs,hdb3
echocanceller=oslec,32-46,48-62
# termtype: te
bchan=32-46,48-62
dchan=47
# Global data
loadzone = us
defaultzone = us
(сервер 2, подключен span3)
pbx*CLI> pri show spans
PRI span 2/0: Up, Active
PRI span 3/0: Up, Active
cat /etc/asterisk/dahdi-channels.conf
; Autogenerated by /usr/sbin/dahdi_genconf on Thu Jul 26 17:10:54 2012
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;
.....................
; Span 2: TE2/0/1 "T2XXP (PCI) Card 0 Span 1"
group=2
context=from-pstn
switchtype = euroisdn
signalling = pri_cpe
channel => 13-27,29-43
context = default
group = 63
; Span 3: TE2/0/2 "T2XXP (PCI) Card 0 Span 2"
group=3
context=from-pstn
switchtype = euroisdn
signalling = pri_cpe
channel => 44-58,60-74
context = default
group = 63
cat /etc/dahdi/system.conf
# Autogenerated by /usr/sbin/dahdi_genconf on Thu Jul 26 17:10:54 2012
# If you edit this file and execute /usr/sbin/dahdi_genconf again,
# your manual changes will be LOST.
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Span 2: TE2/0/1 "T2XXP (PCI) Card 0 Span 1"
span=2,1,0,ccs,hdb3
echocanceller=oslec,13-27,29-43
# termtype: te
bchan=13-27,29-43
dchan=28
# Span 3: TE2/0/2 "T2XXP (PCI) Card 0 Span 2"
span=3,2,0,ccs,hdb3
echocanceller=oslec,44-58,60-74
# termtype: te
bchan=44-58,60-74
dchan=59
# Global data
loadzone = us
defaultzone = us
1 Сервер
cat /etc/asterisk/chan_dahdi.conf
[trunkgroups]
[channels]
context=from-pstn
signalling=fxs_ks
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
;Uncomment these lines if you have problems with the disconection of your analog lines
busydetect=yes
busycount=1
immediate=no
#include dahdi-channels.conf
#include chan_dahdi_additional.conf
2 сервер
cat /etc/asterisk/chan_dahdi.conf
; Auto-generated by /usr/sbin/hardware_detector
[trunkgroups]
[channels]
context=from-pstn
signalling=fxs_ks
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
relaxdtmf=yes
;Uncomment these lines if you have problems with the disconection of your analog lines
busydetect=yes
busycount=1
immediate=no
#include dahdi-channels.conf
#include chan_dahdi_additional.conf
Connected to Asterisk 1.8.11.0 currently running on pbx (pid = 5933)
Verbosity is at least 6
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
-- Executing [4001@from-internal:1] Macro("SIP/9012-00000079", "user-callerid,SKIPTTL,") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/9012-00000079", "AMPUSER=9012") in new stack
-- Executing [s@macro-user-callerid:2] GotoIf("SIP/9012-00000079", "0?report") in new stack
-- Executing [s@macro-user-callerid:3] ExecIf("SIP/9012-00000079", "1?Set(REALCALLERIDNUM=9012)") in new stack
-- Executing [s@macro-user-callerid:4] Set("SIP/9012-00000079", "AMPUSER=9012") in new stack
-- Executing [s@macro-user-callerid:5] Set("SIP/9012-00000079", "AMPUSERCIDNAME=Trokhina E V") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("SIP/9012-00000079", "0?report") in new stack
-- Executing [s@macro-user-callerid:7] Set("SIP/9012-00000079", "AMPUSERCID=9012") in new stack
-- Executing [s@macro-user-callerid:8] Set("SIP/9012-00000079", "CALLERID(all)="Trokhina E V" <9012>") in new stack
-- Executing [s@macro-user-callerid:9] ExecIf("SIP/9012-00000079", "0?Set(CHANNEL(language)=)") in new stack
-- Executing [s@macro-user-callerid:10] GotoIf("SIP/9012-00000079", "1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s@macro-user-callerid:19] Set("SIP/9012-00000079", "CALLERID(number)=9012") in new stack
-- Executing [s@macro-user-callerid:20] Set("SIP/9012-00000079", "CALLERID(name)=Trokhina E V") in new stack
-- Executing [s@macro-user-callerid:21] NoOp("SIP/9012-00000079", "Using CallerID "Trokhina E V" <9012>") in new stack
-- Executing [4001@from-internal:2] NoOp("SIP/9012-00000079", "Calling Out Route: to_dss") in new stack
-- Executing [4001@from-internal:3] Set("SIP/9012-00000079", "MOHCLASS=default") in new stack
-- Executing [4001@from-internal:4] Set("SIP/9012-00000079", "_NODEST=") in new stack
-- Executing [4001@from-internal:5] Macro("SIP/9012-00000079", "record-enable,9012,OUT,") in new stack
-- Executing [s@macro-record-enable:1] GotoIf("SIP/9012-00000079", "1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s@macro-record-enable:4] ExecIf("SIP/9012-00000079", "0?MacroExit()") in new stack
-- Executing [s@macro-record-enable:5] GotoIf("SIP/9012-00000079", "0?Group:OUT") in new stack
-- Goto (macro-record-enable,s,15)
-- Executing [s@macro-record-enable:15] GotoIf("SIP/9012-00000079", "0?IN") in new stack
-- Executing [s@macro-record-enable:16] ExecIf("SIP/9012-00000079", "1?MacroExit()") in new stack
-- Executing [4001@from-internal:6] Macro("SIP/9012-00000079", "dialout-trunk,3,4001,") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/9012-00000079", "DIAL_TRUNK=3") in new stack
-- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/9012-00000079", "0?sub-pincheck,s,1") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/9012-00000079", "0?disabletrunk,1") in new stack
-- Executing [s@macro-dialout-trunk:4] Set("SIP/9012-00000079", "DIAL_NUMBER=4001") in new stack
-- Executing [s@macro-dialout-trunk:5] Set("SIP/9012-00000079", "DIAL_TRUNK_OPTIONS=tr") in new stack
-- Executing [s@macro-dialout-trunk:6] Set("SIP/9012-00000079", "OUTBOUND_GROUP=OUT_3") in new stack
-- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/9012-00000079", "1?nomax") in new stack
-- Goto (macro-dialout-trunk,s,9)
-- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/9012-00000079", "0?skipoutcid") in new stack
-- Executing [s@macro-dialout-trunk:10] Set("SIP/9012-00000079", "DIAL_TRUNK_OPTIONS=") in new stack
-- Executing [s@macro-dialout-trunk:11] Macro("SIP/9012-00000079", "outbound-callerid,3") in new stack
-- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/9012-00000079", "0?Set(CALLERPRES()=)") in new stack
-- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/9012-00000079", "0?Set(REALCALLERIDNUM=9012)") in new stack
-- Executing [s@macro-outbound-callerid:3] GotoIf("SIP/9012-00000079", "1?normcid") in new stack
-- Goto (macro-outbound-callerid,s,6)
-- Executing [s@macro-outbound-callerid:6] Set("SIP/9012-00000079", "USEROUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:7] Set("SIP/9012-00000079", "EMERGENCYCID=") in new stack
-- Executing [s@macro-outbound-callerid:8] Set("SIP/9012-00000079", "TRUNKOUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:9] GotoIf("SIP/9012-00000079", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,12)
-- Executing [s@macro-outbound-callerid:12] ExecIf("SIP/9012-00000079", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:13] ExecIf("SIP/9012-00000079", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:14] ExecIf("SIP/9012-00000079", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/9012-00000079", "0?Set(CALLERPRES()=prohib_passed_screen)") in new stack
-- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/9012-00000079", "0?sub-flp-3,s,1") in new stack
-- Executing [s@macro-dialout-trunk:13] Set("SIP/9012-00000079", "OUTNUM=4001") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/9012-00000079", "custom=DAHDI/g3") in new stack
-- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/9012-00000079", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default))") in new stack
-- Executing [s@macro-dialout-trunk:16] Macro("SIP/9012-00000079", "dialout-trunk-predial-hook,") in new stack
-- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/9012-00000079", "") in new stack
-- Executing [s@macro-dialout-trunk:17] GotoIf("SIP/9012-00000079", "0?bypass,1") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/9012-00000079", "0?customtrunk") in new stack
-- Executing [s@macro-dialout-trunk:19] Dial("SIP/9012-00000079", "DAHDI/g3/4001,300,") in new stack
-- Requested transfer capability: 0x00 - SPEECH
-- Called DAHDI/g3/4001
-- Span 2: Channel 0/1 got hangup, cause 27
-- DAHDI/i2/4001-f is circuit-busy
-- Hungup 'DAHDI/i2/4001-f'
== Everyone is busy/congested at this time (1:0/1/0)
-- Executing [s@macro-dialout-trunk:20] NoOp("SIP/9012-00000079", "Dial failed for some reason with DIALSTATUS = CONGESTION and HANGUPCAUSE = 27") in new stack
-- Executing [s@macro-dialout-trunk:21] Goto("SIP/9012-00000079", "s-CONGESTION,1") in new stack
-- Goto (macro-dialout-trunk,s-CONGESTION,1)
-- Executing [s-CONGESTION@macro-dialout-trunk:1] Set("SIP/9012-00000079", "RC=27") in new stack
-- Executing [s-CONGESTION@macro-dialout-trunk:2] Goto("SIP/9012-00000079", "27,1") in new stack
-- Goto (macro-dialout-trunk,27,1)
-- Executing [27@macro-dialout-trunk:1] Goto("SIP/9012-00000079", "continue,1") in new stack
-- Goto (macro-dialout-trunk,continue,1)
-- Executing [continue@macro-dialout-trunk:1] GotoIf("SIP/9012-00000079", "1?noreport") in new stack
-- Goto (macro-dialout-trunk,continue,3)
-- Executing [continue@macro-dialout-trunk:3] NoOp("SIP/9012-00000079", "TRUNK Dial failed due to CONGESTION HANGUPCAUSE: 27 - failing through to other trunks") in new stack
-- Executing [continue@macro-dialout-trunk:4] Set("SIP/9012-00000079", "CALLERID(number)=9012") in new stack
-- Executing [4001@from-internal:7] Macro("SIP/9012-00000079", "outisbusy,") in new stack
-- Executing [s@macro-outisbusy:1] Progress("SIP/9012-00000079", "") in new stack
-- Executing [s@macro-outisbusy:2] GotoIf("SIP/9012-00000079", "0?emergency,1") in new stack
-- Executing [s@macro-outisbusy:3] GotoIf("SIP/9012-00000079", "0?intracompany,1") in new stack
-- Executing [s@macro-outisbusy:4] Playback("SIP/9012-00000079", "all-circuits-busy-now&pls-try-call-later, noanswer") in new stack
-- <SIP/9012-00000079> Playing 'all-circuits-busy-now.gsm' (language 'ru')
== Spawn extension (macro-outisbusy, s, 4) exited non-zero on 'SIP/9012-00000079' in macro 'outisbusy'
== Spawn extension (from-internal, 4001, 7) exited non-zero on 'SIP/9012-00000079'
-- Executing [h@from-internal:1] Macro("SIP/9012-00000079", "hangupcall") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/9012-00000079", "1?endmixmoncheck") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s@macro-hangupcall:9] NoOp("SIP/9012-00000079", "End of MIXMON check") in new stack
-- Executing [s@macro-hangupcall:10] GotoIf("SIP/9012-00000079", "1?nomeetmemon") in new stack
-- Goto (macro-hangupcall,s,15)
-- Executing [s@macro-hangupcall:15] NoOp("SIP/9012-00000079", "MEETME_RECORDINGFILE=") in new stack
-- Executing [s@macro-hangupcall:16] GotoIf("SIP/9012-00000079", "1?noautomon") in new stack
-- Goto (macro-hangupcall,s,18)
-- Executing [s@macro-hangupcall:18] NoOp("SIP/9012-00000079", "TOUCH_MONITOR_OUTPUT=") in new stack
-- Executing [s@macro-hangupcall:19] GotoIf("SIP/9012-00000079", "1?noautomon2") in new stack
-- Goto (macro-hangupcall,s,25)
-- Executing [s@macro-hangupcall:25] NoOp("SIP/9012-00000079", "MONITOR_FILENAME=") in new stack
-- Executing [s@macro-hangupcall:26] GotoIf("SIP/9012-00000079", "1?skiprg") in new stack
-- Goto (macro-hangupcall,s,29)
-- Executing [s@macro-hangupcall:29] GotoIf("SIP/9012-00000079", "1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,32)
-- Executing [s@macro-hangupcall:32] GotoIf("SIP/9012-00000079", "1?theend") in new stack
-- Goto (macro-hangupcall,s,34)
-- Executing [s@macro-hangupcall:34] Hangup("SIP/9012-00000079", "") in new stack
== Spawn extension (macro-hangupcall, s, 34) exited non-zero on 'SIP/9012-00000079' in macro 'hangupcall'
== Spawn extension (from-internal, h, 1) exited non-zero on 'SIP/9012-00000079'
На обоих серверах стоит
signalling = pri_cpe
На одном всёж нужно поставить
signalling = pri_net
И будет счастье =))))))
На мой взгляд очевидно не настроен chan_dahdi.conf сделай так:
[trunkgroups]
[channels]
language=ru
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
group=1
;;;[E1]
context=from-trunk
switchtype=euroisdn
prilocaldialplan=local
pridialplan=national
signalling=pri_cpe
;faxdetect=incoming
channel =>1-15,17-31,32-46,48-62
Соответственно нужно понимать в какой контекст у тебя должен уходить звонок.
скорее всего вы не скомпилировали pri в dahdi либо неправильно настроили.
вообще можно на тот же провод е1 поставить два модема shdsl и по линку даже больше каналов пройдет. смысл соединять по е1?
может из-за безопасности? у нас есть клиенты, которые сознательно соединяют по PRI, для того чтобы не было связи по IP. Паранойа понятно, но есть такое =))
Zavr2008 ( 2012-08-17 17:05:47 +0400 )редактироватькак бэ в эластике дахди уже стоит. Неверная настройка. Пусть топикстартер покажет настройки на обоих ящиках
switch ( 2012-08-17 19:20:45 +0400 )редактироватьв этой связи возникает несколько вопросов - е1 прямым проводом между астерами, или через некого провайдера ?
если через провайдера, то нужно смотреть маски по которым провайдер дает звонить.. например ограничение что с 100 по 400 номер пробиваются наружу, остальные болт ! (или отключить определитель номера в потоке)
проводом между астерисками, перекрестный (горят зеленые лампочки ^_^)
Да, на втором сервере span2 соединен с провайдером и получает городской номер, и с ним никаких проблем нет.
zavulon ( 2012-08-22 16:03:55 +0400 )редактироватьа какой из астеров у вас главный ? просто в е1 на сколько я понимаю 1 сторона вроде как должна быть главной, а другая из серии user - просто я недавно шлюз с е1 потоками ковырял - там как раз в настройках от вышестоящего астера я выставлял в настройках порта q.931user а в передающем порту на другую атс q931network
romirin ( 2012-08-23 08:02:34 +0400 )редактироватьЗадан: 2012-08-17 14:21:55 +0400
Просмотрен: 1,157 раз
Обновлен: Aug 23 '12
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
pri show spans
zzuz ( 2012-08-17 14:44:46 +0400 )редактироватькак всегда - конфиги и логи в студию..
Zavr2008 ( 2012-08-17 14:46:18 +0400 )редактироватьи pri intense debug span 1. стоит показать SETUP звонки и DISCONNECT.
Zavr2008 ( 2012-08-17 14:47:04 +0400 )редактироватьЧего там показывать если у автора логика не поднята?
zzuz ( 2012-08-17 14:55:09 +0400 )редактироватьА кто chan_dahdi.conf будет рисовать?
zzuz ( 2012-08-22 16:22:38 +0400 )редактироватьДобавил конфиги
zavulon ( 2012-08-22 16:55:13 +0400 )редактироватьи как звоните на E1 ?
zzuz ( 2012-08-22 16:59:55 +0400 )редактироватьвсмысле как звоню? Вам маршрутизация нужна, или лог? У меня эластикс, маршруты могу скринами предоставить. Лог звонка тоже выложу.
zavulon ( 2012-08-22 21:42:14 +0400 )редактироватьлог звонка. Вообще по мне очень странно описаны каналы, на E1 не похоже. Вы джампер на плате переключили с T1 на E1 ?
zzuz ( 2012-08-23 01:06:48 +0400 )редактироватьОбе платы с каждого из серверов тестились на существующем канале Е1 от провайдера, все работает. (сервер 2, span2 как раз на потоке Е1 от прова принимает линию) Добавил лог звонка!
zavulon ( 2012-08-23 10:36:58 +0400 )редактироватьDAHDI/g3/ - где у Вас в конфиге определены группы?
zzuz ( 2012-08-23 11:14:35 +0400 )редактироватьВсе заработало!!!
zavulon ( 2012-08-23 11:18:59 +0400 )редактироватьнеужели всегда так нужно вытягивать информацию.
zzuz ( 2012-08-23 12:09:51 +0400 )редактировать