Hallo Community, erstmal ein Lob an alle aktiven hier im Forum.
Ihr habt mir zumindest sehr geholfen bei der Einrichtung von Asterisk.
Doch nun zu meinem Problem. Dazu erstmal das Szenario:
Asterisk 1.2.14 ist hinter eine Panasonic TK-Anlage angeschlossen, an einen internen S0. In der TK-Anlage ist einprogrammiert das auf diesen S0 die Nebenstellen 670-679 zu erreichen sein sollten. (mit Absicht "sollten" da ich dem TK-Anlagenbetreiber nicht ganz traue)
So an Asterisk sind einige VoIP-Telefone angebunden die unternanderem auch über ein VPN reinkommen. Diese Telefone haben die "virtuellen" Nummer 670-679. Sprich es soll so sein, als ob es ganz normal ISDN Telefone wären.
An einen anderen Anschluss an der TK-Anlage hängen die herkömmlichen ISDN- / Analogtelefone die die anderen Nebenstellen, sprich 10-90 (ohne 60er Bereich) ausfüllen. Doch das ist nicht so interessant.
Weiterhin werden die SIP-Teilnehmer aus eine MySQL-Datenbank ausgelesen.
Was bisher funktioniert: Es ist möglich das die VoIP-Telefone untereinander telefonieren können. Es ist möglich über den S0 ins deutsche Festnetz zu telefonieren (von jedem Telefon). Es ist möglich die herkömlichen Nebenstellen von einem VoIP-Telefon zu erreichen.
Was nicht möglich ist! Von den herkömmlichen Nebenstellen kann keine VoIP-Nebenstelle angerufen werden.
Eingehende ISDN Anrufe landen zur Zeit auf einen VoIP-Telefone (das liegt an der extension.conf)
Was ich also möchte: Es soll möglich sein von den herkömmlichen Nebenstellen die VoIP-Nebenstellen zu erreichen. Desweiteren möchte ich externe Anrufe, anhand der gewählten Nebenstelle an das zuständige VoIP-Telefon weiterleiten. Beispiel: 02XX/61XXXX-671 soll dann zum SIP 671 geleitet werden.
Weiterhin stehen mir zwei weitere S0 zur Verfügung die dann später mit eingebunden werden sollten (das sehe ich aber nicht als Problem)
Dazu nun einige Informationen:
Es sind alle notwendigen Module geladen und bekomme auch keine Fehlermeldungen.
capiinfo
capi show channels
Capi.info
extensions.conf
Nun noch einige Informationen aus der Asterisk-Konsole.
Ausgehender ISDN-Anruf ins Festnetz/mobil. Funktioniert.
Eingehender ISDN-Anruf aus dem Festnetz/mobil. OK das SIP-Telefon war gerade ausgeschaltet. Macht aber nix, im Prinzip funktioniert es.
Anruf vom SIP-Telefon zu einer Nebenstellen. Funktioniet auch.
Anruf einer Nebenstelle zum SIP-Telefon (mit Capi debug). Funktioinert nicht!
So ich hoffe ich habe alle notwendigen Informationen aufgelistet. Ich hoffe die Community kann mir weiterhelfen.
Nochmal kurz zusammengefasst was ich gerne hätte.
Es soll möglich sein von herkömmlichen Nebenstellen die SIP-Telefone zu erreichen und externe Anrufe sollen anhand der gewählten Nebenstelle zu dem richtigen SIP-Telefon weitergeleitet werden.
Hoffe mir kann jemand helfen. Oder ist da nicht zu helfen?
Ihr habt mir zumindest sehr geholfen bei der Einrichtung von Asterisk.
Doch nun zu meinem Problem. Dazu erstmal das Szenario:
Asterisk 1.2.14 ist hinter eine Panasonic TK-Anlage angeschlossen, an einen internen S0. In der TK-Anlage ist einprogrammiert das auf diesen S0 die Nebenstellen 670-679 zu erreichen sein sollten. (mit Absicht "sollten" da ich dem TK-Anlagenbetreiber nicht ganz traue)
So an Asterisk sind einige VoIP-Telefone angebunden die unternanderem auch über ein VPN reinkommen. Diese Telefone haben die "virtuellen" Nummer 670-679. Sprich es soll so sein, als ob es ganz normal ISDN Telefone wären.
An einen anderen Anschluss an der TK-Anlage hängen die herkömmlichen ISDN- / Analogtelefone die die anderen Nebenstellen, sprich 10-90 (ohne 60er Bereich) ausfüllen. Doch das ist nicht so interessant.
Weiterhin werden die SIP-Teilnehmer aus eine MySQL-Datenbank ausgelesen.
Was bisher funktioniert: Es ist möglich das die VoIP-Telefone untereinander telefonieren können. Es ist möglich über den S0 ins deutsche Festnetz zu telefonieren (von jedem Telefon). Es ist möglich die herkömlichen Nebenstellen von einem VoIP-Telefon zu erreichen.
Was nicht möglich ist! Von den herkömmlichen Nebenstellen kann keine VoIP-Nebenstelle angerufen werden.
Eingehende ISDN Anrufe landen zur Zeit auf einen VoIP-Telefone (das liegt an der extension.conf)
Was ich also möchte: Es soll möglich sein von den herkömmlichen Nebenstellen die VoIP-Nebenstellen zu erreichen. Desweiteren möchte ich externe Anrufe, anhand der gewählten Nebenstelle an das zuständige VoIP-Telefon weiterleiten. Beispiel: 02XX/61XXXX-671 soll dann zum SIP 671 geleitet werden.
Weiterhin stehen mir zwei weitere S0 zur Verfügung die dann später mit eingebunden werden sollten (das sehe ich aber nicht als Problem)
Dazu nun einige Informationen:
Es sind alle notwendigen Module geladen und bekomme auch keine Fehlermeldungen.
capiinfo
Controller 1:
Manufacturer: AVM GmbH
CAPI Version: 2.0
Manufacturer Version: 3.11-07 (49.23)
Serial Number: 1000001
BChannels: 2
Global Options: 0x00000039
internal controller supported
DTMF supported
Supplementary Services supported
channel allocation supported (leased lines)
B1 protocols support: 0x4000011f
64 kbit/s with HDLC framing
64 kbit/s bit-transparent operation
V.110 asynconous operation with start/stop byte framing
V.110 synconous operation with HDLC framing
T.30 modem for fax group 3
Modem asyncronous operation with start/stop byte framing
B2 protocols support: 0x00000b1b
ISO 7776 (X.75 SLP)
Transparent
LAPD with Q.921 for D channel X.25 (SAPI 16)
T.30 for fax group 3
ISO 7776 (X.75 SLP) with V.42bis compression
V.120 asyncronous mode
V.120 bit-transparent mode
B3 protocols support: 0x800000bf
Transparent
T.90NL, T.70NL, T.90
ISO 8208 (X.25 DTE-DTE)
X.25 DCE
T.30 for fax group 3
T.30 for fax group 3 with extensions
Modem
0100
0200
39000000
1f010040
1b0b0000
bf000080
00000000 00000000 00000000 00000000 00000000 00000000
01000001 00020000 00000000 00000000 00000000
Supplementary services support: 0x000003ff
Hold / Retrieve
Terminal Portability
ECT
3PTY
Call Forwarding
Call Deflection
MCID
CCBS
capi show channels
Hier ist schonmal komisch das unter Number "-" steht. Aber für TK-Anlagen vllt normal.CAPI B-channel information:
Line-Name NTmode state i/o bproto isdnstate ton number
----------------------------------------------------------------
ISDN1#02 no ----- - trans 0x00 ''->''
ISDN1#01 no ----- - trans 0x00 ''->''
Capi.info
[general]
nationalprefix=0
internationalprefix=049
rxgain=0.8
txgain=0.8
language=de ;set default language
;ulaw=yes ;set this, if you live in u-law world instead of a-law
[ISDN1]
;ntmode=yes ;if isdn card operates in nt mode, set this to yes
isdnmode=MSN ;'MSN' (point-to-multipoint) or 'DID' (direct inward dial)
;when using NT-mode, 'DID' should be set in any case
incomingmsn=* ;allow incoming calls to this list of MSNs/DIDs, * = any
;defaultcid=123 ;set a default caller id to that interface for dial-out,
;this caller id will be used when dial option 'd' is set.
;controller=0 ;ISDN4BSD default
;controller=7 ;ISDN4BSD USB default
controller=1 ;capi controller number of this interface/port
group=1 ;dialout group
;prefix=0 ;set a prefix to calling number on incoming calls
softdtmf=on ;enable/disable software dtmf detection, recommended for AVM cards
relaxdtmf=on ;in addition to softdtmf, you can use relaxed dtmf detection
faxdetect=off ;enable faxdetection and redirection to EXTEN 'fax' for incoming and/or
;outgoing calls. (default='off', possible values: 'incoming','outgoing','both')
accountcode= ;PBX accountcode to use in CDRs
;amaflags=default;AMA flags for CDR ('default', 'omit', 'billing', or 'documentation')
context=capi-in ;context for incoming calls
;holdtype=hold ;when the PBX puts the call on hold, ISDN HOLD will be used. If
;set to 'local' (default value), no hold is done and the PBX may
;play MOH.
;immediate=yes ;DID: immediate start of pbx with extension 's' if no digits were
; received on incoming call (no destination number yet)
;MSN: start pbx on CONNECT_IND and don't wait for SETUP/SENDING-COMPLETE.
; info like REDIRECTINGNUMBER may be lost, but this is necessary for
; drivers/pbx/telco which does not send SETUP or SENDING-COMPLETE.
;echosquelch=1 ;_VERY_PRIMITIVE_ echo suppression
echocancel=no ;EICON DIVA SERVER (CAPI) echo cancelation (yes=g165)
;(possible values: 'no', 'yes', 'force', 'g164', 'g165')
;echocancelold=yes;use facility selector 6 instead of correct 8 (necessary for older eicon drivers)
;echotail=64 ;echo cancel tail setting (default=0 for maximum)
;echocancelnlp=1 ;activate non-linear-processing; this improves echo cancel ratio, but might
;incorporate variable gain in the signal path.
;bridge=yes ;native bridging (CAPI line interconnect) if available
callgroup=1 ;PBX call group
;pickupgroup=1 ;PBX pickup group (which call groups are we allowed to pickup)
language=de ;set language for this device (overwrites default language)
;disallow=all ;RTP codec selection (valid with Eicon DIVA Server only)
;allow=all ;RTP codec selection (valid with Eicon DIVA Server only)
devices=2 ;number of concurrent calls (b-channels) on this controller
;(2 makes sense for single BRI, 30/23 for PRI/T1)
extensions.conf
[general]
static=yes
writeprotect=no
;autofallthrough=yes
;clearglobalvars=no
;priorityjumping=no
[globals]
;CONSOLE=Console/dsp ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
;IAXINFO=guest ; IAXtel username/password
;IAXINFO=myuser:mypass
;TRUNK=Zap/g2 ; Trunk interface
;TRUNKMSD=1 ; MSD digits to strip (usually 1 or 0)
sipusers=>mysql,asterisk,sip_user
[lokal_voip]
;Erreichbarkeit der SIP-Telefone 600-699
exten => _6XX,1,Dial,SIP/${EXTEN}|55|Ttr
;dient zum erreichen der herkömlichen Nebenstellen
[lokal_isdn]
exten => _1X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _2X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _3X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _4X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _5X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _7X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _8X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => _9X,1,Dial(CAPI/ISDN1/${EXTEN},30)
exten => t,2,Hangup
;eingehende ISDN-Telefone, zurzeit werden diese an ein bestimmtes SIP-Telefon weitergeleitet
[capi-in]
exten => s,1,Answer()
exten => s,2,Dial(SIP/671,30,tT)
;exten => _X,1,Dial,Sip/30&SIP/31|30
exten => t,n,Hangup
;ausgehende ISDN-Gespräche ins Festnetz
[capi-out]
exten => _XX.,1,Dial(CAPI/ISDN1/${EXTEN},600)
exten => t,2,Hangup
[default]
include => lokal_voip
include => lokal_isdn
include => capi-in
include => capi-out
Nun noch einige Informationen aus der Asterisk-Konsole.
Ausgehender ISDN-Anruf ins Festnetz/mobil. Funktioniert.
Executing Dial("SIP/670-081b83d8", "CAPI/ISDN1/001XXXXX329|600") in new stack
-- Called ISDN1/001XXXXX29
-- CAPI/ISDN1/001XXXXX29-0 is proceeding passing it to SIP/670-081b83d8
-- CAPI/ISDN1/001XXXXX29-0 is making progress passing it to SIP/670-081b83d8
-- CAPI/ISDN1/001XXXXX29-0 is ringing
-- CAPI/ISDN1/001XXXXX29-0 answered SIP/670-081b83d8
== ISDN1#02: CAPI Hangingup for PLCI=0x101 in state 2
== Spawn extension (default, 0017621046329, 1) exited non-zero on 'SIP/670-081b83d8'
Eingehender ISDN-Anruf aus dem Festnetz/mobil. OK das SIP-Telefon war gerade ausgeschaltet. Macht aber nix, im Prinzip funktioniert es.
ISDN1#02: Incoming call '01XXXXX29' -> ''
-- Executing Answer("CAPI/ISDN1/-1", "") in new stack
== ISDN1#02: Answering for
-- Executing Dial("CAPI/ISDN1/-1", "SIP/671|30|tT") in new stack
-- Called 671
-- Got SIP response 480 "Temporarily not available" back from 172.29.20.26
-- SIP/671-081b83d8 is circuit-busy
== Everyone is busy/congested at this time (1:0/1/0)
== ISDN1#02: CAPI Hangingup for PLCI=0x101 in state 2
> ISDN1#02: CAPI INFO 0x3490: Normal call clearing
Anruf vom SIP-Telefon zu einer Nebenstellen. Funktioniet auch.
-- Executing Dial("SIP/670-081b2440", "CAPI/ISDN1/84|30") in new stack
-- Called ISDN1/84
-- CAPI/ISDN1/84-2 is proceeding passing it to SIP/670-081b2440
-- CAPI/ISDN1/84-2 is making progress passing it to SIP/670-081b2440
-- CAPI/ISDN1/84-2 is ringing
== ISDN1#02: CAPI Hangingup for PLCI=0x101 in state 5
== Spawn extension (default, 84, 1) exited non-zero on 'SIP/670-081b2440'
Anruf einer Nebenstelle zum SIP-Telefon (mit Capi debug). Funktioinert nicht!
CONNECT_IND ID=002 #0x02de LEN=0035
Controller/PLCI/NCCI = 0x101
CIPValue = 0x10
CalledPartyNumber = <80>67
CallingPartyNumber = <40 80>84
CalledPartySubaddress = default
CallingPartySubaddress = default
BC = <80 90 a3>
LLC = default
HLC = <91 81>
AdditionalInfo = default
-- CONNECT_IND (PLCI=0x101,DID=67,CID=84,CIP=0x10,CONTROLLER=0x1)
> ISDN1#02: msn='*' DNID='67' DID
== ISDN1#02: setting format alaw - 0x8 (alaw)
== ISDN1#02: Incoming call '84' -> '67'
INFO_IND ID=002 #0x02df LEN=0018
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x70
InfoElement = <80>67
INFO_RESP ID=002 #0x02df LEN=0012
Controller/PLCI/NCCI = 0x101
-- ISDN1#02: info element CALLED PARTY NUMBER
-- ISDN1#02: Updated channel name: CAPI/ISDN1/67-8
CONNECT_RESP ID=002 #0x02df LEN=0034
Controller/PLCI/NCCI = 0x101
Reject = 0x1
BProtocol
B1protocol = 0x0
B2protocol = 0x0
B3protocol = 0x0
B1configuration = default
B2configuration = default
B3configuration = default
GlobalConfiguration = default
ConnectedNumber = default
ConnectedSubaddress = default
LLC = default
AdditionalInfo
BChannelinformation = default
Keypadfacility = default
Useruserdata = default
Facilitydataarray = default
SendingComplete = default
INFO_IND ID=002 #0x02e0 LEN=0016
Controller/PLCI/NCCI = 0x101
InfoNumber = 0x18
InfoElement = <89>
INFO_RESP ID=002 #0x02e0 LEN=0012
Controller/PLCI/NCCI = 0x101
-- ISDN1#02: info element CHANNEL IDENTIFICATION 89
INFO_IND ID=002 #0x02e1 LEN=0016
Controller/PLCI/NCCI = 0x101
InfoNumber = 0xa1
InfoElement = <a1>
INFO_RESP ID=002 #0x02e1 LEN=0012
Controller/PLCI/NCCI = 0x101
-- ISDN1#02: info element Sending Complete
DISCONNECT_IND ID=002 #0x02e4 LEN=0014
Controller/PLCI/NCCI = 0x101
Reason = 0x0
DISCONNECT_RESP ID=002 #0x02e4 LEN=0012
Controller/PLCI/NCCI = 0x101
-- ISDN1#02: DISCONNECT_IND on incoming without pbx, doing hangup.
> CAPI/ISDN1/67-8: set channel task to 1
== ISDN1#02: CAPI Hangingup for PLCI=0x101 in state 4
== ISDN1#02: Interface cleanup PLCI=0x101
> CAPI devicestate requested for ISDN1/67
So ich hoffe ich habe alle notwendigen Informationen aufgelistet. Ich hoffe die Community kann mir weiterhelfen.
Nochmal kurz zusammengefasst was ich gerne hätte.
Es soll möglich sein von herkömmlichen Nebenstellen die SIP-Telefone zu erreichen und externe Anrufe sollen anhand der gewählten Nebenstelle zu dem richtigen SIP-Telefon weitergeleitet werden.
Hoffe mir kann jemand helfen. Oder ist da nicht zu helfen?