The following is the requirement. Let say I have 3 extensions in my freeswitch. (777,1000,1010). When 1000 made a call to 777, I'll execute a perl application. In that, I'll get the DTMF (1010) from the caller. Then I'll make a call to the entered digit and I've to bridge 1000 and 1010.
This is what my requirement. I also tried the following. #!/usr/bin/perl use strict; use freeswitch; our $session; my $sess=new freeswitch::Session("user/1000"); $sess->answer(); if($sess->ready()) { freeswitch::consoleLog("INFO","Session is answered\n"); $sess->execute("playback","/usr/local/freeswitch/sounds/en/us/callie/time/8000/day-1.wav"); my $dtmf = $sess->getDigits(4,"", 5000); freeswitch::consoleLog("INFO","I received $dtmf\n"); my $new_sess=new freeswitch::Session("user/$dtmf"); $new_sess->answer(); if($new_sess->ready()) { $session->bridge($sess,$new_sess); } } In the above program I got usage error on $session->bridge. mercutioviz wrote: > > > > Sent from my iPhone > > On Aug 27, 2009, at 10:01 PM, lakshmanan ganapathy > <lakindi...@gmail.com> wrote: > >> No. In the dial plan I said, application="perl" data="The perl >> script". >> I also checked $session->execute("bridge","user/1010"). This is >> working fine. >> But originate is not working as I expected. >> > I think you might be confusing Dialplan apps with API commands. The > $session object represents an existing channel and therefore it uses > Dialplan apps. Originate is an API, that is, it is a command that you > type at the CLI. > > You need an API object to use originate from a script: > my $api = new $freeswitch::API(); > my $res = $api->executeString("originate user/1010 &bridge(user/1000); > > What kind of application are you developing? I'm curious why you need > an originate to create a whole new call. > > -MC > >> On Thu, Aug 27, 2009 at 9:46 PM, Michael Collins >> <m...@freeswitch.org> wrote: >> >> >> On Wed, Aug 26, 2009 at 9:38 PM, lakshmanan <lakindi...@gmail.com> >> wrote: >> >> When I give the following from the command line it calls to 1010 >> extension >> and once answered, it calls to 1000 and bridge the connection. >> originate user/1010 &bridge(user/1000) >> But I want to do this in perl. So I have given as follows >> $session->originate($session,"user/1010 &bridge user/ >> 1000"); >> But it is not working. It says "user/1010 &bridge user/1000 is invalid >> user". >> How to do this in perl. pls help. >> >> Are you calling this perl script from the CLI? If so you won't have >> the $session object because a channel does not exist for a simple >> API call. >> -MC >> >> >> _______________________________________________ >> FreeSWITCH-users mailing list >> FreeSWITCH-users@lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users >> http://www.freeswitch.org >> >> >> _______________________________________________ >> FreeSWITCH-users mailing list >> FreeSWITCH-users@lists.freeswitch.org >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users >> http://www.freeswitch.org > > > _______________________________________________ > FreeSWITCH-users mailing list > FreeSWITCH-users@lists.freeswitch.org > http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users > http://www.freeswitch.org > > -- View this message in context: http://www.nabble.com/How-to-make-a-call-back-tp25166083p25184832.html Sent from the Freeswitch-users mailing list archive at Nabble.com. _______________________________________________ FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org