24U Phone Companion 3.0 Server

Created by: Lukáš Liebzeit, Martin Vraný, Zdenek Hejl

1. Basic technical parameters

File names: 24uPhoneCompanionServer
Windows version: Only 64bit architecture. Windows 7 - 11.
MacOS version: macOS 10 or newer
SN product code and versions: Not protected
Supported phones: SNOM 300 and higher with firmware at least 8.7.5.35 supported
SNOM 300 and SNOM 715 tested
(If you have changed HTTP User, HTTP Password and the Administrator Password from the default value, hidden tags have to be disabled).

2. 24U Phone Companion Server Installation

It is not recommended to update the configuration and use the server through Phone Companion functions at the same time.

3. 24U Phone Companion Server Specification

24U STLI:

Command: Success message: Possible error messages: Examples:
STLI error_ind SUCCESS STLI STLI
BYE error_ind SUCCESS BYE. BYE
MakeCall error_ind SUCCESS MakeCall error_ind ERROR MakeCall MakeCall 101 102
AnswerCall error_ind SUCCESS AnswerCall error_ind ERROR AnswerCall AnswerCall 102
ClearConnection error_ind SUCCESS ClearConnection error_ind ERROR ClearConnection ClearConnection 102
MonitorStart error_ind SUCCESS MonitorStart error_ind ERROR MonitorStart MonitorStart 102
MonitorStop error_ind SUCCESS MonitorStop error_ind ERROR MonitorStop MonitorStop 102
TransferCall error_ind SUCCESS TransferCall error_ind ERROR TransferCall TransferCall 102
HoldCall error_ind SUCCESS HoldCall error_ind ERROR HoldCall HoldCall 102
RetrieveCall error_ind SUCCESS RetrieveCall error_ind ERROR RetrieveCall RetrieveCall 102
JSON string error_ind SUCCESS RawCommand error_ind ERROR RawCommand {“method” : “GET”, “resource” : “/restapi”}

To successfully provide the transfer for SNOM phones it is necessary to use TransferCall followed by MakeCall. Note: The phone must be monitored.

To retrieve a call from hold the RetrieveCall Raw Command should be called.

Channel:

Channel is a permanent network connection between Phone Companion Server and 24U PhoneCompanion Plug-In.

Hidden tags:

If you have changed HTTP User, HTTP Password or the Administrator Password from the default value, don’t enable hidden tags.

Configuration file 24uPhoneCompanionServer.txt:

Server will read the configuration file every 5 seconds.
In case the configuration has changed the server will update the information.

# Server uses this port to listen to connections. Default number is 26535  
serverPort = 26535  
  
# Change the log file path including the name to create logs at desired place. 
# Default path including the name is "24uPhoneCompanionServer.log"  
serverLogFilePath = 24uPhoneCompanionServer.log  
  
# Id of your provider. Possible values are: "ringcentral", "alliancephones" and "custom"  
providerId = ringcentral  
  
# Host name of the provider  
providerHostname = pbx.yourhostname.com    

# Port of the provider. Default is 443  
providerPort = 443    

# Client id of the provider  
providerClientId = dAvO1HZAXXXXXXXaTvx  

# Client secret of the provider  
providerClientSecret = ubJtxGDeS9a7OXXXXXXXXXXXcGWrRMSrXRc0hkb_M    

# Username of the provider  
providerUsername = 19XXXXXXX27  
  

# Password of the provider  
providerPassword = yourpassword  
  

# The security switch for the HTTP protocol. Possible values are: "HTTP" and "HTTPS"  
providerProtocol = HTTPS  
  

# SSL verification file name. Server will first search the certificates in the file, then those in the path  
providerSslVerificationFilename = /etc/ssl/cert.pem  
  

# SSL verification path  
providerSslVerificationPath = /etc/ssl  


# Minimum protocol version. 
# Currently supported versions are SSL3_VERSION, TLS1_VERSION, TLS1_1_VERSION and TLS1_2_VERSION  
providerMinProtocolVersion = TLS1_VERSION  
  

# Increase this number if you have troubles connecting to the provider  
providerVerifyDepth = 4  
  

# Please list all phones that should be controlled/monitored by Phone Companion Server, one per line. 
# For each phone you need to define: its extension, its IP address (with username and password if required) 
# and path (relative or absolute) to file containing phone configuration. 
# Different phone types or even individual phones of the same type can have different settings by specifying different phone configuration files. 
# Please use "snom.cfg" supplied in plugin's distribution archive for SNOM 715 phones or create a new phone configuration file. 
# More information about phone configuration file can be found in PhoneCompanionServer.html file.  

phone=101@X.X.X.X snom.cfg  
phone=102@X.X.X.X snom.cfg username password  

Phone configuration file description:

In phone configuration file you can customize behavior of phones or you can create configuration for new unsupported phones. 24U company can provide support only for supported phones. Please see “snom.cfg” supplied in distribution archive as an example for SNOM 715 phones.

Option: Description:
“protocol” the secure or not version of the HTTP protocol. Use HTTP or HTTPS
“port” the port number of the phone
“method” should be GET or POST
“resource” is typically the file name [and set of key-values (usually GET request)]
“content_type” the outgoing format of Your message, it can be left blank
“accept” the receiving parser format, it can be left blank
“body” the body can be a string or can have multiple set of key-values that will be necessary to set up the monitoring device
“onIncomingCall” an example of “monitorAutoConfiguration” which can have four or more notifications set up