[Freeswitch-users] how bind_meta_app works?
lakshmanan ganapathy
lakindia89 at gmail.com
Wed Dec 8 16:01:13 MSK 2010
Hi all,
Is my understanding is right??. If so, is it possible to run applications in
A leg...
On Mon, Dec 6, 2010 at 12:19 PM, lakshmanan ganapathy
<lakindia89 at gmail.com>wrote:
> Hi all,
> I was experimenting the bind_mea_app and I have a doubt.
> There is a call from 1000 to FreeSwitch extension and it is connecting to
> event outbound socket.
> I've the following script in place.
>
> #!/usr/bin/perl
> use strict;
> use warnings;
> use Data::Dumper;
> use lib '/usr/src/freeswitch/libs/esl/perl/';
> use IO::Socket::INET;
> use ESL;
>
> my $SOCK = new IO::Socket::INET ( LocalHost => 'localhost', LocalPort =>
> '8447', Proto => 'tcp', Listen => 10, Reuse => 1 );
> unless ($SOCK) {
> print("Could not create socket: $!");
> exit(2);
> }
>
> while (1) {
> # Wait for any client through accept function in socket
> module.
> my $new_sock = $SOCK->accept();
> next if (not defined($new_sock));
> # Get socket host
> my $host = $new_sock->sockhost();
> print("Got a client accepted from $host\n");
> my $pid = fork();
> if ($pid) {
> close($new_sock);
> next;
> }
> my $fd = fileno($new_sock);
> print("Newly forked child, pid: $$\n");
> my $EslCon = new ESL::ESLconnection($fd);
> print "Connection created successfully\n";
> my $info = $EslCon->getInfo();
> $EslCon->setEventLock("true");
> my $uuid = $info->getHeader("unique-id");
> print Dumper $info->serialize();
> $EslCon->execute("set","bind_meta_key=#");
> $EslCon->execute("bind_meta_app","1 b o
> event::appli=testing");
> my $api =
> $EslCon->execute("bridge","{ignore_early_media=true}freetdm/1/a/xxxxxxxxx");
> }
>
> The script called to the number that was dialed. In that number I pressed
> #1, but the event was not sent,
> and I assume that the bridge application is executing in the A leg ( is it
> correct?? ) . So only after that bridge application gets completed the event
> gets triggered out.
>
> If I execute the application in the B leg, then it is working fine, since
> there is no application that is running at that time.
> Now I wanted to know if there is any way to run the application on A leg, I
> need that application to be executed even the bridge is not completed.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20101208/dda7efd2/attachment-0001.html
More information about the FreeSWITCH-users
mailing list