esl, send_dtmf, too early ESL_EVENT_CHANNEL_EXECUTE_COMPLETE
Hello, In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation! How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
Why do you need to know exactly when the DTMF was sent? Can you describe your use case? 2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
Because I wan't to be sure, that I have sent all dtmfs before releasing call. I think that ESL_EVENT_CHANNEL_EXECUTE can return before sending dtmfs, but ESL_EVENT_CHANNEL_EXECUTE_COMPLETE should return *after* sending dtmfs (*complete*). ESL_EVENT_CHANNEL_EXECUTE 2014-02-13 9:58 GMT+01:00 Peter Olsson <peter@olssononline.se>:
Why do you need to know exactly when the DTMF was sent? Can you describe your use case?
2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
How about issuing setEventLock(1) before sending your DTMF's and bridging the call? http://wiki.freeswitch.org/wiki/Event_Socket_Library#setEventLock Regards, Kenn On Thu, Feb 13, 2014 at 1:02 PM, Marcin S <ms4esl@gmail.com> wrote:
Because I wan't to be sure, that I have sent all dtmfs before releasing call. I think that ESL_EVENT_CHANNEL_EXECUTE can return before sending dtmfs, but ESL_EVENT_CHANNEL_EXECUTE_COMPLETE should return *after* sending dtmfs (*complete*). ESL_EVENT_CHANNEL_EXECUTE
2014-02-13 9:58 GMT+01:00 Peter Olsson <peter@olssononline.se>:
Why do you need to know exactly when the DTMF was sent? Can you describe
your use case?
2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
I don't think that will help, since it also will return as soon as the DMTF is queued (but not sent). 2014-02-13 13:20 GMT+01:00 Kenn Leth Hansen <klh@justfone.dk>:
How about issuing setEventLock(1) before sending your DTMF's and bridging the call? http://wiki.freeswitch.org/wiki/Event_Socket_Library#setEventLock
Regards, Kenn
On Thu, Feb 13, 2014 at 1:02 PM, Marcin S <ms4esl@gmail.com> wrote:
Because I wan't to be sure, that I have sent all dtmfs before releasing call. I think that ESL_EVENT_CHANNEL_EXECUTE can return before sending dtmfs, but ESL_EVENT_CHANNEL_EXECUTE_COMPLETE should return *after* sending dtmfs (*complete*). ESL_EVENT_CHANNEL_EXECUTE
2014-02-13 9:58 GMT+01:00 Peter Olsson <peter@olssononline.se>:
Why do you need to know exactly when the DTMF was sent? Can you describe
your use case?
2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
Another use case would be to play a voice prompt after sending the DTMFs. Would the prompt start playing immediately and maybe even superimposed with the DTMFs? On Thu, Feb 13, 2014 at 10:06 AM, Peter Olsson <peter@olssononline.se>wrote:
I don't think that will help, since it also will return as soon as the DMTF is queued (but not sent).
2014-02-13 13:20 GMT+01:00 Kenn Leth Hansen <klh@justfone.dk>:
How about issuing setEventLock(1) before sending your DTMF's and bridging
the call? http://wiki.freeswitch.org/wiki/Event_Socket_Library#setEventLock
Regards, Kenn
On Thu, Feb 13, 2014 at 1:02 PM, Marcin S <ms4esl@gmail.com> wrote:
Because I wan't to be sure, that I have sent all dtmfs before releasing call. I think that ESL_EVENT_CHANNEL_EXECUTE can return before sending dtmfs, but ESL_EVENT_CHANNEL_EXECUTE_COMPLETE should return *after* sending dtmfs (*complete*). ESL_EVENT_CHANNEL_EXECUTE
2014-02-13 9:58 GMT+01:00 Peter Olsson <peter@olssononline.se>:
Why do you need to know exactly when the DTMF was sent? Can you describe
your use case?
2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
-- Guillermo Ruiz Camauer
make a jira like Peter asked, i can confirm another event is needed. 2014年2月14日 上午4:27于 "Guillermo Ruiz Camauer" <grcamauer@gmail.com>写道:
Another use case would be to play a voice prompt after sending the DTMFs. Would the prompt start playing immediately and maybe even superimposed with the DTMFs?
On Thu, Feb 13, 2014 at 10:06 AM, Peter Olsson <peter@olssononline.se>wrote:
I don't think that will help, since it also will return as soon as the DMTF is queued (but not sent).
2014-02-13 13:20 GMT+01:00 Kenn Leth Hansen <klh@justfone.dk>:
How about issuing setEventLock(1) before sending your DTMF's and bridging
the call? http://wiki.freeswitch.org/wiki/Event_Socket_Library#setEventLock
Regards, Kenn
On Thu, Feb 13, 2014 at 1:02 PM, Marcin S <ms4esl@gmail.com> wrote:
Because I wan't to be sure, that I have sent all dtmfs before releasing call. I think that ESL_EVENT_CHANNEL_EXECUTE can return before sending dtmfs, but ESL_EVENT_CHANNEL_EXECUTE_COMPLETE should return *after* sending dtmfs (*complete*). ESL_EVENT_CHANNEL_EXECUTE
2014-02-13 9:58 GMT+01:00 Peter Olsson <peter@olssononline.se>:
Why do you need to know exactly when the DTMF was sent? Can you
describe your use case?
2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
-- Guillermo Ruiz Camauer
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
I believe the DTMF is queued into the session, so you'll probably get the EXECUTE_COMPLETE as soon as it's queued. Maybe it would be possible to handle this differently, but I'm guessing it might be a little complicated. It would probably be easier to send another event after the DTMF has actually been sent. Try to post a Jira for a feature request and see what happens. 2014-02-13 13:02 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Because I wan't to be sure, that I have sent all dtmfs before releasing call. I think that ESL_EVENT_CHANNEL_EXECUTE can return before sending dtmfs, but ESL_EVENT_CHANNEL_EXECUTE_COMPLETE should return *after* sending dtmfs (*complete*). ESL_EVENT_CHANNEL_EXECUTE
2014-02-13 9:58 GMT+01:00 Peter Olsson <peter@olssononline.se>:
Why do you need to know exactly when the DTMF was sent? Can you describe your use case?
2014-02-13 9:12 GMT+01:00 Marcin S <ms4esl@gmail.com>:
Hello,
In my simple C application I want to send dtmfs. This is quite easy - you just call esl_execute("send_dtmf", "1234", uuid); and it works. However, ESL returns ESL_EVENT_CHANNEL_EXECUTE_COMPLETE way to fast - even before it starts dtmfs generation!
How can I know, when dtmfs were really generated? So far, the only method is to issue some sleep(), but it looks like big workaround.
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
Official FreeSWITCH Sites http://www.freeswitch.org http://wiki.freeswitch.org http://www.cluecon.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
participants (5)
-
Guillermo Ruiz Camauer
-
Kenn Leth Hansen
-
Marcin S
-
Peter Olsson
-
Seven Du