CallFile mit anschliesender AGI

humpflepuff

Neuer User
Mitglied seit
21 Aug 2008
Beiträge
12
Punkte für Reaktionen
0
Punkte
0
Hey, ich lasse über eine callFile mein telefon anrufen, was auch wunderbar klappt. dann wird in der extension, des anrufs ein agi-script gestartet, welches die dtmf töne am telefon abfangen soll

#!/usr/local/bin/php -q
<?php
/**
* @package phpAGI_examples
* @version 2.0
*/


set_time_limit(30);
require('/var/lib/asterisk/agi-bin/phpagi.php');
error_reporting(E_ALL);

$agi = new AGI();
$agi->answer();

$cid = $agi->parse_callerid();
$agi->text2wav("Hello, {$cid['name']}.");
do
{
$agi->text2wav('Enter some numbers and then press the pound key. Press 1 1 1 followed by the pound key to quit.');
$result = $agi->get_data('beep', 3000, 20);
$keys = $result['result'];
$agi->text2wav("You entered $keys");
} while($keys != '111');
$agi->text2wav('Goodbye');
$agi->hangup();
?>

leider legt der asterisk viel zu schnell auf. Hier die ausgabe der console

localhost*CLI>
-- Executing Answer("SIP/.test-08175100", "") in new stack
-- Executing Playback("SIP/test-08175100", "lala") in new stack
-- Playing 'lala' (language 'de')
== Spawn extension (mtest, 333, 2) exited non-zero on 'SIP/test-08175100'
-- Attempting call on SIP/test for 20@calltest:1 (Retry 1)
> Channel SIP/test-08175100 was answered.
-- Executing Answer("SIP/test-08175100", "") in new stack
-- Executing AGI("SIP/test-08175100", "dtmf.php") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/dtmf.php
-- AGI Script dtmf.php completed, returning 0
-- Executing Hangup("SIP/test-08175100", "") in new stack
== Spawn extension (calltest, 20, 3) exited non-zero on 'SIP/test-08175100'
Sep 30 11:47:48 NOTICE[16929]: pbx_spool.c:279 attempt_thread: Call completed to SIP/test
localhost*CLI>

ich habe keine ahung woran es hängt :-(
 
Hallo. Du kannst 2 Sachen probieren:

1. In der Asterisk Konsole den AGi Debugger starten:


Dann siehst Du etwas genauer was Asterisk mit Deinem Script macht....


2. Das Script einmal direkt von der UNIX-Konsole aus starten und schauen ob es einen Parse-Error gibt:

/usr/local/bin/php /pfad/zum/script/scriptname.php


Eventuell liegt PHP bei Dir auch nicht unter /usr/local/bin/php sondern woanders.
Das kannst Du checken mit:


Gruss
wonder
 
kanns sein, dass text2wave bei dem modul phpagi.php nicht dabei ist und man es extra noch nachinstallieren muss?
 
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.