Good afternoon, all. I haven’t been on this forum in so long that my account was apparently blown away. But, just getting back into Asterisk after a long time away (I think v12 was when I touched it last).
I’ve compiled and installed Asterisk v22 on a Raspberry Pi, and have been playing around with it for this project I’m working on, and run into a snag with MultiCast sending. Everything I can find shows I should be able to send the broadcast with “Dial(MulticastRTP/basic/:”), but every time I do, it fails saying the channel isn’t recognized. Indeed, Show ChannelTypes doesn’t have Multicast in it, yet Modules Show indicates that res_rtp_multicast.so is loaded and ready.
I’m assuming at this point that I just need to put something in a config file someware to make it appear, but can’t really find any documentation to indicate such (especially nothing that appears in line with more modern Asterisk versions).
By chance could someone possible give me some pointers on how I can get Asterisk able to send out MultiCast calls?
Thank you. Two additional questions (as I’ve not delved into MultiCast on here until now):
First, how can I change the user-agent exposed by Asteterisk on PJSip?
Second, everything I’ve been able to find suggests that I shouldn’t have to predefine any multicast devices or anything like that… That, dynamically, I should be able to simply originate a call to the MCast address/port and have it work. I further validated that the OS’s routing of said MCast would be out the proper interface (it shows that it was). So, doing a wireshark trace, I saw no activity with this origination event (which I feel like I should have):
channel originate “MulticastRTP/basic/239.239.255.255:49902” application PlayTones “620/5000”
Equally, Asterisk thinks the call was successful:
UE-Paging99*CLI> channel originate “MulticastRTP/basic/239.239.255.255:49902” application PlayTones “620/5000”
– Called basic/239.239.255.255:49902
– MulticastRTP/239.239.255.255:49902-0x7fa0068888 answered
> Launching PlayTones(620/5000) on MulticastRTP/239.239.255.255:49902-0x7fa0068888
Is there some sort of channel configuration that must occur which would then allows rtp.chan to send out this traffic? (because every indication is that it’s just swallowing the traffic and not actually sending it to the network)?
The global section provides a user_agent option[1].
There is no further configuration required in Asterisk. Does “rtp set debug on” show RTP traffic being sent? Additionally you need to ensure there is a timer present for that to work as no media will be incoming, timing can be tested using the “timing test” CLI command.
Debug for RTP shows nothing. With it on and core verbose and core debug at 10, literally nothing is added to the screen when I issue that ORIGINATE command. Further, a wireshark trace showed that MCast traffic not going out (others were for other things, just not the address I sent to).
Then confirm timing like I mentioned. Since you appear to be selectively loading modules, perhaps you don’t have a timer and thus tone generation can’t time.
SUCCESS! THANK YOU. At least now I’ve confirmed that network-wise everything is now working flawlessly. So I guess the only question is, can you think of a way that I could use the built-in tone generator instead of having to have actual files? (like, I don’t know, maybe define an endpoint at it’s MCast address then call the endpoint with the tone?)
I don’t know why direct tone generation isn’t working in the first place. You could see if sending it to dialplan that does an Answer, Playback of 1 second of silence, and then Playtones works. It may need a bit of audio at the start to send for some reason.
I’ll try that, thank you (good idea, as the “having a file to stream” would kind of “wake it up” and then once open, you can send other items to it). I may start a new thread with the tone portion if that doesn’t work (and actually that pesky user-agent, as my entry didn’t appear to work). Thank you so much for the guidance!