📄 readme
字号:
==================================================================================== asterCRM (C) 2006,2007 Solo Fu solo@magiclink.cn solo.fu@gmail.com====================================================================================asterCRM is a AJAX based 'Call Center' system. First, Asterisk Events are captured as the occur via a perl script called eventsdaemon andlogged to a MySQl database table.Since Asterisk is sending these events as they occur (and not being polled for these events),this leads to a more efficient Asterisk interface.eventsdaemon.pl is a perl script which connects to AMI (the Asterisk ManagerInterface) via a stock, listens for any events or messages coming fromthe AMI, time stamps each event and logs them to a MySQL database table.eventsdaemon can be run on any machine and not confined running in your Asterisk server,More information on the function of eventsdaemon can be found in its source comments.WEB PHP scripts will analyze Asterisk Events in database, and finish call center jobs, such as pop-up, click to dial, call queue ... asterCRM scripts require a running WEB and MySQL server (in which stored asterisk events).All of these processes can run on the same server, however, multiple servers enhance performance.1. Features 1). pop-up when incoming calls 2). pop-up when outbound calls 3). suggestion when enter business name or contact 4). account/extension manager 5). click to dial 6). manully dial 7). click to transfer 8). click to monitor 9). can be integrated with all asterisk based systems, such as Magiclink IP PBX, Trixbox ... 10).multi-language support (Chinese, English, German) 11).multi-skin support 12).support external crm 13).extension status 14).show asterisk active channels 15).predictive dialer 16).CRM data import/export online 17).diallist import online 18).survey 19).survey result statistics 20).distributed solution2. asterCRM Installation: (assuming your WEB root is /var/www/html)1) Download and unzip the source cd /var/www/html unzip astercrm-X.X-XXXX.zip Note: this creates the /var/www/html/astercrm directory which contains the PHP scripts and several sub-directories. /var/www/html/astercrm main directory and PHP scripts /var/www/html/astercrm/astercrm.conf.php astercrm configration file /var/www/html/astercrm/eventsdaemon eventsdaemon file /var/www/html/astercrm/includes files needed in php scripts /var/www/html/astercrm/includes/language asterCRM language files /var/www/html/astercrm/skin image/style files used by astercrm /var/www/html/astercrm/js auto-complete java scripts /var/www/html/astercrm/upload upload folder, make sure it get write permission /var/www/html/astercrm/cdr Asterisk-stat /var/www/html/astercrm/sql sql to create astercrm database It is highly advised that the whole eventsdaemon directory be moved to a more secure location like /opt and out of the WEB root directory (in step 2)2) Create the directories and move eventsdaemon scripts: mkdir -p /opt/asterisk/scripts/eventsdaemon mv /var/www/html/astercrm/eventsdaemon/* /opt/asterisk/scripts/eventsdaemon chmod +x /opt/asterisk/scripts/eventsdaemon/eventsdaemon.pl chmod +x /opt/asterisk/scripts/eventsdaemon/eventdog.sh3) Create the MySQL database and table, asterCRM need mysql 4.1 or above mysqladmin --uyourmysqluser -pyourmysqlpasswd create astercrm mysql -uyourmysqluser -pyourmysqlpasswd astercrm </var/www/html/astercrm/sql/astercrm.sql Note: here we create the database named astercrm, you could use whatever db name you want use your configration to replace "yourmysqluser" and "yourmysqlpasswd" 4) Update /etc/asterisk/manager.conf to enable Manager connections Note: asterisk and astercrm could be on different server Add something like this to the manager.conf file: [general] enabled = yes port = 5038 bindaddr = 0.0.0.0 ;displayconnects = yes ;the following line could be changed by yourself [eventsdaemon] secret = myeventsdaemon read = system,call,log,verbose,command,agent,user write = system,call,log,verbose,command,agent,user deny=0.0.0.0/0.0.0.0 ; only allow local access, if you want to run astercrm on another server ; use your astercrm ip to replace 127.0.0.1 or add a new line permit=127.0.0.1/255.255.255.0 5) modify astercrm.conf.php and eventsdaemon.pl to fit your configration mainly database setting and AMI setting, the other parameters could be set in astercrm page6) Start Asterisk and eventsdaemon.pl try start eventsdaemon: /opt/asterisk/scripts/events/eventsdaemon.pl if you could read: "Message: Authentication accepted" congratulations, your eventsdaemon works use ctrl + c to exit or else, please check your database/AMI configration in eventsdaemon.pl Start eventsdaemon (default settings): /opt/asterisk/scripts/events/eventsdaemon.pl -d At some point it may be desirable to delete unwanted events from the database table. The eventsdaemon is also designed for this. please check eventsdaemon.pl for parameter "log_life" also we provide a "watch dog", it would help you restart eventsdaemon when it shutdown add this shell to your start-up file /opt/asterisk/scripts/events/eventdog.sh so that everytime your server start, eventsdaemon would be loaded7) set file&folder access chmod 777 /var/www/html/astercrm/upload chmod 777 /var/www/html/astercrm/astercrm.conf.php8) Testing: browse to http://localhost/astercrm or http://YOUR-WEB-SERVER-ADDRESS/astercrm login with admin/admin====================================================================================2007-10-9 Version 0.445 Released (GPL)2007-10-22 Version 0.45 Released (GPL)2008-1-18 Version 0.46 Released (GPL)==================================================================================== The author can be reached at solo.fu@gmail.com for comments and suggestions.====================================================================================Manager Interface 1. Import2. Export3. Statisic4. ExtensionBinding astercrm account and asterisk extension here, also manager could grant privileges to astercrm account.username: username to log into astercrmpassword: password to log into astercrmusertype: only two levels for now. If it's "admin" in this field, which means this account could enter manager interface section.extension: a extension would be binding to this user, which means all events of the extension would reflect this user such as dial, hangup, also pop-up digits only (e.g. 8000)extensions: which extensions the user could see status, and use click to transfer put several extensions here, use comma to seperate (e.g. 8000,8001,8002,8003)5. Customer6. Predictive DialerAdministrator could upload a phone list to table "diallist", so that astercrm know which number could be dialed.there's are two field in table "diallist" phonenumber and assignAbout assign, it would be a extension number in this field, means this number could be dialed by which extension, this phone number would appears in "agent dial mode"there're two mode in dialer setion: a. agent dial modeif phone number is assigned to extension in table "dial list", when agent login, he could see a button "get a new number" and XX records in dial list, then he can dial the button, a new table would pop up,and in this table would have a phone number, agent could click the number to make a call. once agent click the button and a new table pop up with a new phone number, the number would bedeleted from database, so agent could see that the number in dial list would decrease, until no records in database, and the button disappears. b. manager predial modemanager dial mode need a "admim" user, in predictive dialer module, if there're records in table "diallist"(whatever assigned or not), he could see XXX records (means records number in database), a "Dial" button and a inputbox (means maximum concurrent active channel in asterisk, it would "pause" when asterisk active channels reach this number untill some channels hang up dialer would "continue" automaticly), duringthis progress manger could stop/start the dialer or change max channels number. In config.php you could set where the call would be sent to when answered, such as a IVR, a queue or whatever you need.7. System 7.1 You could see sip peer status here, such as which peer is calling, which peer is online or offline Notice: some peer may not appear here, because system monitor read data from database so usually we can not read all sip peer status here7.2 you coudl see the result of cli command: sip show channels verbose this result refresh every one second.8. Survey
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -