Ankommende Anrufe

realgoth

Neuer User
Mitglied seit
24 Mai 2004
Beiträge
35
Punkte für Reaktionen
0
Punkte
0
Hi!

Ich möchte einen Anruf von extern auf der MSN 1234 (Zap/g1) zuerst auf dem Sipphone (SIP/5001) klingeln lassen (z.B. 10 Sek.). DANACH soll ZUSÄTZLICH das interne ISDN-Telefon (auch MSN 1234, aber ZAP/g2) klingeln (10 Sek.).

Sollte das Sipphone (SIP/5001) nicht online sein, soll nur das interne ISDN-Telefon (Zap/g2) klingeln (20 Sek).

Auf der 2. Leitung (MSN=2345, Zap/g1) sollen ISDN (MSN=2345, Zap/g2)und Sipphone (SIP/6001) für 20 Sek. klingeln. Ist das Sipphone aus, klingelt halt nur das interne ISDN.

Danach soll in allen Fällen die jeweilige Mailbox rangehen.

Am liebsten wäre es mir, wenn man das ausserdem alles in EIN Makro bekäme, das man z.B. aus dem Kontext eingehender Anrufe mit

exten => ${GOTH-MSN},1,Macro(inbound,GOTH,1) ; MUTE ISDN first 10 sec.

exten => ${LADY-MSN},1,Macro(inbound,LADY,0); Ring ISDN too

aufruft...

Im Makro kann man dann ja mit "${ARG1}-NAME", etc. weitere für den User definierten Variablen verwenden, oder bin ich da ganz schief gewickelt?

Hintergrund: Wenn ich nicht zu Hause bin, aber per Sipphone auf dem Asterisk eingeloggt, soll meine LADY nicht gleich durch das klingelnde Telefon gestört werden.

Goth
 
Klingeln 10 Sekunden auf Sip Telefon, falls Sip nicht angemeldet spring gleiche weiter ....

exten => 1/1234,1,Dial(SIp/5001,10)

Und dann Sip und Zap, falls Sip nicht da klingelt nur Zap ;-)

exten => 2/1234,2,Dial(Sip/5000&Zap/g2),20)

Raffi
 
Dann klingelt das insgesamt aber 30 Sek., wenn das SIP online ist. Soll aber nur 20.
 
Ach soo, Überlesen ;-)

exten => 1/1234,1,Dial(SIp/5001,10)
exten => 1/1234,2,Dial(Sip/5000&Zap/g2),10)
exten => 1/1234,202,Dial(Zap/g2),20)

Geht aber nur mit installiertem bristuff (priority +201 if Channel unavailable)

Raffi
 
So: Ich habe nun ein Makro geschrieben, was das Ganze m.E. schön macht und auch ohne bri-stuff funktioniert:

Code:
[globals]

INTERN=Zap/g2
EXTERN=Zap/g1

USER1-SIP=SIP/1111
USER1-MSN=1111111 ; extern wie auch intern
USER1-MB=11

USER2-SIP=SIP/2222
USER2-MSN=2222222 ; extern wie auch intern!
USER2-MB=12

[macro-inbound]

;   ${ARG1} - NAME
;   ${ARG2} - 1= ohne ISDN, 0= mit ISDN in den ersten 10 Sec.

exten => s,1,ChanIsAvail(${${ARG1}-SIP})
exten => s,2,GotoIf(${ARG2}=0?20:30)
exten => s,20,Dial(${${ARG1}-SIP}&${INTERN}/${${ARG1}-MSN},20,tr) ; mit ISDN / 20 Sec
exten => s,21,Goto(s-${DIALSTATUS},1)

exten => s,30,Dial(${${ARG1}-SIP},10,tr)                          ; ohne ISDN / 10 Sec
exten => s,31,Dial(${${ARG1}-SIP}&${INTERN}/${${ARG1}-MSN},10,tr) ; mit ISDN / 10 Sec
exten => s,32,Goto(s-${DIALSTATUS},1)

exten => s,102,Dial(${INTERN}/${${ARG1}-MSN},20,tr)               ; kein SIP? ISDN only!
exten => s,103,Goto(s-${DIALSTATUS},1)

exten => s-NOANSWER,1,Voicemail(u${${ARG1}-MB})                 ; If unavailable, send to voicemail w/ unavail announce
exten => s-CHANUNAVAIL,1,Voicemail(u${${ARG1}-MB})              ; If unavailable, send to voicemail w/ unavail announce
exten => s-BUSY,1,Voicemail(b${${ARG1}-MB})                     ; If busy, send to voicemail w/ busy announce
exten => s-.,1,Goto(s-NOANSWER,1)                               ; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1})                             ; If they press *, send the user into VoicemailMain

[default]

exten => ${USER1-MSN},1,Macro(inbound,USER1,0) ; Achtung: Im Argument: "USERX" nicht "${USERX}" !!!
exten => ${USER2-MSN},1,Macro(inbound,USER2,0)


Anmerkung: Am internen S0-Bus hängen die Telefone von USER1 und USER2 direkt dran. Sie haben die SELBEN MSN eingestellt, wie die Telekom-MSN sind. Somit kann man -wenn der Rechner mal platt gehen sollte- einfach umstecken und alles läuft sofort wieder!

Viel Spass damit!
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.