[Freeswitch-users] PHP ESL & Event Socket Outbound
Denis Gasparin
denis.gasparin at edistar.com
Wed Jul 10 21:16:04 MSD 2013
Hi.
>From the php manual: Reading ends when length - 1 bytes have been read, or a newline
Link: http://www.php.net/fgets
This should work:
while(!feof($in)) {
$text = fgets($in);
file_put_contents('/usr/local/freeswitch/scripts/socketlog.txt' ,$text, FILE_APPEND);
}
Denis
----- Messaggio originale -----
Da: "Michael Collins" <msc at freeswitch.org>
A: "FreeSWITCH Users Help" <freeswitch-users at lists.freeswitch.org>
Inviato: Mercoledì, 10 luglio 2013 19:05:01
Oggetto: Re: [Freeswitch-users] PHP ESL & Event Socket Outbound
I'll have to defer to those who know PHP better than I, but my first question would be: does fgets read all data off the input buffer or does it read one line at a time?
-MC
On Wed, Jul 10, 2013 at 3:23 AM, Milos Jovanovic < development.milos at gmail.com > wrote:
Hello,
I am trying to create PHP application that will be receiving information about each call from freeswitch and send commands to control freeswitch.
I found an example at https://wiki.freeswitch.org/wiki/PHP_ESL#ivrd BUT unfortunately they do not explain how I can retrieve information from freeswitch (so I can do the routing in PHP).
I guess I should use PHP ESL but the documentation is pretty bad so if someone has some working example, I'd appreciate it.
I tried to read from stdin this way:
#!/usr/bin/php -q
<?php
// set a couple of things so we dont kill the system
ob_implicit_flush(true);
set_time_limit(30);
// Open stdin so we can read the data in
$in = fopen("php://stdin", "r");
// Connect
echo "connect\n\n";
// READ DATA
$text = fgets($in);
file_put_contents('/usr/local/freeswitch/scripts/socketlog.txt' ,$text, FILE_APPEND);
// Answer
echo "sendmsg\n";
echo "call-command: execute\n";
echo "execute-app-name: answer\n\n";
// Play a prompt
echo "sendmsg\n";
echo "call-command: execute\n";
echo "execute-app-name: playback\n";
echo "execute-app-arg: /usr/local/freeswitch/sounds/en/us/callie/ivr/8000/ivr-welcome_to_freeswitch.wav\n\n";
// Wait
sleep(5);
// Hangup
echo "sendmsg\n";
echo "call-command: hangup\n\n";
fclose($in);
?>
Unfortunately, everything I get as a result in my log file is:
Event-Name: CHANNEL_DATA
_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting at freeswitch.org
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE: http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
--
Michael S Collins
Twitter: @mercutioviz
http://www.FreeSWITCH.org
http://www.ClueCon.com
http://www.OSTAG.org
_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting at freeswitch.org
http://www.freeswitchsolutions.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.com
FreeSWITCH-users mailing list
FreeSWITCH-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20130710/4623116c/attachment-0001.html
Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users
mailing list