Call center how to restore the system from the backup file

By | Tutorials | No Comments

1、Make sure install the same version of asterCC system

Install asterCC please view:【Goto Page】
Tips: Afetr installed the sysytem, make sure to install the same module as the original system.

2、Transfer the backup file to the new server

Please read the detailed operation:【Goto Page】

3、Unzip the system backup file

Goto the directory where the wget command to download the file, execute the following command to unzip the system backup file:
tar -xzvf astercc_files.tar.gz

4、Restore the database

4.1、Unzip databases file

After unzip the system backup file, execute the following command to unzip databases file:
gunzip -c astercc_db.sql.gz > astercc_db.sql
When complete, get file astercc_db.sql is the database backup file.

4.2、Import of database backups

To import a database backup, you need to execute the following command:
mysql -u root -p astercc10 < XXXX.sql
The “astercc10” for the new server database name, file “XXXX.sql” is the database unzip file, here “astercc_db.sql”, so the command is:
mysql -u root -p astercc10 < astercc_db.sql
Finally, enter the new server MySQL password, the default is: astercc. The database will be imported. To this step, has not completely ended, if the old server database does not use the default database information, you need to set the new server configuration file manual changes:
4.2.1、File astercc.conf → [database] in the corresponding information to be modified,for example:”dbname”、”username”、”password” should be modify.
vim /opt/asterisk/scripts/astercc/astercc.conf
Call Center Restore
4.2.2、File astercc.conf → [statistics] in the corresponding information to be modified,for example:”dbname”、”dbpassword” should be modify.
vim /opt/asterisk/scripts/astercc/astercc.conf
Call Center Restore
4.2.3、File database.php -> DATABASE_CONFIG -> var $default — > “password”, “database” should be modified.
vim /var/www/html/asterCC/app/config/database.php
Call Center Restore

5、Use the directory in the backup package to overwrite the appropriate directory

