AGI exec und die Extension

omerzu

Neuer User
Mitglied seit
6 Nov 2008
Beiträge
29
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

in einem PHP-AGI-Skript benutzte ich die AGI-Funktion "exec" um die Applikation "BackgroundDetect" auszuführen.

Funktioniert soweit prächtig, aber:

BackgroundDetect setzt normalerweise die Extension "talk", falls Sprache erkannt wurde. Am Rückgabewert des Exec kann ich aber nicht erkennen, ob das der Fall war oder nicht.

Kennt jemand eine Möglichkeit, das herauszufinden?

Ich bin im Moment etwas ratlos. Derzeit kann ich nur an der Dauer des Funktionsaufrufes erkennen, ob alles geklappt hat (Sprache + Pause erkannt) oder nicht, in diesem Fall weiß ich aber nicht, ob überhaupt nicht gesprochen oder nur keine Pause erkannt wurde.

Vielen Dank, Gruß Thomas.
 
Also wie man die Extension herausbekommt, weiß ich noch nicht.

Habe aber durch Angucken des Codes der Applikation das Folgende herausgefunden:

Sie setzt eine Variable "TALK_DETECTED" auf die Länge der erkannten Sprachsequenz *falls* Sprache+Pause erkannt wurde.

Diese Variable kann mit "get_variable" abgefragt werden. Da sie nur im Erfolgsfall gesetzt wird, muss man sie selbst vor dem BackgroundDetect mit set_variable initalisieren.

Leider löst das mein Problem nicht, da ich eigentlich die Vorstellung hatte, dass ich nach dem BackgroundDetect auch unterscheiden kann, ob gar nichts gesagt wurde oder ob jemand die ganze Zeit ohne Punkt und Komma geredet hat.
Soweit ich den Code der Applikation sehe, gibt sie das aber nicht her.

Weiß jemand eine andere Lösung - außer die Applikation selbst zu patchen?

Genau genommen fehlt mir eigentlich eine Funktion "WaitForTalk", dann könnte ich im Zusammenspiel mit "WaitForSilence" selbst das tun, was ich möchte....
 
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.