Multicast on Freeswitch
Hi! I'm working on a project of integration radios into VoIP network. Main task is SIP to Radio intercom using multicast streams. I already have a working solution, based on Cisco E&M and twisted pair WAVE. Since Wave is a little bit costly solution, I want to implement intercom using freeswitch. Main problem is that I'm not developer and just a network guy and I need help in implementation. I had some experience with multicast steams on Asterisk and I believe that freeswitch is more flexible than asterisk. First and most important question is about how is multicast implemented on freeswitch. Here is an example from the samples included with freeswitch: <extension name="rtp_multicast_page"> <condition field="destination_number" expression="^pagegroup$|^7243"> <action application="answer"/> <action application="esf_page_group"/> </condition> </extension> expression="^pagegroup$|^7243"> - what does this expression mean? Does it mean that dialer must be a member of a pagegroup? At the beggining I need to setup freeswitch to stream a SIP call, so applications like VLC could listen it. Best Regards, Aleksei Zjabkin IT lahendused \ IT solutions GSM +372 58055975 ------------------------- Telegrupp AS Tartu mnt. 63, 10115 Tallinn Eesti \ Estonia
Hi Alkesei, The expression part of the extension is a regular expression that will match against the number dialed to see if this extension should be run. I think there is a good bit about regular expressions on the wiki. What you have below will match if some either dials pagegroup or dials 7243. This part has nothing to do with paging, it just defines the number to dial to get there. What you are really interested in is the esf_page_group application. You are missing the data attribute which tells the application what to do. There can be up to four arguments in the data section. The first is the multicast address, the second is the audio port, the third is the control port (required by some devices), and the fourth is the time to live. This defaults at 1, but if you need to route these packets, you would have to increase the TTL. The last two arguments are optional. ie. <action application="esf_page_group" data="224.168.168.1 10000 6061 3"/> Will send an audio stream to 224.168.168.1:10000 with control on 6061 and a TTL of 3. This will let you transmit. You need some mechanism to receive the multicast audio from a radio. I read about someone writing a module that would let you use playback with an RTP stream. If you can pipe the rtp stream into a conference room, you can have multiple channels listening to the audio. You can change the expression to grab part of the number dialed and use that in the destination. For example, you could map the last digit or two of the number to the last octet of the IP address so that you can address a whole range of channels with a single extension block in your dialplan. I'm very interested in this idea - what are you using for hardware? How do you control PTT? Does the radio interface have some voice detection functionality, or is it transmitting any time there is a stream? Let me know how you make out. If you need help writing the dialplan, CC your response to tim AT communicate freely DOT net -Tim Aleksei Zjabkin wrote:
Hi!
I’m working on a project of integration radios into VoIP network. Main task is SIP to Radio intercom using multicast streams.
I already have a working solution, based on Cisco E&M and twisted pair WAVE. Since Wave is a little bit costly solution, I want to implement intercom using freeswitch.
Main problem is that I’m not developer and just a network guy and I need help in implementation. I had some experience with multicast steams on Asterisk and I believe that freeswitch is more flexible than asterisk.
First and most important question is about how is multicast implemented on freeswitch. Here is an example from the samples included with freeswitch:
<extension name="rtp_multicast_page">
<condition field="destination_number" expression="^pagegroup$|^7243">
<action application="answer"/>
<action application="esf_page_group"/>
</condition>
</extension>
* *
*expression="^pagegroup$|^7243"> - *what does this expression mean? Does it mean that dialer must be a member of a pagegroup?
At the beggining I need to setup freeswitch to stream a SIP call, so applications like VLC could listen it.
Best Regards,
Aleksei Zjabkin
IT lahendused \ IT solutions
GSM +372 58055975
-------------------------
Telegrupp AS
Tartu mnt. 63, 10115
Tallinn
Eesti \ Estonia
------------------------------------------------------------------------
_________________________________________________________________________ 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 (2)
-
Aleksei Zjabkin
-
Tim St. Pierre