Freeswitch Module
From OpenSimulator
(→FreeSwitch Install) |
|||
Line 4: | Line 4: | ||
Follow the instructions [http://wiki.freeswitch.org/wiki/Installation_Guide here] on how to compile from source. We need to enable two specific modules. | Follow the instructions [http://wiki.freeswitch.org/wiki/Installation_Guide here] on how to compile from source. We need to enable two specific modules. | ||
+ | ''' | ||
+ | please ensure you compile from the freeswitch trunk for now until we can post a minimum version number (there are known issues with older versions)''' | ||
When you get to the part in the instructions where it says "'''Edit modules.conf so that it will build the modules you desire.'''" edit the modules.conf file and uncomment out the entries for xml_curl and the siren14 codec | When you get to the part in the instructions where it says "'''Edit modules.conf so that it will build the modules you desire.'''" edit the modules.conf file and uncomment out the entries for xml_curl and the siren14 codec |
Revision as of 13:21, 22 April 2009
The FreeSwitch module enables voice in opensim with no changes required to the SL or Hippo clients (must be over 1.22 for SL and 0.5 for Hippo)
Contents |
FreeSwitch Install
Follow the instructions here on how to compile from source. We need to enable two specific modules. please ensure you compile from the freeswitch trunk for now until we can post a minimum version number (there are known issues with older versions)
When you get to the part in the instructions where it says "Edit modules.conf so that it will build the modules you desire." edit the modules.conf file and uncomment out the entries for xml_curl and the siren14 codec
codecs/mod_siren and xml_int/mod_xml_curl
FreeSwitch Config
Install and compile Freeswitch, making sure you enable the xml_curl module and also the siren14 codec.
enable mod_xml_curl
Next, do not forget to activate mod_xml_curl in /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml. mod_xml_curl is disabled by default on fresh install.
uncomment the lines...
<load module="mod_xml_curl"/>
and
<load module="mod_siren"/>
are uncommented
configure mod_xml_curl
the xml_curl module configuration should point to an opensim region that has the freeswitch voice module enabled (voice also needs to be enabled in the estate setting for all regions)
example xml_curl.conf.xml found in /usr/local/freeswitch/conf/autoload_configs
<configuration name="xml_curl.conf" description="cURL XML Gateway"> <bindings> <binding name="example"> <param name="gateway-url" value="http://youropensimregion:9000/api/freeswitch-config" bindings="directory"/> <param name="disable-100-continue" value="true"/> </binding> <binding name="local"> <param name="gateway-url" value="http://youropensimregion:9000/api/freeswitch-config" bindings="dialplan"/> <param name="disable-100-continue" value="true"/> </binding> </bindings> </configuration>
The /usr/local/freeswitch/conf/vars.xml requires modification to enable the siren14 codec
search within vars.xml for the global_codec_prefs and change the line to read
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM,G7221@32000h"/>
G7221@32000h is the siren14 codec
OpenSim Config
Add the following section to OpenSim.ini. You will also need to enable voice in the regions estate settings. Make sure the freeswitch server is started BEFORE bringing the region up.
[FreeSwitchVoice] enabled = true ;FreeSwitch server is going to contact us and ask us all ;sorts of things. freeswitch_server_user = freeswitch freeswitch_server_pass = password freeswitch_api_prefix = /api ;The IP address of your opensim voice region freeswitch_service_server = youropensimexternalIP ;the port your region is running on freeswitch_service_port = 9000 ;your freewitch IP address freeswitch_realm = 192.168.0.2 freeswitch_sip_proxy = 192.168.0.2:5060 freeswitch_attempt_stun = false freeswitch_stun_server = 192.168.0.2 freeswitch_echo_server = 192.168.0.2 freeswitch_echo_port = 50505 freeswitch_well_known_ip = 192.168.0.2 freeswitch_default_timeout = 5000 freeswitch_subscribe_retry = 120