Hallo,
hier geht es um die Frage, wie man von Asterisk aus innerhalb der TK-Anlage Vermitteln (Makeln) kann. Also einen Anruf von der TK-Anlage kommend auch wieder innerhalb der TK-Anlage verbinden kann. So wird die ISDN-Karte im Asterisk wieder frei.
Das gleicher Thema habe ich schon mal eingestellt, nur mit dem Unterschied, das es dabei um eine HFC-Karte (Cologne-Chipsatz) geht. Siehe hier: http://ting.ip-phone-forum.de/showthread.php?t=130976
Dies scheint sehr schwierig zu sein, daher habe ich es mal (erfolgreicher) mit der Capi probiert. Um das ganze zu vereinfachen habe ich ein spez. Telefon angelegt, welches nur den Anruf entgegen nimmt, einen kurzen Text spielt und anschließend die Teilnehmer miteinander verbindet. Der Anruf erfolgt auf MSN 31 und wird dann zum Teilnehmer der TK-Anlage 21 verbunden.
Hier der Teilnehmer:
exten => 31,1,Set(LANGUAGE()=de)
exten => 31/33,2,Set(CALLERID(name)=App 33)
exten => 31/34,2,Set(CALLERID(name)=App 34)
exten => 31/33,3,Set(CALLERID(number)=33)
exten => 31/34,3,Set(CALLERID(number)=34)
exten => 31,2,NoOp()
exten => 31,3,NoOp()
exten => 31,4,Set(LANGUAGE()=de)
exten => 31,5,Answer() ; Anruf annehmen
exten => 31,6,Background(demo-thanks) ; Text abspielen
exten => 31,7,capicommand(hold) ; Teilnehmer halten
exten => 31,8,Dial(CAPI/contr1/21,10,M(capiect)) ; Anwahl Tln 21 und verbinden ect
exten => 31,9,Hangup()
[macro-capiect]
exten => s,1,capicommand(ect) ; Macro um die Verbindung durchzuführen
Hier die Ausgabe im CLI
Connected to Asterisk 1.2.9.1-BRIstuffed-0.3.0-PRE-1r currently running on kserv
Verbosity was 0 and is now 5
== ISDN1: Incoming call '25' -> '31'
-- Executing Set("CAPI/ISDN1/31-0", "LANGUAGE()=de") in new stack
-- Executing NoOp("CAPI/ISDN1/31-0", "") in new stack
-- Executing NoOp("CAPI/ISDN1/31-0", "") in new stack
-- Executing Set("CAPI/ISDN1/31-0", "LANGUAGE()=de") in new stack
-- Executing Answer("CAPI/ISDN1/31-0", "4") in new stack
== ISDN1: Answering for 31
-- Executing BackGround("CAPI/ISDN1/31-0", "demo-thanks") in new stack
-- Playing 'demo-thanks' (language 'de')
-- Executing capiCommand("CAPI/ISDN1/31-0", "hold") in new stack
-- Executing Dial("CAPI/ISDN1/31-0", "CAPI/contr1/21|10|M(capiect)") in new stack
-- Called contr1/21
-- CAPI/ISDN1/21-1 is proceeding passing it to CAPI/ISDN1/31-0
-- CAPI/ISDN1/21-1 is ringing
-- CAPI/ISDN1/21-1 answered CAPI/ISDN1/31-0
-- Executing capiCommand("CAPI/ISDN1/21-1", "ect") in new stack
-- Attempting native bridge of CAPI/ISDN1/31-0 and CAPI/ISDN1/21-1
> CAPI INFO 0x3490: Normal call clearing
-- Attempting native bridge of CAPI/ISDN1/31-0 and CAPI/ISDN1/21-1
== ISDN1: CAPI Hangingup
== Spawn extension (incoming, 31, 8 ) exited non-zero on 'CAPI/ISDN1/31-0'
-- Executing Hangup("CAPI/ISDN1/31-0", "") in new stack
== Spawn extension (incoming, h, 1) exited non-zero on 'CAPI/ISDN1/31-0'
== ISDN1: CAPI Hangingup
kserv*CLI>
Grundsächlich hat alles funktioniert und die Verbindung kam innerhalb der TK-Anlage zustand (schwarzer Teil). Nur hängt jetzt irgendwie die Capi im Asterisk. Auch wenn die Ausgabe (dkl. rot) gut aussieht, ist kein weiterer Anruf mehr möglich. Erst nach dem zurücksetzen des Asterisk geht es wieder. Die Capi auf dem Server (Faxannahme mit Hylafax) funktioniert aber weiterhin. Jemand eine Idee wie man die Capi wieder frei kriegt?
MfG
Peter
hier geht es um die Frage, wie man von Asterisk aus innerhalb der TK-Anlage Vermitteln (Makeln) kann. Also einen Anruf von der TK-Anlage kommend auch wieder innerhalb der TK-Anlage verbinden kann. So wird die ISDN-Karte im Asterisk wieder frei.
Das gleicher Thema habe ich schon mal eingestellt, nur mit dem Unterschied, das es dabei um eine HFC-Karte (Cologne-Chipsatz) geht. Siehe hier: http://ting.ip-phone-forum.de/showthread.php?t=130976
Dies scheint sehr schwierig zu sein, daher habe ich es mal (erfolgreicher) mit der Capi probiert. Um das ganze zu vereinfachen habe ich ein spez. Telefon angelegt, welches nur den Anruf entgegen nimmt, einen kurzen Text spielt und anschließend die Teilnehmer miteinander verbindet. Der Anruf erfolgt auf MSN 31 und wird dann zum Teilnehmer der TK-Anlage 21 verbunden.
Hier der Teilnehmer:
exten => 31,1,Set(LANGUAGE()=de)
exten => 31/33,2,Set(CALLERID(name)=App 33)
exten => 31/34,2,Set(CALLERID(name)=App 34)
exten => 31/33,3,Set(CALLERID(number)=33)
exten => 31/34,3,Set(CALLERID(number)=34)
exten => 31,2,NoOp()
exten => 31,3,NoOp()
exten => 31,4,Set(LANGUAGE()=de)
exten => 31,5,Answer() ; Anruf annehmen
exten => 31,6,Background(demo-thanks) ; Text abspielen
exten => 31,7,capicommand(hold) ; Teilnehmer halten
exten => 31,8,Dial(CAPI/contr1/21,10,M(capiect)) ; Anwahl Tln 21 und verbinden ect
exten => 31,9,Hangup()
[macro-capiect]
exten => s,1,capicommand(ect) ; Macro um die Verbindung durchzuführen
Hier die Ausgabe im CLI
Connected to Asterisk 1.2.9.1-BRIstuffed-0.3.0-PRE-1r currently running on kserv
Verbosity was 0 and is now 5
== ISDN1: Incoming call '25' -> '31'
-- Executing Set("CAPI/ISDN1/31-0", "LANGUAGE()=de") in new stack
-- Executing NoOp("CAPI/ISDN1/31-0", "") in new stack
-- Executing NoOp("CAPI/ISDN1/31-0", "") in new stack
-- Executing Set("CAPI/ISDN1/31-0", "LANGUAGE()=de") in new stack
-- Executing Answer("CAPI/ISDN1/31-0", "4") in new stack
== ISDN1: Answering for 31
-- Executing BackGround("CAPI/ISDN1/31-0", "demo-thanks") in new stack
-- Playing 'demo-thanks' (language 'de')
-- Executing capiCommand("CAPI/ISDN1/31-0", "hold") in new stack
-- Executing Dial("CAPI/ISDN1/31-0", "CAPI/contr1/21|10|M(capiect)") in new stack
-- Called contr1/21
-- CAPI/ISDN1/21-1 is proceeding passing it to CAPI/ISDN1/31-0
-- CAPI/ISDN1/21-1 is ringing
-- CAPI/ISDN1/21-1 answered CAPI/ISDN1/31-0
-- Executing capiCommand("CAPI/ISDN1/21-1", "ect") in new stack
-- Attempting native bridge of CAPI/ISDN1/31-0 and CAPI/ISDN1/21-1
> CAPI INFO 0x3490: Normal call clearing
-- Attempting native bridge of CAPI/ISDN1/31-0 and CAPI/ISDN1/21-1
== ISDN1: CAPI Hangingup
== Spawn extension (incoming, 31, 8 ) exited non-zero on 'CAPI/ISDN1/31-0'
-- Executing Hangup("CAPI/ISDN1/31-0", "") in new stack
== Spawn extension (incoming, h, 1) exited non-zero on 'CAPI/ISDN1/31-0'
== ISDN1: CAPI Hangingup
kserv*CLI>
Grundsächlich hat alles funktioniert und die Verbindung kam innerhalb der TK-Anlage zustand (schwarzer Teil). Nur hängt jetzt irgendwie die Capi im Asterisk. Auch wenn die Ausgabe (dkl. rot) gut aussieht, ist kein weiterer Anruf mehr möglich. Erst nach dem zurücksetzen des Asterisk geht es wieder. Die Capi auf dem Server (Faxannahme mit Hylafax) funktioniert aber weiterhin. Jemand eine Idee wie man die Capi wieder frei kriegt?
MfG
Peter
Zuletzt bearbeitet: