poor bbhenry :) Added in r15207 please test and update docu if necessary: http://wiki.freeswitch.org/wiki/Variable_api_on_answer
On October 23, 2009 11:02:07 am Anthony Minessale wrote: > it's probably related to escaping the data. > I was sick of watching you suffer so i added api_on_answer variable to > trunk. > > On Fri, Oct 23, 2009 at 3:54 AM, Henry Huang <[email protected]>wrote: > > Thanks to c6burns on IRC channel for the tip to use execute_on_answer in > > combination with eval, and of course everyone here that pointing me to > > the right direction. > > I was able to execute sched_api with eval, but not with the combination > > of execute_on_answer. The argument just don't get parsed as the eval > > argument. Here is the code: > > > > setVariable("execute_on_answer", "eval sched_api(+%ld none uuid_displace > > <some uuid> start > > /usr/local/freeswitch/sounds/en/us/callie/misc/8000/final.wav 20 mux)"); > > > > > > Here is the log: > > 2009-10-23 16:17:53.633189 [DEBUG] switch_scheduler.c:214 Added task 2 > > sched_api_function (none) to run at 1256285888 > > EXECUTE sofia/internal/[email protected] *eval(+OK *Added: 2 > > ) > > > > 2009-10-23 16:18:04.52701 [DEBUG] switch_channel.c:1927 sofia/internal/ > > [email protected] *execute on answer: eval(sched_api(+37 none > > uuid_displace 84d74f41-8668-4138-943f-f076e94046ad start > > /usr/local/freeswitch/sounds/en/us/callie/misc/8000/final.wav 20 mux))* > > EXECUTE sofia/internal/[email protected] eval(sched_api(+37 none > > uuid_displace 84d74f41-8668-4138-943f-f076e94046ad start > > /usr/local/freeswitch/sounds/en/us/callie/misc/8000/final.wav 20 mux)) > > > > > > The first part of the log is when I just do execute("eval", > > "${sched_api(+%ld none uuid_displace <some uuid> start > > /usr/local/freeswitch/sounds/en/us/callie/misc/8000/final.wav 20 mux)}"); > > And I simple get a OK, and then later on the sched_api gets executed. > > > > However, on the excerpt of the second log. which I use the combination > > with execute_on_answer like specified in the yellow hight code above. It > > doesn't simply return a OK, instead it shows the whole blob of code. and > > does nothing later. > > > > > > > > On Thu, Oct 22, 2009 at 4:09 AM, Anthony Minessale < > > > > [email protected]> wrote: > >> Yes you need an API object as described in other email. > >> > >> Which line of code from java caused that segfault > >> It looks like a simple NULL string issue that we may want to hunt down. > >> > >> On Wed, Oct 21, 2009 at 4:44 AM, Henry Huang <[email protected]>wrote: > >>> I can't seem to find the right thing to use in mod_java to execute api > >>> commands, only api_after_bridge > >>> > >>> 2009-10-21 17:42:46.593094 [NOTICE] mod_sofia.c:1509 Pre-Answer > >>> sofia/internal/[email protected]! > >>> # > >>> # A fatal error has been detected by the Java Runtime Environment: > >>> # > >>> # SIGSEGV (0xb) at pc=0x004e4480, pid=1927, tid=16116624 > >>> # > >>> # JRE version: 6.0_16-b01 > >>> # Java VM: Java HotSpot(TM) Client VM (14.2-b01 mixed mode linux-x86 ) > >>> # Problematic frame: > >>> # C [libc.so.6+0x6f480] strcpy+0x10 > >>> # > >>> # An error report file with more information is saved as: > >>> # /usr/local/freeswitch/bin/hs_err_pid1927.log > >>> 2009-10-21 17:42:59.883729 [ERR] switch_core_session.c:1374 Invalid > >>> Application sched_api > >>> 2009-10-21 17:42:59.883729 [NOTICE] switch_core_session.c:1375 Hangup > >>> sofia/internal/[email protected] [CS_EXECUTE] > >>> [DESTINATION_OUT_OF_ORDER] > >>> # > >>> # If you would like to submit a bug report, please visit: > >>> # http://java.sun.com/webapps/bugreport/crash.jsp > >>> # The crash happened outside the Java Virtual Machine in native code. > >>> # See problematic frame for where to report the bug. > >>> > >>> On Sat, Oct 17, 2009 at 3:37 AM, Michael Collins <[email protected]>wrote: > >>>> On Fri, Oct 16, 2009 at 11:53 AM, Henry Huang > >>>> <[email protected] > >>>> > >>>> > wrote: > >>>>> > >>>>> So how would you trigger it from a script dialplan? The only time it > >>>>> seemed to work is when I did setVariable("api_after_bridge", > >>>>> "sched_api blah blah blah"); > >>>>> but then it gets executed after the channel's been teared down. I > >>>>> thought api_after_bridge means right after the call gets connected. > >>>>> > >>>>> I need something to execute an api command right before or right > >>>>> after the call gets bridged. > >>>>> > >>>>> api_after_bridge is a channel variable, so using setVariable works > >>>>> just > >>>> > >>>> fine. If you need to sched_api is an API only. Check these out: > >>>> http://wiki.freeswitch.org/wiki/Mod_commands#Misc._Commands > >>>> > >>>> So you need an API object in order to use it. I don't know the syntax > >>>> for creating an api obj in Java but in Lua it goes like this: > >>>> api = freeswitch.API(); > >>>> res = api:execute("sched_api","+300 none my_api my_api_args") > >>>> > >>>> Remember, if the method you are using isn't found in the dial plan > >>>> tools then it isn't a dial plan application. Make sure it's on the > >>>> list: http://wiki.freeswitch.org/wiki/Mod_dptools > >>>> > >>>> On the other hand, API commands are listed here: > >>>> http://wiki.freeswitch.org/wiki/Mod_commands > >>>> > >>>> dptools require a session object, api commands require an api > >>>> object... > >>>> > >>>> -MC > >>>> > >>>> > >>>> _______________________________________________ > >>>> FreeSWITCH-users mailing list > >>>> [email protected] > >>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > >>>> UNSUBSCRIBE: > >>>> http://lists.freeswitch.org/mailman/options/freeswitch-users > >>>> http://www.freeswitch.org > >>> > >>> -- > >>> Henry Huang > >>> UniC Solution - Communication Unified > >>> VoIP & Open Source software Consultant > >>> > >>> _______________________________________________ > >>> FreeSWITCH-users mailing list > >>> [email protected] > >>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > >>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-user > >>>s http://www.freeswitch.org > >> > >> -- > >> Anthony Minessale II > >> > >> FreeSWITCH http://www.freeswitch.org/ > >> ClueCon http://www.cluecon.com/ > >> Twitter: http://twitter.com/FreeSWITCH_wire > >> > >> AIM: anthm > >> MSN:[email protected] <msn%[email protected]> > >> GTALK/JABBER/PAYPAL:[email protected]<PAYPAL%3Aanthony.minessa > >>[email protected]> IRC: irc.freenode.net #freeswitch > >> > >> FreeSWITCH Developer Conference > >> sip:[email protected] <sip%[email protected]> > >> iax:[email protected]/888 > >> googletalk:[email protected]<googletalk%3aconf%2b...@co > >>nference.freeswitch.org> pstn:213-799-1400 > >> > >> _______________________________________________ > >> FreeSWITCH-users mailing list > >> [email protected] > >> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users > >> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users > >> http://www.freeswitch.org > > > > -- > > Henry Huang > > UniC Solution - Communication Unified > > VoIP & Open Source software Consultant > > > > _______________________________________________ > > FreeSWITCH-users mailing list > > [email protected] > > 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 [email protected] http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
