Emailbenachrichtigung bei Konferenzen

wilderebi

Mitglied
Mitglied seit
19 Sep 2006
Beiträge
295
Punkte für Reaktionen
0
Punkte
0
Habe ein Problem mir "echo", was ich irgendwie nicht erkennen kann.
Ich habe für den Eintritt und den Austritt aus dem Konferenzraum eine Emailbenachrichtigung gemacht, die auch funktioniert, nur liegt das Problem vor, daß jetzt bei Anrufen über normale Provider auch zumindestens die Austritts-Email kommt, obwohl es ja keine Konferenz war!
Irgendwie sehe ich den Fehler nicht.:doof:
Hat jemand eine Lösung parat?
Hier mal der Auszug aus der extensions.conf:

[konferenz]
exten => 3050,1,Ringing
exten => 3050,n,Wait(3)
exten => 3050,n,System(echo "${DATETIME}: ${CALLERID} konferenz betreten." | mail -s Konferenzbenachrichtigung [email protected])
exten => 3050,n,MeetMe(1000,Mic)
exten => 3050,n,Hangup
exten => h,1,System(echo "${DATETIME}: ${CALLERID} konferenz verlassen." | mail -s Konferenzbenachrichtigung [email protected])

Danke im Voraus für Eure Hilfe.
Euer Ebi
 
Ich habe mir schon gedacht, daß es daran liegt, aber einfach mit "n" weiter in der Priorität löst die Austritts-Email nicht aus.
Deshalb verzweifel ich ja. :confused:
Hast Du oder ein anderer einen Tipp?
3050,n,System(echo "${DATETIME}: ${CALLERID} konferenz verlassen." | mail -s Konferenzbenachrichtigung [email protected]) --> geht leider nicht.
Danke
Euer Ebi
 
wird denn diese Zeile

Code:
exten => 3050,n,Hangup

nach dem Verlassen der Konferenz noch ausgeführt? (zu sehen auf der CLI)

Wenn ja, wäre doch die Lösung ganz einfach:

Code:
exten => 3050,n,MeetMe(1000,Mic)
exten => 3050,n,System(echo "${DATETIME}: ${CALLERID} konferenz verlassen." | mail -s Konferenzbenachrichtigung [email protected])
exten => 3050,n,Hangup
 
Nein,so geht es eben leider nicht.
Hier der Auszug aus der Cli:

-- Executing System("SIP/7005-b67c3c58", "echo "06082007-19:29:56: "Phone 70 05" <7005> konferenz betreten." | mail -s Konferenzbenachrichtigung host@host de.") in new stack
-- Executing MeetMe("SIP/7005-b67c3c58", "1000|Mic") in new stack
== Parsing '/etc/asterisk/meetme.conf': Found
-- Created MeetMe conference 1023 for conference '1000'
-- Recording
-- Playing 'vm-rec-name' (language 'de')
-- Playing 'beep' (language 'de')
-- x=0, open writing: /var/spool/asterisk/meetme/meetme-username-1000-1 for mat: sln, 0x82306b8
-- User ended message by pressing #
-- Playing 'auth-thankyou' (language 'de')
-- Playing 'vm-review' (language 'de')
-- Playing 'vm-msgsaved' (language 'de')
-- Playing 'conf-onlyperson' (language 'de')
-- Started music on hold, class 'default', on channel 'SIP/7005-b67c3c58'
-- Stopped music on hold on SIP/7005-b67c3c58
-- Hungup 'Zap/pseudo-483600518'
== Spawn extension (ebi, 3050, 4) exited non-zero on 'SIP/7005-b67c3c58'

Euer Ebi
 
probier mal

Code:
exten => 3050,n,MeetMe(1000,Mic[color=red]p[/color])

Dann die Konferenz mit # verlassen und testen ob dann weitere prios ausgeführt werden. Nach den Beispielen auf voip-info.org sollte das funktionieren.
 
... oder mit der h-extension spielen.
 
Womit wir wieder am Anfang des Threads wären :rolleyes: und was ich bisher einfach vermeiden wollte.