Use the unzip backup file to overwrite the appropriate directory,need execute the following command:
\cp -rpf ./etc/* /etc
\cp -rpf ./opt/* /opt
\cp -rpf ./var/* /var

6、The system prompts you to regenerate the configuration file

Import the database backup is completed, the system related file overwrited, you need to reload the new server, find the “” file can be executed after it.

How to setting agent is hangup, the call center will automatically push the email or SMS.

By | Tutorials | No Comments

Tips: The “Hangup Action” is what happens automatically when the call ends. For example, hang up to send text messages to customers, or mail.

1、Setting Mail Server

Mail Server settings reference link:【To Link】

2、Setting SMS Server

SMS Server settings reference link:【To Link】

3、Create Templates

Templates settings reference link:【To Link】

4、Add Hangup Action


5、Hangup Action of the field description

Target:When the client state is set, an on-hook event is performed. “Agent Failed” refers to the customer answered, but the seat did not connect, the equivalent of missed events to hang up. Four other types of targets, “Open,” “Pending”, “Successful Submit”, “Failed Submit”. Only after called, tags customers, and save, this time will send the corresponding SMS or email.
Type:After the hangup, will to send the type of event, divided into SMS and mail.
Template:Select the template to send the message.

How to setting call center team and domain binding

By | Tutorials | No Comments

Note: AsterCC is a hosting system that can serve multiple customers at the same time. Each customer is managed from team in system, the team has its own unique identifier. In softphone registration, the username is formatted as a “Identity – device’s number”, such as “astercc-5000”. By default, when users login the system, they need to choose their own team, but in many cases customers don’t want to see all enabled team. The system provides the domain binding function to solve this problem, as follows.

1、How to set asterCC2.3-rc2 version prior to the system.

First need to open the domain binding function, edit the file /etc/astercc.conf, find the line login_route = team, delete the comment mark “;” to enable the option.

When use domain to login the system, you will see “Only the systemadmin login”, so only the system users can login through this page, as follows:

When you want login specify the team, you can use address (Identity: astercc) or (Identity: sonicwell).

Or use a second domain that resolves to that host, or

The user will be in own page to see the own team.

2、How to setting asterCC2.4-rc1 after the version of the system.

First, open the left management list and click 【System】->【Settings】-> “ADVANCED SETTINGS SYSTEM” tab, change the”Login Route” to “enable”, as follows:

When use domain to login the system, you will see “Only the systemadmin login”, so only the system users can login through this page, as follows:

When you want login specify the team, you can use address (Identity: astercc) or (Identity: sonicwell)

Or use a second domain that resolves to that host,

The user will be in own page to see the own team.

FAQ for Call Center System Usage (updated regularly)

By | Tutorials | No Comments

1、Q: How many agents and devices can the system support?
A: 2000 devices registered, but the more devices support need to do development.

2、Q: How many conference calls can be supported in the conference room?
A: We tested 30 people, but more didn’t test.

3、Q: The system support SIP phone to register system with TLS protocol?
A: support, reference method【Goto Page

4、Q:Can I set the number of calls per unit time on the trunk, or limit the total number of calls, when the number reaches a certain limit, this relay is not available?
A: The system does not have this feature, after the version will be supported.

5、Q: How to deal with historical data of cc10_curpbxcdrs table in the system?
A: At the time of the call due to unknown failure to produce error call records, these legacy data can not be processed, but you can view the astercc system log is what causes the failure.

6、The system modify license the largest agents, the login page prompt error 403, how to deal with?
A: The page return 403 error, the system agents more than the maximum number of agents authorized, so to delete the excess agents, you can log on to the admin account operation.

7、Q: How to clone trunks in system?
A: The need to upgrade the system to astercc2.6-rc1

8、Q: Voice mail to 100 after the no longer added?
A: In /etc/asterisk/voicemail.conf you can add maxmsg = 1000 fix it.

9、Q: When login WEB get information can not connect to the server, how to fix it?
A: The reference method【Goto Page

10、Q:”Agent details” as long as the show a few, each time to open it, it’s already set good, how to achieve this?
A: This is related to the current use of the browser cookie is set on the current browser, as long as not cleanup cookie will use the browser has been in force.。

11、Q: Afetr to make a score, the statistics’s “Rate Log” score records can not be displayed?
A: The reference method.【Goto Page

12、Q: Why the PBX records data is duplicated?
A: crontab-l check at * * * * * /opt/asterisk/scripts/astercc/astcc_historydata -d is running the two, delete one.

13、Q: AsterCC system Is there an offline use manual?
A: Yes,【Download

14、Q: How to set the bomb screen, Workorder status is to continue tracking state for default?
A: 【Campaigns】–> 【Basic】 there is a “Default Stateus”

15、Q: AsterCC system tts speech synthesis is not available?
A: AsterCC system tts voice synthesis based on google-related services, the service is not available, asterCC tts is no longer available.

16, Q: While “realtime” program is always down?
A: Direct execute /opt/asterisk/scripts/astercc/astcc_realtime to see what is wrong. Sometimes if the load large, realtime will automatically restart, the basic does not affect anything.

17, Q: The page prompt recycle all current condition data always failed?
A: This error prompt is WEB obtain message time out, but the process is running.

How to use ngrep for fast SIP packet analysis

By | Tutorials | No Comments

1、SIP debugging

AsterCC call center system is a system based on SIP communication, compared with the traditional telephone system, voice transmission based on IP network, so learn how to debug VoIP communications network administrators must master one of the skills. Here we will gradually introduce some VoIP debugging tools, hoping to help us better design, maintenance, voice communications and call center systems.

2、What’s ngrep

Ngrep is the network version of grep, used to filter specific information from the network, we learn how to use ngrep to debug SIP system.

3、Install and use ngrep

yum install -y ngrep

The most common command format for sip, as follows.

ngrep -dany -qWbyline "" port 5060

This command outputs all packets arriving on port 5060 of the server 5060 as the default port for sip so that all sip packets are output to the screen.
If we want to see the packets sent from/to the server, the command as follows.

ngrep -dany -qWbyline "" port 5060 and host

We can also use regex to filter specific information, for example we want view packets from astercc-1000 device.

ngrep -dany -qWbyline "astercc-1000" port 5060 and host

Use ngrep filter information with regex, for example only view SIP REGISTER packets.
ngrep -deth0 -qWbyline "^REGISTER" port 5060

Where ^ REGISTER represents a packet starting with REGISTER

We can also specify a NIC (eth0) for inquiries, for example.

ngrep -deth0 -qWbyline "astercc-1000" port 5060

[su_highlight]Note ngrep capture packet priority is large than iptables firewall, if ngrep see a package but asterisk can not see, it is iptables problem, you need to check the iptables settings.[/su_highlight][] [/]
Using ngrep we can also save the output to the specified file, the command format as follows.

ngrep -W byline -d eth0 port 5060 -O capture_file

The other two parameters are included.
  • -t : Displays the timestamp of each packet in year/month/day format.
  • -T : Prints the time in the format of + S.UUUUUU and is used to indicate the time difference between the two packages.

4、Asterisk’s SIP debugging

Asterisk’s check sip packets method, login linux system, connect to asterisk’s console.

asterisk -r

Open sip debug mode.

sip set debug on


Check specific IP

sip set debug ip

Close SIP debug mode.

sip set debug off

How to build a common contacts in virtual office

By | Tutorials | No Comments

Tips: This article tell how to build a common contacts for virtual office.

1、The common contacts in virtual office, list will show the contact information, similar to a phone book.


2、as follows to add it:【Call Center】–>【Common Contacts】–> Click the “Add” button


Team:  Specifies the contact’s scope

Group:  Specifies the contact’s range

Model Type:  Specifies the range of the contact

Model ID:  Specifies the contact’s range

Contact:  The name of the contact.

Phone:  Contact phone number for consultation or transfer

show phone:  Whether the agent can see the telephone number. (Does not affect the dial-up, a privacy protection)

Description:  A description of this contact.

Status:  A hint, visible to the agent, is often used in a virtual call center to inform the agent when this contact is suitable for contact.

3、【Virtual Office】–>【Customer】–>Edit the “virtual office” which you add –> click “Add AgentLink” as, follows:


4、In the virtual office page, the common contacts list.


5、As follows, you can click one of the iformation from list to transfer he.

Use tcpdump and wireshark to debug VoIP calls

By | Tutorials | No Comments

Tips: In some cases, the system environment is more complicated, we hope to get the complete call information, then we can use tcpdump access to network data, the use of wireshark for further analysis.

1、If don’t have tcpdump, please do as follows:
yum install -y tcpdump


2、The capture command is executed and the captured information is saved in a file.
tcpdump -i any -s 65535 -w internal.pcap

Indicates that packets received by any network interface are saved to the internal.pcap file.


3、Start tcpdump capturing packets:

tcpdump voip调试


4、After the implementation of the system will stop here, this time we can make a phone call, and then use “Ctrl+c” to end.

tcpdump voip调试

Tcpdump will output some capturing packet information, so tcpdump’s mission is complete, download the pcap file and turn the wireshark.


5、Wireshark can download from,install and run wireshark, then open the internal.pcap file.

Here we can see tcpdump caught a variety of packages, the use of “Telephony” under the “VoIP Calls”, the system will automatically summarize during the call.


wireshark VoIP调试


6、Select a call, click the Flow button, wireshark will use a graphic to represent the call, click the appropriate steps, we can see the corresponding IP packet information.



The SIP Phone uses TLS to register the asterCC system method

By | Tutorials | No Comments

1、First modify 【system】–>【Settings】–>【GENERAL SIP SETTINGS】

transport:Add tls, if it’s already have pther protocol,please use ‘,’ separate them.


Tips: After modify transport need click on the reload bar to take effect.

2、Download asterisk’s script “ast_tls_cert” file, use this script to generate an SSL certificate.


chmod +x ast_tls_cert

./ast_tls_cert -C -O "My Computer" -d /etc/asterisk/keys


3、Edit sip.conf file add tls support.


4、yealink upload client SSL certification file ca.crt.



5、yealink SIP Phone modify transport TLS signup for asterCC system.


Tips: Please allow access TCP port 5060 on iptables.

How to set up master slave replication in mysql

By | Tutorials | No Comments

Notes: This article describes how to set the master-slave replication from mysql, to synchronize the local and remote server mysql modify, delete data. Experiment has two local virtual machine master’s IP address, set to push the contents of the mysql data to the slave server, slave host IP address is

1、Modify the configuration file my.cnf

1.1、Modify master’s my.cnf configuration file

1.1.1、This set enable binary log, master must, slave optional. Add, as follows:


1.1.2、This set master host mysql logo, it’s can be 1, can also take the host IP last paragraph. Add, as follows:


1.1.3、This set the database to push. Add, as follows:


1.1.4、This set Information to ignore. Add, as follows:


1.2、Modify slave’s my.cnf configuration file

1.2.1、This set slave host mysql logo, it’s can be 2, can also take the host IP last paragraph, the logo must be different from the master. Add, as follows:


1.2.2、This set the database to update. Add, as follows:


1.2.3、This set Information to ignore. Add, as follows:


2、Create an authorization account and authorize on the master server

Execute, as follows:

grant replication slave on *.* to 'master'@'' identified by '123456';

Tips:Solve the grant replication slave on operation prompt password PASSWORD () error, execute command “show variables like ‘old_passwords’;” If “old_passwords = 1”, execute command “set old_passwords = 0;” solve the problem.

3、Login to the master server’s mysql console and configure it


3.1、Refreshes all tables and prevents other writes. Execute, as follows:

flush tables with read lock;

3.2、View the master server from the state, record the table “File”, “Position” value. Execute, as follows:

show master status;

3.3、Then do not operate the main server mysql, to prevent changes in the state of the main server, do not exit mysql prevent “read unlock” occurred.

3.4、Another opening of a shell. Execute, as follows:

mysqldump -pastercc --databases astercc10> astercc10.sql

3.5、Backup master astercc10 library, restore to the slave mysql. Execute, as follows:

mysql -pastercc < astercc10.sql

4、Login to the slave server’s mysql console and configure it

4.1、Let mysql slave get master of the replication permissions. Execute, as follows:

change master to master_host='',master_user='ccmaster', master_password='passw0rd', master_log_file='mysql-bin.000001', master_log_pos=Position's value(don't need " or ');

4.2、Start the mysql slave replication feature. Execute, as follows:

start slave;

4.3、Check the Master Slave Replication feature status from the mysql slave.

show slave status\G

4.4、The parameters “Slave_IO_Running: ” and “Slave_SQL_Running: ” are both “Yes”. Parameters Last_IO_Errno: 0, Last_IO_Error:, Last_SQL_Errno: 0, Last_SQL_Error:, no error message, the master-slave replication function has been achieved.


Tips: If the master with mysql5.6, binlog_checksum default is set to “crc32”, and slave with the 5.5 or earlier version, the master of the binglog_checksum set to none. You can execute set global binlog_checksum = ‘NONE’ on the console, or write my.cnf, and add binlog_checksum = NONE.

Answer asterCC some common questions

By | Tutorials | No Comments

1、Scoring on the issue of the queue don’t see the result after hangup.

After hangup. But the “Rate Log” can’t see the score result. Possible reason is that “php-soap” isn’t installed, you can download the rpm installation package from the following address.Make sure to install the “ius” source to use, as follows:
yum install php55u-soap.x86_64

2、Didn‘t install “lame” lead to the recording file can’t be converted to mp3.

On the asterCC system execute command, as follows:
yum install lame.x86_64

3、You have “Quality Control” customer information, but can’t listen to the recording, the campaign CDRs is empty, but you PBX CDRs can be found records.

Because the system didn’t receive the agent’s hangup signal, resulting in mysql “astercc10” “cc10_cache_campaign_cdrs” table corresponding to the CDRs didn’t have endtime, and not been imported into the campaign table, if the campaign number is “1”. Then the campaign table for “the cc10_1_campaigncdrs”. View “endtime”, “duration”, “billsec” field, and then identified by the “diallogid” field, in the table “cc10_cache_campaign_cdrs” query these three fields “endtime”, “duration”, “billec”, the values is “0000-00-00 00:00:00”, “0”, “0”, according to “cc10_pbxcdrs” three field values modify “cc10_cache_campaign_cdrs” three field value.

How to fix this QC record? The data will be inserted into the campaign table, so the quality control can use records.
insert into cc10_1_campaigncdrs select * from cc10_cache_campaign_cdrs where diallogid="xxxxxxxxxxxxxx";