DTMF im Gespräch

speiderlars

Neuer User
Mitglied seit
25 Sep 2008
Beiträge
21
Punkte für Reaktionen
0
Punkte
0
Guten Tag,

folgende 2 Fragen, einmal soll per DTMF ein "#" alle 30 Sekunden während eines gespräches übertragen werden. Dies dient dazu das eine AB Sprechstelle nicht nach einer bestimmten Zeit auflegt.

Code:
exten => 3002,1,Dial(SIP/3002,,M(verlaengern)

[macro-verlaengern]
exten => s,1,wait,30
exten => s,2,SIPDtmfMode(inband)
exten => s,3,sendDTMF(3002#)
exten => s,4,goto(s,1)

Leider wird nur das Macro ausgeführt und nicht mehr Automatisch abgehoben
von der AB Sprechstelle.

------------------------------------------------------------

Und die 2. Frage ist, ein Script soll aufgrund eines Tastatur eingabe ( zb: PIN Code / Türöffner Taste "#1") ein Shellscript ausgeführt werden.

Bisher funktioniert es nur durch Anruf einer Nummer (zb: 4000)

Code:
exten => _4XXX,1,Dial(SIP/${EXTEN})
exten => _4XXX,n,System(cd /etc/asterisk && ./cam58.sh)
exten => _4XXX,n,Hangup(

MfG Speiderlars
 
Hast Du schon gesehen, dass die abschliessende Klammer fehlt?
exten => 3002,1,Dial(SIP/3002,,M(verlaengern))

[macro-verlaengern]
 
1.) Lies mal über Answer() nach
2.) Teste mal die EXTEN "#1" also

Code:
exten => #1,1,Dial(SIP/${EXTEN})
exten => #1,n,System(cd /etc/asterisk && ./cam58.sh)
exten => #1,n,Hangup()
 
Ja danke aber das war nur hier ein Tipfehler im Forum. Es bleibt weiterhin das beim Anruf nur das Script ausgeführt wird, aber kein Gespräch aufbaut
(die gegen Stelle Hebt nicht mal ab / Klingelt).

MfG Speiderlars


EDIT: Teste mal Burmanns Post aus...
 
Was mich sehr wundert ist, dass das Makro trotzdem ausgeführt wird. Grundsätzlich muss also das Gespräch angenommen worden sein.

Makros im Dial-Befehl werden immer erst nach Gesprächsannahme ausgeführt.
 
Leider geht es so nicht mit dem "#1". Wenn ich das während eines Gespräches drücke passiert nichts.

Und das Makro wird wirklich ausgeführt sobald ich nur die Nummeranrufe abnehmen kann der andere Teilnehmer garnicht da es bei ihm nicht Klingelt.

Mir ist da noch was aufgefallen. Die A/B Sprechstelle geht ran man hört aber nur ein leises klacken Leider kommt dann aber keine Sprachverbindung zustande. Also es geht ran aber man hört nichts (ohne Makro hört man was).
Das Makro wird dann aber ausgeführt, also wäre jetzt die Frage warum bekomme ich kein Ton?


--------------------------------------

Zum Aufbau was erreicht werden soll.

Es gibt 2 Teilnehmer, der 2. wird vom 1. Angerufen dann kann der 2. Teilnehmer aufgrund "#1" ein Script Ausführen. Das am besten durch die Nummer des Anrufers 1 unterschiedlich abgehandelt wird.

Und bei der 2. Aufgabe muss halt immer wider ein "#" geschickt werden um das Gespräch aufrecht zuhalten.

MfG Speiderlars
 
Lies dir mal die Möglichkeiten der 'features.conf' durch.
 
Hallo,

nun habe ich noch folgende Fragen,
wie kann ich wärend eines gesprächs automatisch ständig das makro ausführen, so dass alle 20 sekunden einen DTMF-Ton gesendet wird?
(Zum Anruf Halten)

wie kann nachdem ein Gesprächsteilnehmer ein Gespräch beendet hat, ein DTMF-Tone an den anderen Teilnehmer gesendet werden, bevor die Verbindung beendet wird? (Zum Auflegen der A/B Stelle)

Und zu guter Letzt habe ich es mit der "features.conf" jetzt erst mal hinbekommen, Problem ist nur das ich rasendschnell zb: #8 Tippen muss. Ich habe hier im Forum schon gelesn das man das zeitlich verlängern kann nur finde ich den Thread nicht mehr.

Also Aufgabe 1 ist sogut wie gelöst ;)

Wenn ich das dann alles Fertig habe können sich Intressenten gern Melden. In diesem Aufbau wird genutzt (Asterisk / GXV3000/ Mobotix) wer möchte kann sich per PN melden.


MfG Speiderlars
 
Hat schon jemand eine Antwort auf diese Frage gefunden ?

wie kann nachdem ein Gesprächsteilnehmer ein Gespräch beendet hat, ein DTMF-Tone an den anderen Teilnehmer gesendet werden, bevor die Verbindung beendet wird? (Zum Auflegen der A/B Stelle)
 
Hallo ich habe jetzt beide Aufgaben lösen können.
Die eine Lösung schreibe ich euch die andere am MO.

Also bei Aufgabe 2 ging es ja darum das zb ein Script aufgrund der # ausgeführt wird oder eine art PIN (1234).

Die geht folgender maßen:

extensions.conf:
Code:
;Dieser teil ist wichtig damit die Richtige seite die DTMF Töne schicken kann.
;Die 1000 ist virtuell und dient zb für die Außensprechstelle um zuermöglichen 
;das die innere Sprechstelle die DTMF Kommandos schicken kann.
;Dies wird nicht benötigt wenn der Rufenden die Kommandos schicken soll.
;Mit dem originate wird dann eine Verbindung von innen nach Außen aufgebaut
exten => 1000/10,1,answer()
exten => 1000/10,2,Wait(1)
exten => 1000/10,3,system(asterisk -rx "originate sip/11 extension 10@oeffnen")
exten => 1000/10,4,hangup()


;Beim verbinden wird das Feature dtm geladen
;Womit auch die DTMF kombi 1234 geladen wird
[oeffnen]
exten => 10,1,SIPDtmfMode(RFC2833)
exten => 10,2,Set(DYNAMIC_FEATURES=dtmf)
exten => 10,3,Wait(1)
exten => 10,4,Dial(SIP/${EXTEN})

;Hier wird festgelegt was passieren soll wenn der DTMF ton erkannt wurde
[macro-dtmf]
exten => s,1,NooP(Tuer_OK)
exten => s,2,System[COLOR="Red"](cd /etc/asterisk && ./open.sh)[/COLOR]

features.conf:
Code:
;Hier wird die DTMF kombination festgelegt
;und am ende welches macro in den extensions ausgeführt werden soll
[applicationmap]
dtmf = [COLOR="Red"]1234[/COLOR],self/both,Macro,[COLOR="Red"]dtmf[/COLOR]

Somit kann man zb eine Schranke oder Tür von Innen oder von außen über ein berechtigtes Handy öffnen :)

Mit freundlichen Gruß
Speiderlars
 
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.