Difference between revisions of "Telephone system:shoutcast streams"
(created telephone shoutcast stream dialplan sample) |
m (added category) |
||
Line 57: | Line 57: | ||
</profile> | </profile> | ||
</pre> | </pre> | ||
+ | |||
+ | [[Category:Telephony]] |
Revision as of 20:32, 10 March 2013
Synopsis
ACKspace has several shoutcast streams you can dial in to. To see the list of streams, see the dialplan
Normally, the streams are put in a local stream.loc file, but this will cause FS to open all streams, even when there are no listeners. Since we have so many, this is not an option.
Also, when you set a MOH per user, this will open the same stream simultaneously for each caller.
The setup mentioned below will start one stream for the first caller, and will close it after the last caller leaves.
implementation
dialplan
This sample is the 1301 to 1303, used for dialing in one of three rooms when a conference is happening. When there currently is no event, the SIT will be played
The users are muted, but also will there never be a moderator, which causes the other callers to listen to MOH indefinitely.
<extension name="event"> <condition field="destination_number" expression="^130([1-3])$"> <action application="answer"/> <!-- This is a moderated muted conference, which will give you the single MOH stream without moderator make sure moh is not set in the conference params, so we can set it here also, don't set the enter and leave (global) sounds, since it will reconnect the stream --> <!--action application="set" data="conference_moh_sound=shout://someserver/$1.mp3"/--> <action application="set" data="conference_moh_sound=tone_stream://$${sit}"/> <action application="conference" data="130$1@stream+flags{mute}"/> </condition> </extension>
conference.conf.xml profile
For this to work, a separate conference profile needs to be used: It doesn't have a MOH set, so it can be overridden at the dial plan. Also, it doesn't have announcements sound set, so the stream doesn't reconnect after a user enters or leaves.
<profile name="stream"> <param name="domain" value="$${domain}"/> <param name="rate" value="32000"/> <param name="interval" value="20"/> <param name="energy-level" value="300"/> <param name="muted-sound" value="conference/conf-muted.wav"/> <param name="unmuted-sound" value="conference/conf-unmuted.wav"/> <param name="pin-sound" value="conference/conf-pin.wav"/> <param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/> <param name="caller-id-name" value="$${outbound_caller_name}"/> <param name="caller-id-number" value="$${outbound_caller_id}"/> <param name="comfort-noise" value="false"/> <param name="conference-flags" value="wait-mod"/> <param name="caller-controls" value="none"/> </profile>