[Freeswitch-users] sched_api doesn't get launched

Anthony Minessale anthony.minessale at gmail.com
Fri Oct 23 08:02:07 PDT 2009


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-users
>>> 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.minessale 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 conference.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
>
>


-- 
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.minessale 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 conference.freeswitch.org>
pstn:213-799-1400
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20091023/4feb89d4/attachment-0002.html 


More information about the FreeSWITCH-users mailing list