]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FS-11604: [Configuration] Improve Vanilla config.
authorAndrey Volk <andywolk@gmail.com>
Mon, 20 May 2019 17:32:41 +0000 (21:32 +0400)
committerAndrey Volk <andywolk@gmail.com>
Mon, 20 May 2019 20:03:14 +0000 (00:03 +0400)
conf/vanilla/autoload_configs/conference.conf.xml
conf/vanilla/autoload_configs/modules.conf.xml
conf/vanilla/autoload_configs/verto.conf.xml
conf/vanilla/dialplan/default.xml
conf/vanilla/dialplan/public.xml
conf/vanilla/sip_profiles/external.xml
conf/vanilla/sip_profiles/internal.xml
conf/vanilla/vars.xml

index d683c412271e8d27c614e36037778a0e1c19a676..b927d9b883803a9673dce726cc4425f44253a011 100644 (file)
       <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="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
+      <param name="video-auto-floor-msec" value="1000"/>
       <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-codec-bandwidth" value="3mb"/>
+      <param name="video-fps" value="30"/>
+      <!-- <param name="video-codec-config-profile-name" value="conference"/> -->
     </profile>
 
+    <profile name="video-mcu-stereo-720">
+      <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="$${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="false"/>
+      <param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
+      <param name="video-auto-floor-msec" value="1000"/>
+      <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="3mb"/>
+      <param name="video-fps" value="30"/>
+    </profile>
+
+    <profile name="video-mcu-stereo-480">
+      <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="$${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="false"/>
+      <param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
+      <param name="video-auto-floor-msec" value="1000"/>
+      <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="640x480"/>
+      <param name="video-canvas-bgcolor" value="#333333"/>
+      <param name="video-layout-bgcolor" value="#000000"/>
+      <param name="video-codec-bandwidth" value="3mb"/>
+      <param name="video-fps" value="30"/>
+    </profile>
+
+    <profile name="video-mcu-stereo-320">
+      <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="$${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="false"/>
+      <param name="conference-flags" value="livearray-json-status|json-events|video-floor-only|rfc-4579|livearray-sync|minimize-video-encoding|manage-inbound-video-bitrate|video-required-for-canvas|video-mute-exit-canvas|mute-detect"/>
+      <param name="video-auto-floor-msec" value="1000"/>
+      <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="480x320"/>
+      <param name="video-canvas-bgcolor" value="#333333"/>
+      <param name="video-layout-bgcolor" value="#000000"/>
+      <param name="video-codec-bandwidth" value="3mb"/>
+      <param name="video-fps" value="30"/>
+    </profile>
 
     <profile name="sla">
       <param name="domain" value="$${domain}"/>
index c5682e450319e9af8af46bba8bcdba3a6c445b87..8eff5fe263f64b6f7e443e9131edd4eec8669b71 100644 (file)
     <load module="mod_opus"/>
 
     <!-- File Format Interfaces -->
-    <!--<load module="mod_av"/>-->
+    <load module="mod_av"/>
     <load module="mod_sndfile"/>
     <load module="mod_native_file"/>
     <!--<load module="mod_opusfile"/>-->
index 771405308366986eebf90fd0dcdbe40dde64ec72..899aaeb6c2de50acdc722eeb40dc41bbe337f131 100644 (file)
       <param name="mcast-ip" value="224.1.1.1"/>
       <param name="mcast-port" value="1337"/>
       <param name="rtp-ip" value="$${local_ip_v4}"/>
-      <!--  <param name="ext-rtp-ip" value=""/> -->
+      <param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
       <param name="local-network" value="localnet.auto"/>
-      <param name="outbound-codec-string" value="opus,vp8"/>
-      <param name="inbound-codec-string" value="opus,vp8"/>
+      <param name="outbound-codec-string" value="opus,h264,vp8"/>
+      <param name="inbound-codec-string" value="opus,h264,vp8"/>
 
       <param name="apply-candidate-acl" value="localnet.auto"/>
       <param name="apply-candidate-acl" value="wan_v4.auto"/>
@@ -47,8 +47,8 @@
       <param name="blind-reg" value="false"/>
       <param name="rtp-ip" value="$${local_ip_v6}"/>
       <!--  <param name="ext-rtp-ip" value=""/> -->
-      <param name="outbound-codec-string" value="opus,vp8"/>
-      <param name="inbound-codec-string" value="opus,vp8"/>
+      <param name="outbound-codec-string" value="opus,h264,vp8"/>
+      <param name="inbound-codec-string" value="opus,h264,vp8"/>
 
       <param name="apply-candidate-acl" value="wan_v6.auto"/>
       <param name="apply-candidate-acl" value="rfc1918.auto"/>
index 08552ef2295cbf1140f34a46456a0225e4c0ffee..7f7ff6fa3563a29711b4f7ab62e3bd4596079079 100644 (file)
        <action application="answer"/>
        <action application="send_display" data="FreeSWITCH Conference|$1"/>
        <action application="set" data="conference_member_flags=join-vid-floor"/>
-       <action application="conference" data="$1-${domain_name}@video-mcu-stereo"/>
+       <action application="conference" data="$1@video-mcu-stereo"/>
       </condition>
     </extension>
 
     <extension name="cdquality_conferences">
       <condition field="destination_number" expression="^(35\d{2})$">
        <action application="answer"/>
