AllowedIP.txt (mandatory) — a list of IP addresses or IP subnets from which incoming requests are allowed, including downloading MP3 conversation recordings
Example:
127.0.0.1
10.0.0.0/8
192.168.0.0/16
172.16.0.0/12
185.26.97.141
n.b. to access from all addresses, use
0.0.0.0/1
128.0.0.0/1
AuthKeys.csv (mandatory) — text file for creating unique access keys for incoming requests
Example:
key;email;name;access
JNJP5UqGDhX89ue2POsb1Kto;[email protected];Creatio;full
np88bAodJl;Zendesk;Zendesk;read
dfg98d7fgd9f87ghgf;[email protected];Admin;system
key - a random set of characters of any length (uppercase, lowercase and numbers) for WebAPI {{AccessKey}}
email - string for identifying requests in the log file (nothing is sent to the address)
name - for human convenience (not used)
access - access level (full, read, system)
Users.csv (optional) — text file file containing a list of extensions with an end-point URL for sending a Webhook
EXT;COMMENT
101;1Webhook
102;2Webhook
Events.csv (optional) — text file that describes the name of the events for the webhook generator
ID;NAME;COMMENT
0;ringing;Receiving a call to an IVR, queue, or extension
1;dialing;The beginning of an outgoing call
2;incoming;End of an incoming call
3;outgoing;End of an outgoing call
4;pickupincoming;The event of picking up the handset during incoming call
5;pickupoutgoing;The event of picking up the handset during outgoing call
6;addrecord;Adding Record of conversation
7;untraceable;Untraceable call
8;fake;Service call (ingnore this calls)
TCXWebAPI.ini (mandatory) — main config file WebAPI. Don't forget to restart the service after the changes
[General]
;The name of the customer for collecting logs by the developer
SCRIPT_CLIENT = Customer
;email for sending emails with an error message or an unexpected status. null for disable
EMAIL_FOR_ERR = [email protected]
;optional SMTP server parameters
SMTP_SERVER = mail.ee
SMTP_PORT = 465
SMTP_SEQURE = 1
SMTP_LOGIN = [email protected]
SMTP_PASS = B8vhN8uXP3
FROM_EMAIL = [email protected]
LOG_ON = 1
;path to the log file - CFD-TCXWebAPI.log
LOG_FILE_PATH = /var/www/webapi
MAX_LOG_FILE_SIZE = 20000000
MAX_LOG_RECORDS = 10000
HTTP_STATISTIC_INTERVAL = 1
SQL_STATISTIC_INTERVAL = 1
;minimum length of the tracing external number
MIN_NUM_LENGTH = 6
;the time during which the recording of the conversation is expected to appear in the 3CX database in ms
DB_TIMEOUT = 40000
;the interval between repeated requests to the 3CX database with conversation recordings in ms
DB_REQUESTS_INTERVAL = 250
;path to 3CXPhoneSystem.ini
TCX_INI_PATH = /var/lib/3cxpbx/Bin
;path to MP3 records
MP3_PATH = /var/www/webapi/mp3
;list of untracing extensions - Conference, PIN Protect IVR, Fax, Voicemail
UNTRACING_DN = 7000,7777,8888,9999
;optional parameter. The default value is 0. The number of random characters at the end of the MP3 file name for security reasons
MP3_RANDOM_CHARS = 0
;optional parameter. By default is RU. English (EN) and Spanish (ES)
LANGUAGE = EN
;DB Creation SecureKey
API_SPECIAL_KEY=Vm8ck9ms1j
;AI processing method, summary
AI_TYPE = transcription
;delay before the first check of the speech-to-text translation, default 7000 milliseconds
AI_DELAY = 7000
;delays between subsequent speech-to-text translation checks, default 2000 milliseconds
AI_INTERVAL = 2000
;maximum waiting time for speech to text translation, default 600000 milliseconds
AI_TIMEOUT = 600000
[Webhooks]
;webhook url example https://webhook.site/8ef55e62-5b10-4fdb-a65f-f2ef8bf4e47d
WEBHOOK_URL = https://webhook.site/8ef55e62-5b10-4fdb-a65f-f2ef8bf4e47d
;webhook URL requests (due to Users.csv)
WEBHOOK_URL_2 = https://webhook.site/a5121792-cf31-438d-ab9b-eed5bd96307fhttps://webhook.site/a5121792-cf31-438d-ab9b-eed5bd96307fhttps://webhook.site/a5121792-cf31-438d-ab9b-eed5bd96307f
;send full call information in last request with MP3 record (1 - enable, 0 - disable)
RECORDING_FULL_INFO = 1
;field for transmitting additional parameters
CUSTOM_PARAMETERS = api-version%3D2016-10-01&sp%3D%2Ftriggers%2FWhen_a_HTTP_request_is_received%2Frun&sv%3D1.0&sig%3DMe5h9IIcrh4VDKm1nPHFRpawC4-mvIEDjssgLdZwS74
;webhook URL for records of conversations (if enabled)
WEBHOOK_POST_URL = https://webhook.site/8ef55e62-5b10-4fdb-a65f-f2ef8bf4e47d
;webhook URL requests (due to Users.csv)
WEBHOOK_POST_URL_2 = https://webhook.site/8ef55e62-5b10-4fdb-a65f-f2ef8bf4e47d
;POST = 1 for POST scheme , 0 for GET scheme
POST = 1
;webhook URL endpoint for mirror (shadow) requests
WEBHOOK_URL_MONITOR = https://webhook.site/84602ecb-fa36-43e6-8567-b2bb282e3dee
WEBHOOK_POST_URL_MONITOR = https://webhook.site/84602ecb-fa36-43e6-8567-b2bb282e3dee
AUTH_BASIC = 0
AUTH_NAME = Baerer
AUTH_PASS = X-API-KEY:f38aa14e-fdbb-467d-af7d-20fa6271d28f
WEB_REQUEST_DEFAULT_TIMEOUT = 2500
WEB_REQUEST_SLA_TIMEOUT = 1500
;automatically delete all recordings from local recording folder older than 365 days
RECORDS_TIME_LIFE = 365
;00:00 time shift to start for deletion. By default is 120 minutes
DELETE_TIME_SHIFT = 120
;Upload MP3 files directly using Base64 (0 - link, 1 - base64)
MP3_TO_BASE64 = 0
;Loging user state history. If 127.0.0.1 user_state/phonesystem select * from public.operator_state_history
;For create a table use https://{{3CXFQDN}}/webapi/{{API_SPECIAL_KEY}}/table.create?name=operator_state_history
DBS_URL = 127.0.0.1
;Logging Webhook history. If 127.0.0.1 user_state/phonesystem select * from public.webhook_history
;For create a table use https://{{3CXFQDN}}/webapi/{{API_SPECIAL_KEY}}/table.create?name=webhook_history
DBL_URL = 127.0.0.1
_history
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article