This document describes the configuration steps for installing the SOP API module 4.0.0+
Intended audience: installation and service delivery teams
Before you start
Differences with previous API versions
A new dependency has been introduced in this version of the SOP API module: Web Server module 1.0.0+. That module finetunes the web server configuration for better performance and reliability.
The queue logging daemon has been moved in net.Supervisor 1.4.4+. This means that to get queue reports, the installation of this module is necessary.
Compatibility mode vs. Secure mode
Compatibility mode provides backward compatibility with SOP API modules <= 4.0.0. This means that you can still access the API on the standard HTTP port 80, without authentication.
If you choose to use secure mode, keep in mind the following restrictions:
The API will only be available on HTTPS port 443, with an SSL connection.
External requests to the API on HTTP port 80 will be responded to with 403 - Forbidden. This means that you can still connect locally on the SOP without an SSL connection for use in combination with the GetXPath action in the callflow editor.
When connecting to the API, you need to authenticate yourself. You need to supply a valid username and password which exists in your user directory.
Certain API request require the correct username. E.g. the dbGetProfileParameters API request requires that the authenticated user is the owner of the extension the parameters are requested from.
Database Schema module >= 1.18.0
SOP Base module >= 1.4.1
Web Server module >= 1.0.0
Asterisk-1.2x module >= 2.32.2 OR Communication Server module >= 2.0.0
Navigate to: SMP Web interface > Advanced Menu > Modules configuration
Add the above specified modules and their minimal dependencies, and the API module;
Additionnaly, if you want to deploy the API module in secure mode, remember to set the Mode parameter in both the Web Server and the API module to secure;
Mark all these modules as INSTALL;
Click Install modules.
Note that when you are using net.Desktop, you have to reinstall this module as well when you are using secure mode. This module also has a parameter with the same mode name.
When using Secure mode it is imperative that all modules use secure mode. You cannot mix secure and compatibility mode. Either everything uses compatibility mode or secure mode. Here's a list of modules that require the parameters mode to be set to the same value in all of them:
With the version 4.1.5 of the API, there is a compatibility break concerning the CallerdIDs for some transfers. The version 4.1.5 and above of the API are only supported if the option "o" has been removed from the global parameter "DialAsteriskOption".
To ensure that the COLP is correct on both the phone and net.Desktop, a setConnectedLineUpdate action must be executed before the call is sent outside.