[Freeswitch-users] sched_api doesn't get launched

Chris Burns chris at cloudtel.com
Fri Oct 23 10:47:43 PDT 2009


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 
<red.rain.seven at gmail.com>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/1688004 at 192.168.1.66 *eval(+OK *Added: 2
> > )
> >
> > 2009-10-23 16:18:04.52701 [DEBUG] switch_channel.c:1927 sofia/internal/
> > 1688004 at 192.168.1.66 *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/1688004 at 192.168.1.66 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 <
> >
> > anthony.minessale at gmail.com> 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 
<red.rain.seven at gmail.com>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/1688003 at 192.168.1.66!
> >>> #
> >>> # 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/1688003 at 192.168.1.66 [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 
<msc at freeswitch.org>wrote:
> >>>> On Fri, Oct 16, 2009 at 11:53 AM, Henry Huang
> >>>> <red.rain.seven at gmail.com
> >>>>
> >>>> > 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
> >>>> 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
> >>>
> >>> --
> >>> Henry Huang
> >>> UniC Solution - Communication Unified
> >>> VoIP & Open Source software Consultant
> >>>
> >>> _______________________________________________
> >>> 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-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:anthony_minessale at hotmail.com <MSN%3Aanthony_minessale at hotmail.com>
> >> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com<PAYPAL%3Aanthony.minessa
> >>le at gmail.com> IRC: irc.freenode.net #freeswitch
> >>
> >> FreeSWITCH Developer Conference
> >> sip:888 at conference.freeswitch.org <sip%3A888 at conference.freeswitch.org>
> >> iax:guest at conference.freeswitch.org/888
> >> googletalk:conf+888 at conference.freeswitch.org<googletalk%3Aconf%2B888 at co
> >>nference.freeswitch.org> pstn:213-799-1400
> >>
> >> _______________________________________________
> >> 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
> >
> > --
> > Henry Huang
> > UniC Solution - Communication Unified
> > VoIP & Open Source software Consultant
> >
> > _______________________________________________
> > 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






More information about the FreeSWITCH-users mailing list