[Freeswitch-users] Delayed start of tone_detect

Stephen Wilde wstephen80 at gmail.com
Wed Mar 23 02:10:36 MSK 2011


I'll try also with this changes in Freeswitch:

--- a/src/switch_ivr_async.c
+++ b/src/switch_ivr_async.c
@@ -2681,6 +2681,12 @@ SWITCH_DECLARE(switch_status_t)
switch_ivr_tone_detect_session(switch_core_sessi
                }
        }

+    if ((var = switch_channel_get_variable(channel, "tone_detect_delay")))
{
+        int tmp = atoi(var);
+        if (tmp > 0) {
+            cont->list[cont->index].sleep = tmp;
+        }
+    }

        if (zstr(flags)) {
                bflags = SMBF_READ_REPLACE;


using the "tone_detect_delay" channel variable to set the initial delay of
tone detect.

Stephen



On Tue, Mar 22, 2011 at 11:56 PM, Stephen Wilde <wstephen80 at gmail.com>wrote:

> The channel where I'm doing tone_detect is an outbound channel that is
> bridged to the inbound channel. The playback can works?
>
> Stephen
>
>
> On Tue, Mar 22, 2011 at 11:36 PM, Michael Collins <msc at freeswitch.org>wrote:
>
>> How about instead of sleeping you do something like this:
>> <action application="playback" data="silence_stream://500"/>
>>
>> -MC
>>
>>
>> On Tue, Mar 22, 2011 at 12:53 PM, Stephen Wilde <wstephen80 at gmail.com>wrote:
>>
>>> Ok, but this is not the solution for my initial problem: to delay the
>>> tone_detect of 500mS after answer.
>>> But I don't see any other way to do that (except modifying the
>>> "switch_ivr_tone_detect_session" to ignore the first n samples).
>>>
>>> Stephen
>>>
>>>
>>> On Tue, Mar 22, 2011 at 7:46 PM, Michael Collins <msc at freeswitch.org>wrote:
>>>
>>>> set the sleep value to something really low, like 20ms or something.
>>>> Find the lowest value that still lets the tone_detect work.
>>>> -MC
>>>>
>>>>
>>>> On Tue, Mar 22, 2011 at 10:59 AM, Stephen Wilde <wstephen80 at gmail.com>wrote:
>>>>
>>>>> I cannot slow down the call rate, this is a real traffic and is not
>>>>> generate but the session rate it's not a real problem because my session
>>>>> rate is never more then 100cps with a medium value of 50cps so, when I
>>>>> activate this sleep, Freeswitch calculate a wrong CPS value. It seems that
>>>>> during sleep, FS freezes, as the sleep is performed synchronously.
>>>>>
>>>>> Another effect is:
>>>>>
>>>>> 2011-03-22 09:17:57.551069 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 29:15 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:00.181462 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 29:18 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:00.301001 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 25:25 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:03.931076 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 10:3 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:05.331547 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 10:10 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:06.768937 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 24:14 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:07.248782 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 24:26 not found [UUID: N/A]
>>>>> 2011-03-22 09:18:07.797798 [ERR] mod_freetdm.c:2177 Session for channel
>>>>> 24:15 not found [UUID: N/A]
>>>>>
>>>>> and many calls are dropped (I never seen these errors before).
>>>>> Removing the sleep from dialplan, all revert to normal.
>>>>>
>>>>> Stephen
>>>>>
>>>>> On Tue, Mar 22, 2011 at 6:26 PM, Michael Collins <msc at freeswitch.org>wrote:
>>>>>
>>>>>>
>>>>>> On Tue, Mar 22, 2011 at 1:29 AM, Stephen Wilde <wstephen80 at gmail.com>wrote:
>>>>>>
>>>>>>> I have tested this trick with 1 call and it worked fine but when
>>>>>>> tested on a production environment doesn't work.
>>>>>>>
>>>>>>> The problem seems to be the "sleep" called by "execute_extension"
>>>>>>> executed on answer.
>>>>>>>
>>>>>>> If I activate this extension, I see in freeswitch log:
>>>>>>>
>>>>>>> 2011-03-22 09:18:10.191304 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1326
>>>>>>> 2011-03-22 09:18:10.193260 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1326
>>>>>>> 2011-03-22 09:18:10.194796 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1323
>>>>>>> 2011-03-22 09:18:10.194796 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1323
>>>>>>> 2011-03-22 09:18:10.199238 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1317
>>>>>>> 2011-03-22 09:18:10.204815 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1314
>>>>>>> 2011-03-22 09:18:10.204815 [CRIT] mod_sofia.c:3896 Error Creating
>>>>>>> Session
>>>>>>> 2011-03-22 09:18:10.214916 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1302
>>>>>>> 2011-03-22 09:18:10.214916 [CRIT] mod_sofia.c:3896 Error Creating
>>>>>>> Session
>>>>>>> *2011-03-22 09:18:10.377962 [CRIT] switch_time.c:788 Over Session
>>>>>>> Rate of 200!*
>>>>>>>
>>>>>> Notice the above line!
>>>>>>
>>>>>> You are overwhelming your system with too many calls in such a short
>>>>>> period of time. Slow things down a bit on your call generation. Also, you
>>>>>> can probably experiment with the sleep time. 500ms might be too long. Try
>>>>>> setting it to something shorter, like 100ms or so. That might help speed
>>>>>> things up a bit. Shaving 400ms off the call may not seem like a lot but if
>>>>>> you're doing hundreds of calls per second then that 400ms will add up
>>>>>> quickly.
>>>>>>
>>>>>> -MC
>>>>>>
>>>>>>
>>>>>>
>>>>>>> 2011-03-22 09:18:33.938094 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1266
>>>>>>> 2011-03-22 09:18:33.938094 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1266
>>>>>>> 2011-03-22 09:18:33.939077 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1266
>>>>>>> 2011-03-22 09:18:33.939077 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1266
>>>>>>> 2011-03-22 09:18:33.944077 [CRIT] switch_core_session.c:1646 Throttle
>>>>>>> Error! 1264
>>>>>>> 2011-03-22 09:18:33.944077 [CRIT] mod_sofia.c:3896 Error Creating
>>>>>>> Session
>>>>>>>
>>>>>>> Stephen
>>>>>>>
>>>>>>> On Tue, Mar 22, 2011 at 8:54 AM, Stephen Wilde <wstephen80 at gmail.com
>>>>>>> > wrote:
>>>>>>>
>>>>>>>> Thank you Michael, with this trick it works fine!
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Mar 22, 2011 at 6:33 AM, Michael Collins <
>>>>>>>> msc at freeswitch.org> wrote:
>>>>>>>>
>>>>>>>>> Add this to your dialplan...
>>>>>>>>>
>>>>>>>>> <extension name="start tone detect">
>>>>>>>>>    <condition field="destination_number"
>>>>>>>>> data="custom_start_tone_detect">
>>>>>>>>>     <action application="sleep" data="500"/>
>>>>>>>>>     <action application="tone_detect" data="MYTONE 680 ro +5000 set
>>>>>>>>> MYTONE=1"/>
>>>>>>>>>   </condition>
>>>>>>>>> </extension>
>>>>>>>>>
>>>>>>>>> ...then change your export...
>>>>>>>>> <action application="export"
>>>>>>>>> data="nolocal:execute_on_answer=execute_extension
>>>>>>>>> custom_start_tone_detect"/>
>>>>>>>>>
>>>>>>>>> Let us know if that does the trick.
>>>>>>>>>
>>>>>>>>> -MC
>>>>>>>>>
>>>>>>>>> On Mon, Mar 21, 2011 at 12:33 PM, Stephen Wilde <
>>>>>>>>> wstephen80 at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I start the tone_detect on answer using "execute_on_answer" as:
>>>>>>>>>>
>>>>>>>>>> <action application="export"
>>>>>>>>>> data="nolocal:execute_on_answer=tone_detect MYTONE 680 ro +5000 set
>>>>>>>>>> MYTONE=1" />
>>>>>>>>>>
>>>>>>>>>> but I have the necessity to start the tone_detect for example
>>>>>>>>>> 500ms after answer: there is a way to do that in dialplan?
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> 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
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> 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
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> 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
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> 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
>>>>
>>>>
>>>
>>> _______________________________________________
>>> 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
>>>
>>>
>>
>> _______________________________________________
>> 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
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20110323/dac25147/attachment-0001.html 


More information about the FreeSWITCH-users mailing list