Wenn das mit den meetme-Optionen nicht hinhaut, bleibt aber in der Tat nichts anderes als diese Möglichkeit.
 
ist aber am "besten". Da nach meiner Erfahrung die meissten Teilnehmer einfach auflegen und nich mit # beenden.
Das einfachste ist eine Variable vor dem betreten der Konf. zu setzten und in der h-exten eine Auswertung auf Inhalt/Länge der Variable machen.
AEL ist dazu zu empfehlen, da es sonst leicht unübersichtlich wird.
 
Das ist mir schon klar. Ich hatte eben nur gehofft, daß es eine Standardfunktionalität gibt. Deshalb die unterschiedlichen Experimente hier im Thread. Sonst muß ich ja irgendwann doch noch selbst mit meetme arbeiten um das rauszufinden ;)
 
Ich habe eine andere Lösung gefunden,die jetzt funktioniert:
[macro-enterkonf]
exten => s,1,NoOp(Wir sind im Macro enterkonf)
exten => s,2,GotoIf(${DB_EXISTS(konf/teilnehmer)}?4:3)
exten => s,3,Set(DB(konf/teilnehmer)=0)
exten => s,4,Set(DB(konf/teilnehmer)=${MATH(${DB(konf/teilnehmer)}+1)})
exten => s,5,System(echo "${DATETIME}: ${CALLERID} konferenz betreten." | mail -s Konferenzbenachrichtigung [email protected])


[macro-leavekonf]
exten => s,1,NoOp(Wir sind im Macro leavekonf)
exten => s,2,Set(DB(konf/teilnehmer)=${MATH(${DB(konf/teilnehmer)}-1)})
exten => s,3,System(echo "${DATETIME}: ${CALLERID} konferenz verlassen." | mail -s Konferenzbenachrichtigung [email protected])


[konferenz]

exten => 3050,1,Ringing
exten => 3050,n,Wait(1)
exten => 3050,n,Macro(enterkonf)
exten => 3050,n,MeetMe(1000,Mic) ;hier wird wohl M geschrieben!!!!
exten => h,1,Macro(leavekonf)

So funktioniert es jetzt.
Euer Ebi
 
Ich habe eine andere Lösung gefunden,die jetzt funktioniert:
[macro-enterkonf]
exten => s,1,NoOp(Wir sind im Macro enterkonf)
exten => s,2,GotoIf(${DB_EXISTS(konf/teilnehmer)}?4:3)
exten => s,3,Set(DB(konf/teilnehmer)=0)
exten => s,4,Set(DB(konf/teilnehmer)=${MATH(${DB(konf/teilnehmer)}+1)})
exten => s,5,System(echo "${DATETIME}: ${CALLERID} konferenz betreten." | mail -s Konferenzbenachrichtigung [email protected])


[macro-leavekonf]
exten => s,1,NoOp(Wir sind im Macro leavekonf)
exten => s,2,Set(DB(konf/teilnehmer)=${MATH(${DB(konf/teilnehmer)}-1)})
exten => s,3,System(echo "${DATETIME}: ${CALLERID} konferenz verlassen." | mail -s Konferenzbenachrichtigung [email protected])


[konferenz]

exten => 3050,1,Ringing
exten => 3050,n,Wait(1)
exten => 3050,n,Macro(enterkonf)
exten => 3050,n,MeetMe(1000,Mic) ;hier wird wohl M geschrieben!!!!
exten => h,1,Macro(leavekonf)

So funktioniert es jetzt.
Euer Ebi

oh sorry - doppelt
 
Zuletzt bearbeitet:
blind.gif


:mrgreen:
 
Ja, das ist wieder mal ein Erfolgserlebnis.
Danke für die Hilfe.
Euer Ebi ;)
 
...und was passiert, wenn ein Asterisk-Teilnehmer, der während einer laufenden Konferenz, an der er nicht beteiligt ist, einen Anruf startet und dann auflegt, noch während die fremde Konferenz läuft :-Ö
 
Habe ich gerade getestet, ging alles glatt, die Konferenz lief weiter und das andere Gespräch konnte einwandfrei beendet werden. :)
Euer Ebi
 
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.