Prerequisite :
- OpenJDK 1.8 version should be installed on AsterCTI Server.
- cdr_manager.so module loaded in Asterisk and enabled as yes.
- Require port 9898,5656 and 7979 should be enable for AsterCTI Server and port 5038 for Asterisk Server.
- Support Soft phone or Sip based Hard Phone.
- There should be connectivity between AsterCTI and Asterisk server.
- Please make Backup of Server before installation.
Linux: This version works under any Linux flavour (i386, x86_64).
Asterisk: versions 1.6, 1.8, 10, 11 , 12 ,13,14,,15 and above with the manager interface enabled.
It also works on mobile platforms like IOS / Android.
Any modern browser with Javascript enabled. Internet Explorer 8 & up. Firefox 3. Safari. Opera. Chrome.
Required packages on AsterCTI Server :
Java (1.8 ) , PHP (5.6 to 8), MySQL, Web server (Apache etc.)
To install JDK 1.8 on Centos 8 or 9 use below code: sudo dnf install java-1.8.0-openjdk -y
Disabled Strict SQL mode (COPULSORY) :
- To check whether strict mode is enabled or not run the below sql:
LOGIN TO MYSQL - MYSQL -uroot -p
SHOW VARIABLES LIKE 'sql_mode';
- If one of the value is STRICT_TRANS_TABLES, then strict mode is enabled, else not. In my case it gave :
+--------------+------------------------------------------+ |Variable_name |Value | +--------------+------------------------------------------+ |sql_mode |STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION| +--------------+------------------------------------------+
- To disable strict mode goto directory:
cd /etc/my.cnf.d/
open file : mysql-clients.cnf using any editor
Add below code at bottom of the file as shown in below image and save it :[mysqld] sql_mode=""
And now restart Apache server and Mariadb Server using below code:service httpd restart service mariadb restart
- Check once again Sql Mode status using step 2.
it should look like this else AsterCTI won't work:
Install Below Dependencies On AsterCTI Server :
yum -y install php-gd php-imap php-ldap php-odbc php-mysqlnd php-mbstring php-pear php-xml php-xmlrpc php-soap curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel xml-rpc
Enable CDR On Asterisk (Important For Call Logs):
a) Go to /etc/asterisk/ on AsteriskPBX Server and find cdr_manager.conf, Open it and Change Value of enabled From no to yes as below:
; Asterisk Call Management CDR
;
[general]
enabled = yes
[mappings]
recordingfile=>recordingfile
b) Restart AsteriskPBX by following Command :
sudo /etc/init.d/asterisk restart
c) Check Cdr_manager is loaded successfully or not :
Goto Asterisk CLI by : asterisk -vr
Then,
cdr show status
You should see something like this:
pbx*CLI> cdr show status
Call Detail Record (CDR) settings
----------------------------------
Logging: Enabled
Mode: Simple
Log unanswered calls: No
Log congestion: No
* Registered Backends
-------------------
cdr_manager
Adaptive ODBC
AsterCTI Installation and Configuration :
STEP : 1 : Create Account On AsterCTI Website to Validate your Free/Paid Account.
Click Here to Create Account or Goto : https://astercti.techextension.com/web/signup
STEP 2 : Download AsterCTI For Centos 9 and 10 For Single Tenant : Click Here to Download and Extract it On Web Server Directory. (For Example : /var/www/html/)
OR you can direct download by : wget http://astercti.techextension.com:81/download/AsterCTI_stream.zip
Once you extract AsterCTI_stream.zip file you will get 2 things.
a) techextension folder, Don't rename folder in any case.
b) techextension.sql
STEP 3 : Create Database, Mysql User( techextension ) and Password (techextension)For AsterCTI.
a) Login to MySql Interface :
mysql -uroot -p |
b) Create Database "techextension" in Database By Following Command :
CREATE DATABASE techextension; |
c) Create MySql User "techextension" with Password "techextension"
CREATE USER 'techextension'@'localhost' IDENTIFIED BY 'techextension'; |
d) Grant All Preivillage to "techextension" user to Database "techextension" :
GRANT ALL PRIVILEGES ON techextension.* TO 'techextension'@'localhost'; |
e) In Putty go to : Apache folder (ex : cd /var/www/html/) and use below command
Import techextension.sql (From STEP 2) into "techextension" database.
mysql -utechextension -ptechextension techextension < techextension.sql |
STEP 4 : Create and Grant Permission to AMI user On AsteriskPBX :
a) Open manager.conf file present on Asterisk Server (/etc/asterisk).
b) Create One AMI user For AsterCTI as mentioned below :
[astercti]
secret = password_of_your_choice
;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,message
write = system,call,log,verbose,command,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate,message
writetimeout = 5000
Image Presentation :
c) Reload Asterisk Server By Command : `sudo /etc/init.d/asterisk restart`
STEP 5 : Open AsterCTI in Browser and Create Admin User :
a) let say your web server have ip : http://192.168.1.52, Open AsterCTI by : http://192.168.1.52/techextension
b) Create Admin Account On AsterCTI by filling below form. Please use same email used in STEP 1.
After Successfully registration, You(Admin) will redirect to License Page As Below :
STEP 6 : Run AsterCTI Service in Background :
a) Find out voip.service files at location - techextension/TechExtension_Service/services
b) Move voip.service file into /etc/systemd/system
c) voip.sh file should be in techextension/TechExtension_Service/services (Don't change location)
c) Goto : techextension/TechExtension_Service/services in terminal and enter `pwd` command. It will Give you path ( /var/www/html/techextension/TechExtension_Service/services)
d) copy above path and paste it into voip.service and voip.sh file as below screenshot respectively :
e) Run this Command - systemctl daemon-reload
f) Run this command - systemctl enable voip.service
f) Run AsterCTI Service By Command : service voip restart, it will validate your license.
g) Few Important Command for AsterCTI Service :
i. To Know Status : service voip status
ii. To Stop Service : service voip stop
STEP 7 : Add and Configure AMI User In AsterCTI.
a) Stop Voip Service Before Adding Asterisk AMI. As Mentioned in STEP 6.g.ii. (Command : service voip stop)
b) Open Create Asterisk Configuration page From Asterisk Configuration seen in left panel of AsterCTI. Insert AMI Details Created in STEP 4.b.
c) Restart AsterCTI Service : service voip restart.
d) Install AsterCTI Chrome Plugin For Click to Call and other useful Features.(Click Here to Download)
STEP 8 : Select Your Asterisk server in Profile.
Goto Admin Profile and select AsteriskIP, Channel and Context to start Asterisk Connection to AsterCTI.
NOTE :
Admin Log in URL :http://x.x.x.x/techextension/te-admin/login.php
Normal User Log in URL : http://x.x.x.x/techextension/login.php
Location of AsterCTI Log file : techextension/TechExtension_Service/logs/astercti.log
For CRM Configuration with AsterCTI, Please follow AsterCTI CRM Guide.
Installation And Configuration Of AsterCTI is Successfully Completed.