-       <action application="conference" data="$1-${domain_name}@video-mcu-stereo"/>
+       <action application="conference" data="$1@video-mcu-stereo"/>
+      </condition>
+    </extension>
+
+    <extension name="cdquality_conferences_720">
+      <condition field="destination_number" expression="^(36\d{2})$">
+       <action application="answer"/>
+       <action application="conference" data="$1@video-mcu-stereo-720"/>
+      </condition>
+    </extension>
+
+    <extension name="cdquality_conferences_480">
+      <condition field="destination_number" expression="^(37\d{2})$">
+       <action application="answer"/>
+       <action application="conference" data="$1@video-mcu-stereo-480"/>
+      </condition>
+    </extension>
+
+    <extension name="cdquality_conferences_320">
+      <condition field="destination_number" expression="^(38\d{2})$">
+       <action application="answer"/>
+       <action application="conference" data="$1@video-mcu-stereo-320"/>
       </condition>
     </extension>
 
index e44006e33b9316004d37ac3403e52436f86cee04..020bb62c80a6ac74e5981067ac7bf011cb96d1e0 100644 (file)
        <action application="transfer" data="$1 XML default"/>
       </condition>
     </extension>
+
+    <extension name="public_conference_extensions">
+      <condition field="destination_number" expression="^(3[5-8][01][0-9])$">
+       <action application="transfer" data="$1 XML default"/>
+      </condition>
+    </extension>
     
     <!--
        You can place files in the public directory to get included.
index dfc9504bcb6a22ac34bab35c6375652ad608586e..1bf1b04595c1804e9351cf5f5ba91b0335869070 100644 (file)
@@ -63,8 +63,8 @@
     -->
     <param name="rtp-ip" value="$${local_ip_v4}"/>
     <param name="sip-ip" value="$${local_ip_v4}"/>
-    <param name="ext-rtp-ip" value="auto-nat"/>
-    <param name="ext-sip-ip" value="auto-nat"/>
+    <param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
+    <param name="ext-sip-ip" value="$${external_rtp_ip}"/>
     <param name="rtp-timeout-sec" value="300"/>
     <param name="rtp-hold-timeout-sec" value="1800"/>
     <!--<param name="enable-3pcc" value="true"/>-->
index 5bee06dbfd603c44dd5c1420cc4ae38305e78326..3205e179b973e96b786b63110bacb6fe2664263f 100644 (file)
          auto                  - Use guessed ip.
          auto-nat              - Use ip learned from NAT-PMP or UPNP
     -->
-    <param name="ext-rtp-ip" value="auto-nat"/>
-    <param name="ext-sip-ip" value="auto-nat"/>
+    <param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
+    <param name="ext-sip-ip" value="$${external_rtp_ip}"/>
 
     <!-- rtp inactivity timeout -->
     <param name="rtp-timeout-sec" value="300"/>
index b45267751fd99ec43ca691204d1062d9d9b31a55..387592c9782b70b6e21c7318750ab2f046a84ec0 100644 (file)
        127 - BV32
 
   -->
-  <X-PRE-PROCESS cmd="set" data="global_codec_prefs=OPUS,G722,PCMU,PCMA,VP8"/>
-  <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=OPUS,G722,PCMU,PCMA,VP8"/>
+  <X-PRE-PROCESS cmd="set" data="global_codec_prefs=OPUS,G722,PCMU,PCMA,H264,VP8"/>
+  <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=OPUS,G722,PCMU,PCMA,H264,VP8"/>
 
   <!--
       xmpp_client_profile and xmpp_server_profile
        If unspecified, the bind_server_ip value is used.
        Used by: sofia.conf.xml dingaling.conf.xml
   -->
-  <X-PRE-PROCESS cmd="set" data="external_rtp_ip=stun:stun.freeswitch.org"/>
+  <X-PRE-PROCESS cmd="stun-set" data="external_rtp_ip=stun:stun.freeswitch.org"/>
 
   <!-- external_sip_ip
       Used as the public IP address for SDP.
        If unspecified, the bind_server_ip value is used.
        Used by: sofia.conf.xml dingaling.conf.xml
   -->
-  <X-PRE-PROCESS cmd="set" data="external_sip_ip=stun:stun.freeswitch.org"/>
+  <X-PRE-PROCESS cmd="stun-set" data="external_sip_ip=stun:stun.freeswitch.org"/>
 
   <!-- unroll-loops
        Used to turn on sip loopback unrolling.
 
   <!-- Video Settings -->
   <!-- Setting the max bandwdith -->
-  <X-PRE-PROCESS cmd="set" data="rtp_video_max_bandwidth_in=1mb"/>
-  <X-PRE-PROCESS cmd="set" data="rtp_video_max_bandwidth_out=1mb"/>
+  <X-PRE-PROCESS cmd="set" data="rtp_video_max_bandwidth_in=3mb"/>
+  <X-PRE-PROCESS cmd="set" data="rtp_video_max_bandwidth_out=3mb"/>
 
   <!-- WebRTC Video -->
   <!-- Suppress CNG for WebRTC Audio -->