|
|
|
@ -1,35 +1,278 @@ |
|
|
|
<!-- http://wiki.freeswitch.org/wiki/Mod_conference --> |
|
|
|
<!-- None of these paths are real if you want any of these options you need to really set them up --> |
|
|
|
<configuration name="conference.conf" description="Audio Conference"> |
|
|
|
<caller-controls/> |
|
|
|
|
|
|
|
<profiles> |
|
|
|
<profile name="default"> |
|
|
|
<param name="rate" value="16000"/> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<param name="energy-level" value="20"/> |
|
|
|
<!--<param name="member-flags" value="waste"/>--> |
|
|
|
<param name="caller-controls" value="none"/> |
|
|
|
<param name="sound-prefix" value=""/> |
|
|
|
<param name="ack-sound" value=""/> |
|
|
|
<param name="nack-sound" value=""/> |
|
|
|
<param name="muted-sound" value=""/> |
|
|
|
<param name="unmuted-sound" value=""/> |
|
|
|
<param name="alone-sound" value=""/> |
|
|
|
<param name="perpetual-sound" value=""/> |
|
|
|
<param name="moh-sound" value=""/> |
|
|
|
<param name="enter-sound" value=""/> |
|
|
|
<param name="exit-sound" value=""/> |
|
|
|
<param name="kicked-sound" value=""/> |
|
|
|
<param name="locked-sound" value=""/> |
|
|
|
<param name="is-locked-sound" value=""/> |
|
|
|
<param name="is-unlocked-sound" value=""/> |
|
|
|
<param name="pin-sound" value=""/> |
|
|
|
<param name="bad-pin-sound" value=""/> |
|
|
|
<param name="caller-id-name" value="Unknown"/> |
|
|
|
<param name="caller-id-number" value="5555555555"/> |
|
|
|
<param name="moh-sound" value="$${hold_music}"/> |
|
|
|
<!-- <param name="suppress-events" value="start-talking,stop-talking"/> --> |
|
|
|
<param name="comfort-noise" value="true"/> |
|
|
|
</profile> |
|
|
|
|
|
|
|
</profiles> |
|
|
|
<!-- Advertise certain presence on startup . --> |
|
|
|
<advertise> |
|
|
|
<room name="3001@$${domain}" status="FreeSWITCH"/> |
|
|
|
</advertise> |
|
|
|
|
|
|
|
<!-- These are the default keys that map when you do not specify a caller control group --> |
|
|
|
<!-- Note: none and default are reserved names for group names. Disabled if dist-dtmf member flag is set. --> |
|
|
|
<caller-controls> |
|
|
|
<group name="default"> |
|
|
|
<control action="mute" digits="0"/> |
|
|
|
<control action="deaf mute" digits="*"/> |
|
|
|
<control action="energy up" digits="9"/> |
|
|
|
<control action="energy equ" digits="8"/> |
|
|
|
<control action="energy dn" digits="7"/> |
|
|
|
<control action="vol talk up" digits="3"/> |
|
|
|
<control action="vol talk zero" digits="2"/> |
|
|
|
<control action="vol talk dn" digits="1"/> |
|
|
|
<control action="vol listen up" digits="6"/> |
|
|
|
<control action="vol listen zero" digits="5"/> |
|
|
|
<control action="vol listen dn" digits="4"/> |
|
|
|
<control action="hangup" digits="#"/> |
|
|
|
</group> |
|
|
|
</caller-controls> |
|
|
|
|
|
|
|
<!-- Profiles are collections of settings you can reference by name. --> |
|
|
|
<profiles> |
|
|
|
<!--If no profile is specified it will default to "default"--> |
|
|
|
<profile name="default"> |
|
|
|
<!-- Directory to drop CDR's |
|
|
|
'auto' means $PREFIX/logs/conference_cdr/<confernece_uuid>.cdr.xml |
|
|
|
a non-absolute path means $PREFIX/logs/<value>/<confernece_uuid>.cdr.xml |
|
|
|
absolute path means <value>/<confernece_uuid>.cdr.xml |
|
|
|
--> |
|
|
|
<!-- <param name="cdr-log-dir" value="auto"/> --> |
|
|
|
|
|
|
|
<!-- Domain (for presence) --> |
|
|
|
<param name="domain" value="$${domain}"/> |
|
|
|
<!-- Sample Rate--> |
|
|
|
<param name="rate" value="8000"/> |
|
|
|
<!-- Number of milliseconds per frame --> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<!-- Energy level required for audio to be sent to the other users --> |
|
|
|
<param name="energy-level" value="100"/> |
|
|
|
|
|
|
|
<!--Can be | delim of waste|mute|deaf|dist-dtmf waste will always transmit data to each channel |
|
|
|
even during silence. dist-dtmf propagates dtmfs to all other members, but channel controls |
|
|
|
via dtmf will be disabled. --> |
|
|
|
<!-- <param name="member-flags" value="waste"/> --> |
|
|
|
|
|
|
|
<!-- Name of the caller control group to use for this profile --> |
|
|
|
<!-- <param name="caller-controls" value="some name"/> --> |
|
|
|
<!-- Name of the caller control group to use for the moderator in this profile --> |
|
|
|
<!-- <param name="moderator-controls" value="some name"/> --> |
|
|
|
<!-- TTS Engine to use --> |
|
|
|
<!-- <param name="tts-engine" value="cepstral"/> --> |
|
|
|
<!-- TTS Voice to use --> |
|
|
|
<!-- <param name="tts-voice" value="david"/> --> |
|
|
|
|
|
|
|
<!-- If TTS is enabled all audio-file params beginning with --> |
|
|
|
<!-- 'say:' will be considered text to say with TTS --> |
|
|
|
<!-- Override the default path here, after which you use relative paths in the other sound params --> |
|
|
|
<!-- Note: The default path is the conference's first caller's sound_prefix --> |
|
|
|
<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/> |
|
|
|
<!-- File to play to acknowledge succees --> |
|
|
|
<!-- <param name="ack-sound" value="beep.wav"/> --> |
|
|
|
<!-- File to play to acknowledge failure --> |
|
|
|
<!-- <param name="nack-sound" value="beeperr.wav"/> --> |
|
|
|
<!-- File to play to acknowledge muted --> |
|
|
|
<param name="muted-sound" value="conference/conf-muted.wav"/> |
|
|
|
<!-- File to play to acknowledge unmuted --> |
|
|
|
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/> |
|
|
|
<!-- File to play if you are alone in the conference --> |
|
|
|
<param name="alone-sound" value="conference/conf-alone.wav"/> |
|
|
|
<!-- File to play endlessly (nobody will ever be able to talk) --> |
|
|
|
<!-- <param name="perpetual-sound" value="perpetual.wav"/> --> |
|
|
|
<!-- File to play when you're alone (music on hold)--> |
|
|
|
<param name="moh-sound" value="$${hold_music}"/> |
|
|
|
<!-- File to play when you join the conference --> |
|
|
|
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/> |
|
|
|
<!-- File to play when you leave the conference --> |
|
|
|
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> |
|
|
|
<!-- File to play when you are ejected from the conference --> |
|
|
|
<param name="kicked-sound" value="conference/conf-kicked.wav"/> |
|
|
|
<!-- File to play when the conference is locked --> |
|
|
|
<param name="locked-sound" value="conference/conf-locked.wav"/> |
|
|
|
<!-- File to play when the conference is locked during the call--> |
|
|
|
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/> |
|
|
|
<!-- File to play when the conference is unlocked during the call--> |
|
|
|
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.wav"/> |
|
|
|
<!-- File to play to prompt for a pin --> |
|
|
|
<param name="pin-sound" value="conference/conf-pin.wav"/> |
|
|
|
<!-- File to play to when the pin is invalid --> |
|
|
|
<param name="bad-pin-sound" value="conference/conf-bad-pin.wav"/> |
|
|
|
<!-- Conference pin --> |
|
|
|
<!-- <param name="pin" value="12345"/> --> |
|
|
|
<!-- <param name="moderator-pin" value="54321"/> --> |
|
|
|
<!-- Max number of times the user can be prompted for PIN --> |
|
|
|
<!-- <param name="pin-retries" value="3"/> --> |
|
|
|
<!-- Default Caller ID Name for outbound calls --> |
|
|
|
<param name="caller-id-name" value="$${outbound_caller_name}"/> |
|
|
|
<!-- Default Caller ID Number for outbound calls --> |
|
|
|
<param name="caller-id-number" value="$${outbound_caller_id}"/> |
|
|
|
<!-- Suppress start and stop talking events --> |
|
|
|
<!-- <param name="suppress-events" value="start-talking,stop-talking"/> --> |
|
|
|
<!-- enable comfort noise generation --> |
|
|
|
<param name="comfort-noise" value="true"/> |
|
|
|
<!-- Uncomment auto-record to toggle recording every conference call. --> |
|
|
|
<!-- Another valid value is shout://user:pass@server.com/live.mp3 --> |
|
|
|
<!-- |
|
|
|
<param name="auto-record" value="$${recordings_dir}/${conference_name}_${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/> |
|
|
|
--> |
|
|
|
|
|
|
|
<!-- IVR digit machine timeouts --> |
|
|
|
<!-- How much to wait between DTMF digits to match caller-controls --> |
|
|
|
<!-- <param name="ivr-dtmf-timeout" value="500"/> --> |
|
|
|
<!-- How much to wait for the first DTMF, 0 forever --> |
|
|
|
<!-- <param name="ivr-input-timeout" value="0" /> --> |
|
|
|
<!-- Delay before a conference is asked to be terminated --> |
|
|
|
<!-- <param name="endconf-grace-time" value="120" /> --> |
|
|
|
<!-- Can be | delim of wait-mod|audio-always|video-bridge|video-floor-only |
|
|
|
wait_mod will wait until the moderator in, |
|
|
|
audio-always will always mix audio from all members regardless they are talking or not --> |
|
|
|
<!-- <param name="conference-flags" value="audio-always"/> --> |
|
|
|
<!-- Allow live array sync for Verto --> |
|
|
|
<!-- <param name="conference-flags" value="livearray-sync"/> --> |
|
|
|
</profile> |
|
|
|
|
|
|
|
<profile name="wideband"> |
|
|
|
<param name="domain" value="$${domain}"/> |
|
|
|
<param name="rate" value="16000"/> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<param name="energy-level" value="100"/> |
|
|
|
<!-- <param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/> --> |
|
|
|
<param name="muted-sound" value="conference/conf-muted.wav"/> |
|
|
|
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/> |
|
|
|
<param name="alone-sound" value="conference/conf-alone.wav"/> |
|
|
|
<param name="moh-sound" value="$${hold_music}"/> |
|
|
|
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/> |
|
|
|
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> |
|
|
|
<param name="kicked-sound" value="conference/conf-kicked.wav"/> |
|
|
|
<param name="locked-sound" value="conference/conf-locked.wav"/> |
|
|
|
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/> |
|
|
|
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.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="true"/> |
|
|
|
<!-- <param name="tts-engine" value="flite"/> --> |
|
|
|
<!-- <param name="tts-voice" value="kal16"/> --> |
|
|
|
</profile> |
|
|
|
|
|
|
|
<profile name="ultrawideband"> |
|
|
|
<param name="domain" value="$${domain}"/> |
|
|
|
<param name="rate" value="32000"/> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<param name="energy-level" value="100"/> |
|
|
|
<!-- <param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/> --> |
|
|
|
<param name="muted-sound" value="conference/conf-muted.wav"/> |
|
|
|
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/> |
|
|
|
<param name="alone-sound" value="conference/conf-alone.wav"/> |
|
|
|
<param name="moh-sound" value="$${hold_music}"/> |
|
|
|
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/> |
|
|
|
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> |
|
|
|
<param name="kicked-sound" value="conference/conf-kicked.wav"/> |
|
|
|
<param name="locked-sound" value="conference/conf-locked.wav"/> |
|
|
|
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/> |
|
|
|
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.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="true"/> |
|
|
|
|
|
|
|
<!-- <param name="conference-flags" value="video-floor-only|rfc-4579|livearray-sync|auto-3d-position|transcode-video|minimize-video-encoding"/> --> |
|
|
|
|
|
|
|
<!-- <param name="video-mode" value="mux"/> --> |
|
|
|
<!-- <param name="video-layout-name" value="3x3"/> --> |
|
|
|
<!-- <param name="video-layout-name" value="group:grid"/> --> |
|
|
|
<!-- <param name="video-canvas-size" value="1280x720"/> --> |
|
|
|
<!-- <param name="video-canvas-bgcolor" value="#333333"/> --> |
|
|
|
<!-- <param name="video-layout-bgcolor" value="#000000"/> --> |
|
|
|
<!-- <param name="video-codec-bandwidth" value="2mb"/> --> |
|
|
|
<!-- <param name="video-fps" value="15"/> --> |
|
|
|
<!-- <param name="video-auto-floor-msec" value="100"/> --> |
|
|
|
|
|
|
|
|
|
|
|
<!-- <param name="tts-engine" value="flite"/> --> |
|
|
|
<!-- <param name="tts-voice" value="kal16"/> --> |
|
|
|
</profile> |
|
|
|
|
|
|
|
<profile name="cdquality"> |
|
|
|
<param name="domain" value="$${domain}"/> |
|
|
|
<param name="rate" value="48000"/> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<param name="energy-level" value="100"/> |
|
|
|
<!-- <param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/> --> |
|
|
|
<param name="muted-sound" value="conference/conf-muted.wav"/> |
|
|
|
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/> |
|
|
|
<param name="alone-sound" value="conference/conf-alone.wav"/> |
|
|
|
<param name="moh-sound" value="$${hold_music}"/> |
|
|
|
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/> |
|
|
|
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> |
|
|
|
<param name="kicked-sound" value="conference/conf-kicked.wav"/> |
|
|
|
<param name="locked-sound" value="conference/conf-locked.wav"/> |
|
|
|
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/> |
|
|
|
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.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="true"/> |
|
|
|
|
|
|
|
<!-- <param name="conference-flags" value="video-floor-only|rfc-4579|livearray-sync|auto-3d-position|minimize-video-encoding"/> --> |
|
|
|
|
|
|
|
<!-- <param name="video-mode" value="mux"/> --> |
|
|
|
<!-- <param name="video-layout-name" value="3x3"/> --> |
|
|
|
<!-- <param name="video-layout-name" value="group:grid"/> --> |
|
|
|
<!-- <param name="video-canvas-size" value="1920x1080"/> --> |
|
|
|
<!-- <param name="video-canvas-bgcolor" value="#333333"/> --> |
|
|
|
<!-- <param name="video-layout-bgcolor" value="#000000"/> --> |
|
|
|
<!-- <param name="video-codec-bandwidth" value="2mb"/> --> |
|
|
|
<!-- <param name="video-fps" value="15"/> --> |
|
|
|
|
|
|
|
</profile> |
|
|
|
|
|
|
|
<profile name="video-mcu-stereo"> |
|
|
|
<param name="sound-prefix" value="$${sounds_dir}/en/us/callie"/> |
|
|
|
<param name="domain" value="$${domain}"/> |
|
|
|
<param name="rate" value="48000"/> |
|
|
|
<param name="channels" value="2"/> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<param name="energy-level" value="200"/> |
|
|
|
<!-- <param name="tts-engine" value="flite"/> --> |
|
|
|
<!-- <param name="tts-voice" value="kal16"/> --> |
|
|
|
<param name="muted-sound" value="conference/conf-muted.wav"/> |
|
|
|
<param name="unmuted-sound" value="conference/conf-unmuted.wav"/> |
|
|
|
<param name="alone-sound" value="conference/conf-alone.wav"/> |
|
|
|
<param name="moh-sound" value="local_stream://stereo"/> |
|
|
|
<param name="enter-sound" value="tone_stream://%(200,0,500,600,700)"/> |
|
|
|
<param name="exit-sound" value="tone_stream://%(500,0,300,200,100,50,25)"/> |
|
|
|
<param name="kicked-sound" value="conference/conf-kicked.wav"/> |
|
|
|
<param name="locked-sound" value="conference/conf-locked.wav"/> |
|
|
|
<param name="is-locked-sound" value="conference/conf-is-locked.wav"/> |
|
|
|
<param name="is-unlocked-sound" value="conference/conf-is-unlocked.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="video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding"/> |
|
|
|
<param name="video-mode" value="mux"/> |
|
|
|
<param name="video-layout-name" value="3x3"/> |
|
|
|
<param name="video-layout-name" value="group:grid"/> |
|
|
|
<param name="video-canvas-size" value="1920x1080"/> |
|
|
|
<param name="video-canvas-bgcolor" value="#333333"/> |
|
|
|
<param name="video-layout-bgcolor" value="#000000"/> |
|
|
|
<param name="video-codec-bandwidth" value="1mb"/> |
|
|
|
<param name="video-fps" value="15"/> |
|
|
|
<param name="video-no-video-avatar" value="/etc/kazoo/images/no_video_avatar.png"/> |
|
|
|
</profile> |
|
|
|
|
|
|
|
|
|
|
|
<profile name="sla"> |
|
|
|
<param name="domain" value="$${domain}"/> |
|
|
|
<param name="rate" value="16000"/> |
|
|
|
<param name="interval" value="20"/> |
|
|
|
<param name="caller-controls" value="none"/> |
|
|
|
<param name="energy-level" value="200"/> |
|
|
|
<param name="moh-sound" value="silence"/> |
|
|
|
<param name="comfort-noise" value="true"/> |
|
|
|
</profile> |
|
|
|
|
|
|
|
</profiles> |
|
|
|
</configuration> |