Freeswitch Adapter Installation

Install Immersitech Engage™ Adapter for Freeswitch

  1. Make a new directory called immersitech in your /usr/local/lib directory:
    sudo mkdir /usr/local/lib/immersitech
    
  2. Copy the following files from Immersitech into /usr/local/lib/immersitech :
    • immersitech_license_key.dat - This is the license file for the Immersitech Engage functionality. Note that if you do not have a license or your license expires, the program will still run except that features of the library will be permanently bypassed, effectively functioning like normal freeswitch without the Immersitech libraries.
    • room_config.json - This is the default room configuration file in JSON format. You can find more details about this file and how to customize your own room configurations later in the documentation.
    • imm_websocket_config.json - This is the default websocket configuration file. You can find more details about this file and how to custom it to work with your own server in the event manager documentation.
    • libimmersitech.so - The Immersitech library file
      Note that the default search path for all Immersitech core libraries is set to be /usr/local/lib/immersitech, though you can manually change the runtime link path of a shared object.
  3. Copy the following files from Immersitech into the folder /usr/local/freeswitch/mod/:
  • mod_conference.so - This is a modified mod_conference module that has the necessary modifications to connect Freeswitch to the Engage Core
  • mod_imm_adapter.so - This is the FreeSwitch Adapter library
  1. Copy the following file to /usr/local/freeswitch/conf/autoload_configs:
    • imm_adapter.conf.xml - This is the configuration file for the Immersitech libraries. Learn more about it in the Immersitech Configuration File section of this documentation.
  2. Enable the Immersitech Modules in Freeswitch:
    By default, only a few freeswitch modules are enabled. You can enable/disable these modules, including the Immersitech modules, in a configuration file. Edit /usr/local/freeswitch/conf/autoload_configs/modules.conf.xml and change as per your requirements. Please make sure the following Immersitech modules are loaded automatically by adding these calls to the file:

    <load module="mod_conference"/> 
    <load module="mod_imm_adapter"/>
    
  3. Edit your Freeswitch Dial-plan:
    Make sure that your freeswitch dial-plan uses conference profiles in conf/autoload_configs/conference.conf.xml that are set up to utilize 2 channels output and match the settings in your imm_adapter.conf.xml file.
    The following are the settings you must guarantee will be used per your freeswitch dial-plan:

    <param name="rate" value="48000"/>     <!-- Must match "imm_spatial_output_audio_sample_rate" -->
    <param name="channels" value="2"/>     <!-- Must be two channel output to hear 3D audio -->
    <param name="interval" value="20"/>    <!-- Must match "imm_spatial_output_audio_frames_per_buffer" -->