New "mod_dahdi_timer" - does the community want this?
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in. My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean. Is this something that the FS community wants? It's pretty specific - probably only of interest to users of Dahdi-based FreeTDM systems, but for them, it may be very useful. If so, how do I go about contributing it? I've never contributed any source to the FS community before. Thanks, Bob
Sure, except obviously we shouldn't hardcode the change to mod_conference, we should make the timer an option in mod_conference config. Toss it on out in jira. Thanks Mike On Oct 18, 2013, at 10:32 AM, Bob Hartwig <bobjects@gmail.com> wrote:
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in.
My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean.
Is this something that the FS community wants? It's pretty specific - probably only of interest to users of Dahdi-based FreeTDM systems, but for them, it may be very useful. If so, how do I go about contributing it? I've never contributed any source to the FS community before.
Thanks, Bob
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
It already is an option on the conference configs: timer-name. This could be use for sip as well for the same reasons. I've suggested this to be done a few times already. Ideally sangoma should make something similar. For scale-ability I also recommend looking at mod_timerfd and doing it in a similar fashion to use one single dadhi channel to service N threads. On Mon, Oct 21, 2013 at 10:15 AM, Michael Jerris <mike@jerris.com> wrote:
Sure, except obviously we shouldn't hardcode the change to mod_conference, we should make the timer an option in mod_conference config. Toss it on out in jira.
Thanks Mike
On Oct 18, 2013, at 10:32 AM, Bob Hartwig <bobjects@gmail.com> wrote:
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in.
My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean.
Is this something that the FS community wants? It's pretty specific - probably only of interest to users of Dahdi-based FreeTDM systems, but for them, it may be very useful. If so, how do I go about contributing it? I've never contributed any source to the FS community before.
Thanks, Bob
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
On Mon, Oct 21, 2013 at 11:41 AM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
It already is an option on the conference configs: timer-name.
in the latest 1.2.x version, and also an older master version that we're using for production at a couple of sites, the timer name in mod_conference.c was hard-coded to "soft". If it's now a configurable parameter in mod_conference.c, then that's great, the admin will just need to set that "timer-name" config to "dahdi", and they'll be good to go.
For scale-ability I also recommend looking at mod_timerfd and doing it in a similar fashion to use one single dadhi channel to service N threads.
Yes, that's how I did it. I learned a lot by studying mod_timerfd and also switch_time.c - there's just one ~1mS loop in my code. Bob
Just double checked code, timer name has been configurable for more than 7 years. On Oct 21, 2013, at 11:54 AM, Bob Hartwig <bobjects@gmail.com> wrote:
On Mon, Oct 21, 2013 at 11:41 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote: It already is an option on the conference configs: timer-name.
in the latest 1.2.x version, and also an older master version that we're using for production at a couple of sites, the timer name in mod_conference.c was hard-coded to "soft". If it's now a configurable parameter in mod_conference.c, then that's great, the admin will just need to set that "timer-name" config to "dahdi", and they'll be good to go.
For scale-ability I also recommend looking at mod_timerfd and doing it in a similar fashion to use one single dadhi channel to service N threads.
Yes, that's how I did it. I learned a lot by studying mod_timerfd and also switch_time.c - there's just one ~1mS loop in my code.
Bob
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
+1 - the only occurrence in mod_conference.c of "soft" is as a default when timer_name has not been set in the configuration file. On 21 October 2013 16:41, Anthony Minessale <anthony.minessale@gmail.com>wrote:
It already is an option on the conference configs: timer-name. This could be use for sip as well for the same reasons.
I've suggested this to be done a few times already. Ideally sangoma should make something similar. For scale-ability I also recommend looking at mod_timerfd and doing it in a similar fashion to use one single dadhi channel to service N threads.
On Mon, Oct 21, 2013 at 10:15 AM, Michael Jerris <mike@jerris.com> wrote:
Sure, except obviously we shouldn't hardcode the change to mod_conference, we should make the timer an option in mod_conference config. Toss it on out in jira.
Thanks Mike
On Oct 18, 2013, at 10:32 AM, Bob Hartwig <bobjects@gmail.com> wrote:
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in.
My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean.
Is this something that the FS community wants? It's pretty specific - probably only of interest to users of Dahdi-based FreeTDM systems, but for them, it may be very useful. If so, how do I go about contributing it? I've never contributed any source to the FS community before.
Thanks, Bob
_________________________________________________________________________
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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
Yes, I see now that that's true. That's good - no code changes needed, besides the addition of my new mod_dahdi_timer module. Bob On Mon, Oct 21, 2013 at 12:53 PM, Steven Ayre <steveayre@gmail.com> wrote:
+1 - the only occurrence in mod_conference.c of "soft" is as a default when timer_name has not been set in the configuration file.
On 21 October 2013 16:41, Anthony Minessale <anthony.minessale@gmail.com>wrote:
It already is an option on the conference configs: timer-name. This could be use for sip as well for the same reasons.
I've suggested this to be done a few times already. Ideally sangoma should make something similar. For scale-ability I also recommend looking at mod_timerfd and doing it in a similar fashion to use one single dadhi channel to service N threads.
On Mon, Oct 21, 2013 at 10:15 AM, Michael Jerris <mike@jerris.com> wrote:
Sure, except obviously we shouldn't hardcode the change to mod_conference, we should make the timer an option in mod_conference config. Toss it on out in jira.
Thanks Mike
On Oct 18, 2013, at 10:32 AM, Bob Hartwig <bobjects@gmail.com> wrote:
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in.
My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean.
Is this something that the FS community wants? It's pretty specific - probably only of interest to users of Dahdi-based FreeTDM systems, but for them, it may be very useful. If so, how do I go about contributing it? I've never contributed any source to the FS community before.
Thanks, Bob
_________________________________________________________________________
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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
On Mon, Oct 21, 2013 at 1:03 PM, Bob Hartwig <bobjectsfreeswitch@gmail.com>wrote:
Yes, I see now that that's true. That's good - no code changes needed, besides the addition of my new mod_dahdi_timer module.
May be we can hide the DAHDI-specific details into a new FreeTDM timing API and let the module be called mod_freetdm_timer This allows re-using the same module for different types of cards supported by FreeTDM. If you're interested in following this path, drop me an email and we can discuss how to get it into FreeTDM. Moy *Moises Silva **Manager, Software Engineering*** msilva@sangoma.com Sangoma Technologies 100 Renfrew Drive, Suite 100, Markham, ON L3R 9R6 Canada t. +1 800 388 2475 (N. America) t. +1 905 474 1990 x128 f. +1 905 474 9223 **<http://www.sangoma.com/contact?utm_source=signature&utm_medium=email&utm_campaign=email+signatures> Products<http://sangoma.com/products?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Solutions<http://sangoma.com/solutions?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Events<http://sangoma.com/about_us/events?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Contact<http://www.sangoma.com/contact?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Wiki<http://wiki.sangoma.com/?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Facebook<http://www.facebook.com/pages/Sangoma-VoIP-Cards/43578453335?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Twitter<http://www.twitter.com/sangoma?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures>`| | YouTube<http://www.youtube.com/sangomatechnologies?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures>
Or for that matter, to put it right in to mod_freetdm. Mike On Oct 21, 2013, at 1:28 PM, Moises Silva <moises.silva@gmail.com> wrote:
On Mon, Oct 21, 2013 at 1:03 PM, Bob Hartwig <bobjectsfreeswitch@gmail.com> wrote: Yes, I see now that that's true. That's good - no code changes needed, besides the addition of my new mod_dahdi_timer module.
May be we can hide the DAHDI-specific details into a new FreeTDM timing API and let the module be called mod_freetdm_timer
This allows re-using the same module for different types of cards supported by FreeTDM.
If you're interested in following this path, drop me an email and we can discuss how to get it into FreeTDM.
Moy
Moises Silva Manager, Software Engineering msilva@sangoma.com Sangoma Technologies 100 Renfrew Drive, Suite 100, Markham, ON L3R 9R6 Canada
t. +1 800 388 2475 (N. America) t. +1 905 474 1990 x128 f. +1 905 474 9223
Products | Solutions | Events | Contact | Wiki | Facebook | Twitter`| | YouTube
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
OK, I uploaded this as a tarball to Jira, as an "improvement" issue type, for the FreeSWITCH project. Here is a paste of the description that I left there, for everyone's information: I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in. My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean. Installation guidelines: - Untar the tarball under the freeswitch source directory - Before ./configure build step, edit modules.conf, adding a line for "timers/mod_dahdi_timer" - Build as usual - Add a line to modules.conf.xml enabling mod_dahdi_timer Testing the timer: - Only do this if you have a Dahdi T1 board installed and configured with dahdi_cfg. - "show timers" - verify that the new dahdi timer shows up. - timer_test 10 10 dahdi - timer_test 20 10 dahdi - timer_test 40 10 dahdi - timer_test 60 10 dahdi - timer_test 120 10 dahdi Using the timer: - Into any config that allows for specifying a timer name, use "dahdi". This is especially useful for mod_conference. Todo: - See TODO comments in mod_dahdi_timer.c . Exception handling may not be robust, and may fail spectacularly in systems with no configured Dahdi T1 board. - Comments at the top of mod_dahdi_timer.c may need to be expanded to include the normal FreeSWITCH copyright notices, etc. On Mon, Oct 21, 2013 at 2:59 PM, Moises Silva <moises.silva@gmail.com>wrote:
On Mon, Oct 21, 2013 at 1:45 PM, Michael Jerris <mike@jerris.com> wrote:
Or for that matter, to put it right in to mod_freetdm.
Agreed, that would be better.
Moy
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
Moises, Does libsangoma have a way to open a generic socket to get timing from in this manner? Ideally if we could get this into mod_freetdm we could make it auto set the timer_name variable in the new channels from the tdm source and have mod_conference auto set the timer as well if the first caller has a certain variable set. On Mon, Oct 21, 2013 at 7:48 PM, Bob Hartwig <bobjects@gmail.com> wrote:
OK, I uploaded this as a tarball to Jira, as an "improvement" issue type, for the FreeSWITCH project. Here is a paste of the description that I left there, for everyone's information:
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in.
My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean.
Installation guidelines:
- Untar the tarball under the freeswitch source directory - Before ./configure build step, edit modules.conf, adding a line for "timers/mod_dahdi_timer" - Build as usual - Add a line to modules.conf.xml enabling mod_dahdi_timer
Testing the timer: - Only do this if you have a Dahdi T1 board installed and configured with dahdi_cfg. - "show timers" - verify that the new dahdi timer shows up. - timer_test 10 10 dahdi - timer_test 20 10 dahdi - timer_test 40 10 dahdi - timer_test 60 10 dahdi - timer_test 120 10 dahdi
Using the timer: - Into any config that allows for specifying a timer name, use "dahdi". This is especially useful for mod_conference.
Todo: - See TODO comments in mod_dahdi_timer.c . Exception handling may not be robust, and may fail spectacularly in systems with no configured Dahdi T1 board. - Comments at the top of mod_dahdi_timer.c may need to be expanded to include the normal FreeSWITCH copyright notices, etc.
On Mon, Oct 21, 2013 at 2:59 PM, Moises Silva <moises.silva@gmail.com>wrote:
On Mon, Oct 21, 2013 at 1:45 PM, Michael Jerris <mike@jerris.com> wrote:
Or for that matter, to put it right in to mod_freetdm.
Agreed, that would be better.
Moy
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
On Tue, Oct 22, 2013 at 11:51 AM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
Moises,
Does libsangoma have a way to open a generic socket to get timing from in this manner? Ideally if we could get this into mod_freetdm we could make it auto set the timer_name variable in the new channels from the tdm source and have mod_conference auto set the timer as well if the first caller has a certain variable set.
We do not have that currently, but it's close. The kernel code is there (we have it for our DAHDI interface), just need to find a bit of time to add some libsangoma calls to use it, so I'd like to get this integrated in a way later on we can just add the timing interface for ftdm_wanpipe. Ideally freetdm would have its own timing interface and then delegate to the IO module (in this case DAHDI would have an implementation working) where Wanpipe's implementation would come a bit later. Moy *Moises Silva **Manager, Software Engineering*** msilva@sangoma.com Sangoma Technologies 100 Renfrew Drive, Suite 100, Markham, ON L3R 9R6 Canada t. +1 800 388 2475 (N. America) t. +1 905 474 1990 x128 f. +1 905 474 9223 **<http://www.sangoma.com/contact?utm_source=signature&utm_medium=email&utm_campaign=email+signatures> Products<http://sangoma.com/products?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Solutions<http://sangoma.com/solutions?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Events<http://sangoma.com/about_us/events?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Contact<http://www.sangoma.com/contact?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Wiki<http://wiki.sangoma.com/?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Facebook<http://www.facebook.com/pages/Sangoma-VoIP-Cards/43578453335?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Twitter<http://www.twitter.com/sangoma?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures>`| | YouTube<http://www.youtube.com/sangomatechnologies?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures>
So the freetdm io submods would need to export a timing device that could be used for this. Maybe just something that returns an open file handle? so the code from his new mod that sets up the dahdi socket could be moved into ftdm_mod_zt in a func that returns a fd and mod_freetdm could add the code from his mod only use freetdm_get_timing_socket("dahdi") or something and get the fd... and most of the rest is the same right? Other options? On Wed, Oct 23, 2013 at 4:55 PM, Moises Silva <moises.silva@gmail.com>wrote:
On Tue, Oct 22, 2013 at 11:51 AM, Anthony Minessale < anthony.minessale@gmail.com> wrote:
Moises,
Does libsangoma have a way to open a generic socket to get timing from in this manner? Ideally if we could get this into mod_freetdm we could make it auto set the timer_name variable in the new channels from the tdm source and have mod_conference auto set the timer as well if the first caller has a certain variable set.
We do not have that currently, but it's close. The kernel code is there (we have it for our DAHDI interface), just need to find a bit of time to add some libsangoma calls to use it, so I'd like to get this integrated in a way later on we can just add the timing interface for ftdm_wanpipe.
Ideally freetdm would have its own timing interface and then delegate to the IO module (in this case DAHDI would have an implementation working) where Wanpipe's implementation would come a bit later.
Moy
*Moises Silva **Manager, Software Engineering***
msilva@sangoma.com
Sangoma Technologies
100 Renfrew Drive, Suite 100, Markham, ON L3R 9R6 Canada
t. +1 800 388 2475 (N. America)
t. +1 905 474 1990 x128
f. +1 905 474 9223
**<http://www.sangoma.com/contact?utm_source=signature&utm_medium=email&utm_campaign=email+signatures>
Products<http://sangoma.com/products?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Solutions<http://sangoma.com/solutions?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Events<http://sangoma.com/about_us/events?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Contact<http://www.sangoma.com/contact?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Wiki<http://wiki.sangoma.com/?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Facebook<http://www.facebook.com/pages/Sangoma-VoIP-Cards/43578453335?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures> | Twitter<http://www.twitter.com/sangoma?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures>`| | YouTube<http://www.youtube.com/sangomatechnologies?utm_source=signature&utm_medium=email&utm_campaign=email%2Bsignatures>
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org googletalk:conf+888@conference.freeswitch.org pstn:+19193869900
OK, Michael, I'm swamped with work so I won't get to this right away, but I'll do that. Thanks, Bob On Mon, Oct 21, 2013 at 11:15 AM, Michael Jerris <mike@jerris.com> wrote:
Sure, except obviously we shouldn't hardcode the change to mod_conference, we should make the timer an option in mod_conference config. Toss it on out in jira.
Thanks Mike
On Oct 18, 2013, at 10:32 AM, Bob Hartwig <bobjects@gmail.com> wrote:
I ran across a problem with a Dahdi-based FreeTDM system a few weeks ago. Because the timer for mod_conference was not synchronized to the T1 clock source, there was significant periodic on-conference noise. The problem was not that the "soft" timer was inaccurate; on the contrary, it was a very accurate 1 mS timer in a system that had a pretty inaccurate T1 clock coming in.
My solution was to create a new "mod_dahdi_timer", which derives the ~1 mS timer from 8 ticks of the 8 kHz /dev/dahdi/timer device. Then a one-line change to mod_conference.c to change "soft" to "dahdi", and the conference sounds perfectly clean.
Is this something that the FS community wants? It's pretty specific - probably only of interest to users of Dahdi-based FreeTDM systems, but for them, it may be very useful. If so, how do I go about contributing it? I've never contributed any source to the FS community before.
Thanks, Bob
_________________________________________________________________________ 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev 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-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
participants (6)
-
Anthony Minessale
-
Bob Hartwig
-
Bob Hartwig
-
Michael Jerris
-
Moises Silva
-
Steven Ayre