A
anhalter42
Guest
Hallo Leute,
habe ein Problem bei folgendem Szenario:
Das CLI sagt mir, dass in oben beschriebenen Szenario der Zap- und der SIP-Kanal zu Teilnehmer 1 zusammengeschaltet wurden und das Telefon von Teilnehmer 1 dann einen Local-Kanal zum Umleitungsziel, also Teilnehmer 2, öffnet. Dieser Local-Kanal meldet ordentlich "BUSY" zurück, aber (jetzt kommts!) dieses wird nicht in den SIP-Kanal übernommen.
Kann das jemand reproduzieren? Bzw. tritt dies auch noch mit 1.2.17 (Bristuffed 0.3.0-1y-d) auf oder muss der große Schritt zu 1.4 gemacht werden?
Danke!
EDIT: habe auf Bitte von magic911 noch die entspechenden Abschnitte der extensions.conf hineingetan:
Der Vollständigkeit halber hier auch noch der Mitschnitt des CLI. Teilnehmer 25 hat auf 24 umgeleitet. 24 war besetzt, der externe Anrufer hatte aber kein Besetzt-Zeichen.
habe ein Problem bei folgendem Szenario:
- bei unserem * (1.2.14. Bristuffed 0.3.0-1x) leitet Teilnehmer (Snom-Telefon) alle Anrufe auf Teilnehmer 2 um.
- Teilnehmer zwei ist im Gespräch.
- Teilnehmer 1 wird von außen angerufen.
Das CLI sagt mir, dass in oben beschriebenen Szenario der Zap- und der SIP-Kanal zu Teilnehmer 1 zusammengeschaltet wurden und das Telefon von Teilnehmer 1 dann einen Local-Kanal zum Umleitungsziel, also Teilnehmer 2, öffnet. Dieser Local-Kanal meldet ordentlich "BUSY" zurück, aber (jetzt kommts!) dieses wird nicht in den SIP-Kanal übernommen.
Kann das jemand reproduzieren? Bzw. tritt dies auch noch mit 1.2.17 (Bristuffed 0.3.0-1y-d) auf oder muss der große Schritt zu 1.4 gemacht werden?
Danke!
EDIT: habe auf Bitte von magic911 noch die entspechenden Abschnitte der extensions.conf hineingetan:
Code:
[system-msgs]
exten => 0-NOANSWER,1,Set(LANGUAGE()=de)
exten => 0-NOANSWER,n,Playback(invalid)
exten => 0-NOANSWER,n,Hangup
exten => 0-BUSY,1,Set(LANGUAGE()=de)
exten => 0-BUSY,2,Answer
exten => 0-BUSY,3,Busy
exten => 0-BUSY,4,Hangup
exten => 0-CONGESTION,1,Goto(0-NOANSWER,1)
exten => _s.,1,Goto(0-NOANSWER,1)
[macro-stdexten];
;
; Standard extension macro:
; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
; ${ARG2} - Device(s) to ring
;
exten => s,1,NoOp(${ALERT_INFO})
exten => s,2,Dial(${ARG2},${RINGTIME},M(record^${ARG1})) ; Ring the interface, 20 seconds maximum
exten => s,3,Goto(s-${DIALSTATUS},1) ; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
exten => s-NOANSWER,1,NoOP,"Durchwahl: ",${INTERNAL}
exten => s-NOANSWER,2,GotoIf($["${INTERNAL}" = "yes"]?5) ; fuer interne Anrufe gibt es keine Mailbox
exten => s-NOANSWER,3,Macro(record,${ARG3}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,4,Voicemail(u${ARG3}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,5,Goto(h,1) ; If they press #, return to start
exten => s-BUSY,1,NoOP,"Durchwahl: ",${INTERNAL}
exten => s-BUSY,2,Goto(5)
;exten => s-BUSY,2,GotoIf($["${INTERNAL}" = "yes"]?5) ; fuer interne Anrufe gibt es keine Mailbox
exten => s-BUSY,3,Macro(record,${ARG3}) ; If unavailable, send to voicemail w/ unavail announce
exten => s-BUSY,4,Voicemail(b${ARG3}) ; If busy, send to voicemail w/ busy announce
exten => s-BUSY,5,Answer
exten => s-BUSY,6,Set(LANGUAGE()=de)
exten => s-BUSY,7,Busy
exten => s-BUSY,8,Hangup(${HANGUPCAUSE})
exten => _s-.,1,Goto(h,1) ; Treat anything else as no answer
exten => s-CHANUNAVAIL,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer
exten => s-CONGESTION,1,Goto(s-NOANSWER,1) ; Treat anything else as no answer
exten => a,1,VoicemailMain(${ARG3}) ; If they press *, send the user into VoicemailMain
;gegebnenfalls eine eMail verschicken
exten => h,1,GotoIf($["${VMSTATUS}" != "FAILED"]?3)
exten => h,2,DeadAGI(sendmail.agi)
exten => h,3,GotoIf($["${DIALSTATUS}" != "BUSY"]?5)
exten => h,4,DeadAGI(sendmail.agi)
exten => h,5,NoOp(${VMSTATUS}|${DIALSTATUS})
exten => h,6,HangUp
Der Vollständigkeit halber hier auch noch der Mitschnitt des CLI. Teilnehmer 25 hat auf 24 umgeleitet. 24 war besetzt, der externe Anrufer hatte aber kein Besetzt-Zeichen.
Code:
-- Accepting overlap voice call from '0160XXXXXXXX' to 'YYYYYY25' on channel 0/1, span 2
-- Starting simple switch on 'Zap/4-1'
-- Executing Set("Zap/4-1", "__ALERT_INFO=http://192.168.1.51/sounds/Durchwahl.wav") in new stack
-- Executing Set("Zap/4-1", "__VOICEMAIL=25") in new stack
-- Executing Set("Zap/4-1", "__RINGTIME=20") in new stack
-- Executing Set("Zap/4-1", "__CALLED=25") in new stack
-- Executing Set("Zap/4-1", "__INTERNAL=NO") in new stack
-- Executing Macro("Zap/4-1", "dispatch|25|25") in new stack
-- Executing Set("Zap/4-1", "LANGUAGE()=de") in new stack
-- Executing GotoIf("Zap/4-1", "0?4") in new stack
-- Executing Set("Zap/4-1", "CALLERID(number)=00160XXXXXXXX") in new stack
-- Executing Macro("Zap/4-1", "stdexten|25|SIP/25|25") in new stack
-- Executing NoOp("Zap/4-1", "http://192.168.1.51/sounds/Durchwahl.wav") in new stack
-- Executing Dial("Zap/4-1", "SIP/25|20|M(record^25)") in new stack
-- Called 25CLI>
-- Got SIP response 302 "Moved Temporarily" back from 192.168.1.130
-- Now forwarding Zap/4-1 to 'Local/24@from-intern' (thanks to SIP/25-081c9430)
-- Executing Set("Local/24@from-intern-f3f5,2", "__ORIG_CALLED=25") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "__CALLED=24") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "__INTERNAL=yes") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "__VOICEMAIL=24") in new stack
-- Executing GotoIf("Local/24@from-intern-f3f5,2", "1?101") in new stack
-- Goto (from-intern,24,101)
-- Executing Set("Local/24@from-intern-f3f5,2", "__ALERT_INFO=http://192.168.1.51/sounds/Durchwahl.wav") in new stack
-- Executing AGI("Local/24@from-intern-f3f5,2", "sendmail.agi|25|Verpasster Anruf|Der Anrufer mit der Rufnummer XXXXX wurde an die Rufnummer 24 weitergeleitet.|0160XXXXXXXX") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/sendmail.agi
-- AGI Script sendmail.agi completed, returning 0
-- Executing Set("Local/24@from-intern-f3f5,2", "CALLERID(number)=0160XXXXXXXX") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "__RINGTIME=19") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "__INTERNAL=NO") in new stack
-- Executing Macro("Local/24@from-intern-f3f5,2", "dispatch|24|24") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "LANGUAGE()=de") in new stack
-- Executing GotoIf("Local/24@from-intern-f3f5,2", "0?4") in new stack
-- Executing Set("Local/24@from-intern-f3f5,2", "CALLERID(number)=00160XXXXXXXX") in new stack
-- Executing Macro("Local/24@from-intern-f3f5,2", "stdexten|24|SIP/24|24") in new stack
-- Executing NoOp("Local/24@from-intern-f3f5,2", "http://192.168.1.51/sounds/Durchwahl.wav") in new stack
-- Executing Dial("Local/24@from-intern-f3f5,2", "SIP/24|19|M(record^24)") in new stack
-- Called 24CLI>
-- Got SIP response 486 "Busy Here" back from 192.168.1.143
-- SIP/24-081d4990 is busy
== Everyone is busy/congested at this time (1:1/0/0)
-- Executing Goto("Local/24@from-intern-f3f5,2", "s-BUSY|1") in new stack
-- Goto (macro-stdexten,s-BUSY,1)
-- Executing NoOp("Local/24@from-intern-f3f5,2", ""Durchwahl: ",NO") in new stack
-- Executing Goto("Local/24@from-intern-f3f5,2", "5") in new stack
-- Goto (macro-stdexten,s-BUSY,5)
-- Executing Answer("Local/24@from-intern-f3f5,2", "") in new stack
-- Local/24@from-intern-f3f5,1 answered Zap/4-1
-- Executing Set("Local/24@from-intern-f3f5,2", "LANGUAGE()=de") in new stack
-- Executing Busy("Local/24@from-intern-f3f5,2", "") in new stack
-- Executing GotoIf("Local/24@from-intern-f3f5,1", "1?7") in new stack
-- Goto (macro-record,s,7)
-- Executing NoOp("Local/24@from-intern-f3f5,1", "EndRecord") in new stack
== Spawn extension (macro-stdexten, s-BUSY, 7) exited non-zero on 'Local/24@from-intern-f3f5,2' in macro 'stdexten'
== Spawn extension (macro-stdexten, s-BUSY, 7) exited non-zero on 'Local/24@from-intern-f3f5,2' in macro 'dispatch'
== Spawn extension (macro-stdexten, s-BUSY, 7) exited non-zero on 'Local/24@from-intern-f3f5,2'
-- Executing GotoIf("Local/24@from-intern-f3f5,2", "1?3") in new stack
-- Goto (macro-stdexten,h,3)
-- Executing GotoIf("Local/24@from-intern-f3f5,2", "0?5") in new stack
-- Executing DeadAGI("Local/24@from-intern-f3f5,2", "sendmail.agi") in new stack
== Spawn extension (macro-stdexten, s, 2) exited non-zero on 'Zap/4-1' in macro 'stdexten'
-- Launched AGI Script /var/lib/asterisk/agi-bin/sendmail.agi
== Spawn extension (macro-stdexten, s, 2) exited non-zero on 'Zap/4-1' in macro 'dispatch'
== Spawn extension (macro-stdexten, s, 2) exited non-zero on 'Zap/4-1'
-- Executing GotoIf("Zap/4-1", "1?3") in new stack
-- Goto (macro-stdexten,h,3)
-- Executing GotoIf("Zap/4-1", "1?5") in new stack
-- Goto (macro-stdexten,h,5)
-- Executing NoOp("Zap/4-1", "|ANSWER") in new stack
-- Executing Hangup("Zap/4-1", "") in new stack
== Spawn extension (macro-stdexten, h, 6) exited non-zero on 'Zap/4-1'
-- Hungup 'Zap/4-1'
-- AGI Script sendmail.agi completed, returning 0
-- Executing NoOp("Local/24@from-intern-f3f5,2", "|BUSY") in new stack
-- Executing Hangup("Local/24@from-intern-f3f5,2", "") in new stack
== Spawn extension (macro-stdexten, h, 6) exited non-zero on 'Local/24@from-intern-f3f5,2'
server-asterisk*CLI>
Zuletzt bearbeitet von einem Moderator: