Announcing switchio and the friends-of-freeswitch group on Github
Hey all, This is to announce a new group a few of us ex-Sangoma people have created on Github: https://github.com/friends-of-freeswitch If any of you were familiar with Sangoma's project `switchy` this project has now been hard forked and evolved into this one: https://github.com/friends-of-freeswitch/switchio This new edition completely rewrites the core to use Python's 3.5+ new asyncio and coroutines and gets a performance boost due to dropping reliance on the ESL SWIG module. The project contains a full-blown auto-dialer and was originally built for stress testing using FreeSWICH clusters. The docs are still being updated after the recent rewrite so bear with us. Our vision for this group is to start aggregating FreeSWITCH related projects on Github into one place so as to provide a one-stop shop for community maintained tools. If anyone is interested in adding an existing project and joining the group fire us an email and we'll gladly welcome you! We'd also appreciate any opinions on or help with any of the projects if you find them useful or interesting to build-on. Currently our small crew is chatting on riot: https://riot.im/app/#/room/#freeswitch:matrix.org Most of us can also be found in the standard IRC and hipchat rooms. Thanks! Tyler Goodlet
If I understand this software correctly, seems like it is an ESL handling library. Seems like FreeSWITCH and openSIPS both really require ESL handler (controller) in most situations. Are there any plans to have one built-in to FreeSWITCH? Is switchio well supported? Reason I ask, is I bet that the whole community is likely coding their own ESL handlers or at less I was. Robert From: FreeSWITCH-users [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Tyler Goodlet Sent: Thursday, November 9, 2017 12:49 PM To: freeswitch-users@lists.freeswitch.org Subject: [Freeswitch-users] Announcing switchio and the friends-of-freeswitch group on Github Hey all, This is to announce a new group a few of us ex-Sangoma people have created on Github: https://github.com/friends-of-freeswitch<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ffriends-of-freeswitch&data=02%7C01%7Crmundkowsky%40ets.org%7Ce7737a6705234493913108d5281194d7%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636458978344802565&sdata=CSenqYV2bM8IAJfFxWQ9ujKjhVeAwurnUuavnb8nQ%2F0%3D&reserved=0> If any of you were familiar with Sangoma's project `switchy` this project has now been hard forked and evolved into this one: https://github.com/friends-of-freeswitch/switchio<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ffriends-of-freeswitch%2Fswitchio&data=02%7C01%7Crmundkowsky%40ets.org%7Ce7737a6705234493913108d5281194d7%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636458978344802565&sdata=thQdDKuhsKN5mYvHJj%2FaSpU%2BWwC5IdcekiojotNUWeY%3D&reserved=0> This new edition completely rewrites the core to use Python's 3.5+ new asyncio and coroutines and gets a performance boost due to dropping reliance on the ESL SWIG module. The project contains a full-blown auto-dialer and was originally built for stress testing using FreeSWICH clusters. The docs are still being updated after the recent rewrite so bear with us. Our vision for this group is to start aggregating FreeSWITCH related projects on Github into one place so as to provide a one-stop shop for community maintained tools. If anyone is interested in adding an existing project and joining the group fire us an email and we'll gladly welcome you! We'd also appreciate any opinions on or help with any of the projects if you find them useful or interesting to build-on. Currently our small crew is chatting on riot: https://riot.im/app/#/room/#freeswitch:matrix.org<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Friot.im%2Fapp%2F%23%2Froom%2F%2523freeswitch%3Amatrix.org&data=02%7C01%7Crmundkowsky%40ets.org%7Ce7737a6705234493913108d5281194d7%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636458978344802565&sdata=F1aBHW1uqifYms8cJ2p3tdNjNyC1qD%2B9RO90W%2Br2rzk%3D&reserved=0> Most of us can also be found in the standard IRC and hipchat rooms. Thanks! [https://ssl.gstatic.com/ui/v1/icons/mail/images/cleardot.gif] Tyler Goodlet ________________________________ This e-mail and any files transmitted with it may contain privileged or confidential information. It is solely for use by the individual for whom it is intended, even if addressed incorrectly. If you received this e-mail in error, please notify the sender; do not disclose, copy, distribute, or take any action in reliance on the contents of this information; and delete it from your system. Any other use of this e-mail is prohibited. Thank you for your compliance. ________________________________
Hey Robert, Indeed you're correct there are quite a few ESL client projects. Most of them are detailed on the wiki: https://freeswitch.org/confluence/display/FREESWITCH/mod_event_socket#mod_ev...
Are there any plans to have one built-in to FreeSWITCH?
There are a bunch already in the sources: https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/scripts Writing your own is a great exercise for sure but can be a lot of work to get right. After getting a protocol parser/handler working you have to deal with the async programming aspect - picking a framework for it / wrapping it in a sensible higher level API, etc.
I bet that the whole community is likely coding their own ESL handlers or at less I was
There's already a ton of mature projects for many languages (and frameworks within each language) so I don't know if that would be true (anymore). Currently the only place I've found that provides any kind of definitive list is the wiki. This is in fact the reason we've created the `friends-of-freeswitch` group - to try and gather at least the smaller projects on GitHub (and their authors) into one spot.
Is switchio well supported? By FreeSWITCH? Yes. The CI (which runs for each new change set) spawns the latest FS docker image from the sources and switchio runs its full test suite against it. In fact, there are tests disabled in switchio due to bugs discovered in FS / ESL (which we should really report).
Hope that helps :) Tyler Goodlet
Very helpful! Thanks! Robert From: FreeSWITCH-users [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Tyler Goodlet Sent: Monday, November 13, 2017 12:06 PM To: FreeSWITCH Users Help <freeswitch-users@lists.freeswitch.org> Subject: Re: [Freeswitch-users] Announcing switchio and the friends-of-freeswitch group on Github Hey Robert, Indeed you're correct there are quite a few ESL client projects. Most of them are detailed on the wiki: https://freeswitch.org/confluence/display/FREESWITCH/mod_event_socket#mod_event_socket-ExampleClients<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ffreeswitch.org%2Fconfluence%2Fdisplay%2FFREESWITCH%2Fmod_event_socket%23mod_event_socket-ExampleClients&data=02%7C01%7Crmundkowsky%40ets.org%7C8fb619e121ed4855685508d52ad66e09%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636462022815819127&sdata=jYR69D9PAzGPBi0qpphQu7dHlyoJXzUksc74T1BGtm0%3D&reserved=0>
Are there any plans to have one built-in to FreeSWITCH? There are a bunch already in the sources: https://freeswitch.org/stash/projects/FS/repos/freeswitch/browse/scripts<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Ffreeswitch.org%2Fstash%2Fprojects%2FFS%2Frepos%2Ffreeswitch%2Fbrowse%2Fscripts&data=02%7C01%7Crmundkowsky%40ets.org%7C8fb619e121ed4855685508d52ad66e09%7C0ba6e9b760b34fae92f37e6ddd9e9b65%7C0%7C0%7C636462022815819127&sdata=8GNtjY765ajT07mkVqtST8bKZy4iQyaqQ6NMwBwXgT8%3D&reserved=0> Writing your own is a great exercise for sure but can be a lot of work to get right. After getting a protocol parser/handler working you have to deal with the async programming aspect - picking a framework for it / wrapping it in a sensible higher level API, etc.
I bet that the whole community is likely coding their own ESL handlers or at less I was
There's already a ton of mature projects for many languages (and frameworks within each language) so I don't know if that would be true (anymore). Currently the only place I've found that provides any kind of definitive list is the wiki. This is in fact the reason we've created the `friends-of-freeswitch` group - to try and gather at least the smaller projects on GitHub (and their authors) into one spot.
Is switchio well supported? By FreeSWITCH? Yes. The CI (which runs for each new change set) spawns the latest FS docker image from the sources and switchio runs its full test suite against it. In fact, there are tests disabled in switchio due to bugs discovered in FS / ESL (which we should really report). Hope that helps :)
Tyler Goodlet ________________________________ This e-mail and any files transmitted with it may contain privileged or confidential information. It is solely for use by the individual for whom it is intended, even if addressed incorrectly. If you received this e-mail in error, please notify the sender; do not disclose, copy, distribute, or take any action in reliance on the contents of this information; and delete it from your system. Any other use of this e-mail is prohibited. Thank you for your compliance. ________________________________
On 10 November 2017 at 01:48, Tyler Goodlet <tgoodlet@gmail.com> wrote:
Hey all,
This is to announce a new group a few of us ex-Sangoma people have created on Github:
https://github.com/friends-of-freeswitch
If any of you were familiar with Sangoma's project `switchy` this project has now been hard forked and evolved into this one:
It's great to see switchy keep evolving. One thing that make me interested in switchy last time is it use of inbound socket to handle incoming call. So we try adopting the same approach. Haven't roll it out to production yet but our initial tests show it much more stable than using outbound socket to handle incoming call. Is there any technical explanation that can back up this approach ?
participants (3)
-
Kamal Mustafa
-
Mundkowsky, Robert
-
Tyler Goodlet