queXS Installation Manual

Requirements (1.x.x branch)

Requirements (2.x.x branch)

  • Server
    • PHP version 5 or greater
    • MySQL version 5 or greater (with Timezone package installed) - more details here AND sql_mode="" (disable strict checking)
    • ADOdb
    • LimeSurvey 2.0.6 or greater (note there was a bug in LimeSurvey versions 3.15 to 3.17.8 which prevented queXS from operating correctly, please use a version outside this range) with:
      1. JSON-RPC enabled (under Configuration -> Global Settings -> Interfaces)
      2. IFrame embedding allowed: set to "Allow" (under Configuration -> Global Settings -> Security)
      3. The 'urlFormat' configuration directive set to 'path' not 'get' (this is the default anyway)
  • Client

Requirements for VoIP integration

  • Server
    • Asterisk server (for 0.9.x series, only tested with 1.4. For 1.0.x series, 1.6 is required)
      • originate privilege required for read and write in Asterisk manager.conf.
      • Example manager.conf:

        [general]
        enabled = yes
        port = 5038
        bindaddr = 0.0.0.0
        displayconnects=no ;only effects 1.6+

        [admin]
        secret = password
        deny=0.0.0.0/0.0.0.0
        permit=127.0.0.1/255.255.255.0
        read = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate
        write = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate

    • FreePBX recommended. queXS >= 1.3.0 can integrate with FreePBX for automatic operator extension configuration and management
  • Client
    • SIP or IAX client with auto answer (I recommend pjsua)

Installation

  1. Extract tar ball or zip file to a directory on your web server
  2. Make sure mySQL has the sql_mode="" (disable strict checking)
  3. Create the database structure by using the database/quexs.sql file on your mySQL database server
    • It is recommended to create a database user with privileges only to the queXS database
    • This user will also need SELECT permissions of the mysql timezone tables, example:
    • GRANT select on mysql.time_zone_transition_type to quexs;
      GRANT select on mysql.time_zone_transition to quexs;
      GRANT select on mysql.time_zone_leap_second to quexs;
      GRANT select on mysql.time_zone to quexs;
      GRANT select on mysql.time_zone_name to quexs;
  4. If you don't already have a config.inc.local.php file, copy the config.inc.local.php.default file to config.inc.local.php
  5. Edit the config.inc.local.php file to point to your database and your local web paths
  6. Browse to the admin directory of the queXS installation in a web browser to begin administering the queXS system