วิเคราะห์และรายงาน Asterisk Queue ด้วยโปรแกรม Asternic

Asterisk Opensource IP Pbx

วิเคราะห์และรายงาน Asterisk Queue ด้วยโปรแกรม Asternic

โพสต์โดย nuiz » 09 เม.ย. 2010 00:20

ดาวน์โหลดบทความ Asterisk Call Center Stats นี้ในรูปแบบไฟล์ pdf

บทความนี้จะแนะนำวิธีการติดตั้งและใช้งานโปรแกรม Asternic Call Center Stats นะครับ
Asterinic Call Center Stats เป็นอีกโปรแกรมหนึ่งซึ่งเอาไว้ดูสถิติการใช้งาน Queue ของ Asterisk ดูได้ละเอียดมากครับ (อีกโปรแกรมหนึ่งที่ผมเคยนำเสนอไปก่อนหน้านี้คือ Asterisk Queue Analyzer) สีสรร หน้าตาก็สวยงามดี มีกราฟให้ เลือกช่วงเวลาที่ต้องการดูข้อมูลได้ แต่ก็ใช่ว่าจะดูได้ทุกอย่างนะครับ บางอย่างเช่นเบอร์ลูกค้าที่โทรเข้ามา เจ้าของโปรแกรมก็เอาไปใส่ไว้ในอีกเวอร์ชั่นหนึ่งซึ่งถ้าต้องการก็ต้องเสียเงินซื้อครับ แต่เราก็ใช้โปรแกรมอื่นดูแทนก็ได้เช่น Asterisk Queue Analyzer หรือโปรแกรมดู CDR ทั่วไป เช่น Asterisk-Stat

รูปร่างหน้าตาของโปรแกรม
asternic-3.png
Asterinic
asternic-3.png (69.61 KiB) เปิดดู 4683 ครั้ง


เว็บไซต์โปรแกรม
http://www.asternic.biz

1. ดาวน์โหลดและติดตั้ง
โค้ด: เลือกทั้งหมด
http://www.asternic.org/stats/asternic-stats-1.2.tgz
tar xzvf asternic-stats-1.2.tgz -C /var/www/html
cd /var/www/html/asternic-stats


2. สร้างดาต้าเบส
จะสร้างดาต้าเบสด้วย Command Line หรือ phpMyAdmin ก็ได้นะครับ แล้วแต่ความสะดวก
ผมสร้างดาต้าเบสชื่อ qstat นะครับ ป้องกันไว้ด้วย Username=qstatuser และ Password=qstatpass

เข้า MySQL เพื่อสร้างดาต้าเบส

โค้ด: เลือกทั้งหมด
mysql -uroot -ppassword


ที่พร้อมท์ mysql> พิมคำสั่งต่อไปนี้

โค้ด: เลือกทั้งหมด
CREATE DATABASE qstat DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

โค้ด: เลือกทั้งหมด
INSERT INTO mysql.user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv, Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Create_user_priv, ssl_type, max_questions, max_updates, max_connections, max_user_connections) VALUES ('localhost', 'qstatuser', PASSWORD('qstatpass'), 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'Y', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', 'N', '', '0', '0', '0', '0');

โค้ด: เลือกทั้งหมด
INSERT INTO mysql.db (Host, Db, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Create_tmp_table_priv, Lock_tables_priv, Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Execute_priv) VALUES ('localhost', 'qstat', 'qstatuser', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'N', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y');

โค้ด: เลือกทั้งหมด
flush privileges;


3. อิมพอร์ตดาต้าเบส
โค้ด: เลือกทั้งหมด
cd /var/www/html/asternic-stats/sql
mysql -uqstatuser -pqstatpass qstat < qstat.sql


4. เพิ่ม Username/Password ใน Asterisk Manager Interface

โค้ด: เลือกทั้งหมด
vi /etc/asterisk/manager.conf

โค้ด: เลือกทั้งหมด
[qstatuser]
secret=qstatpass
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
write = system,call,log,verbose,command,agent,user,config


5. แก้ไขไฟล์คอนฟิกของ Asternic

โค้ด: เลือกทั้งหมด
vi /var/www/html/asternic-stats/html/config.php


โค้ด: เลือกทั้งหมด
// Credentials for MYSQL database
$dbhost = 'localhost';
$dbname = 'qstat';
$dbuser = 'qstatuser';
$dbpass = 'qstatpass';

// Credentials for AMI (for the realtime tab to work)
// See /etc/asterisk/manager.conf

$manager_host   = "127.0.0.1";
$manager_user   = "qstatuser";
$manager_secret = "qstatpass";


เลือกภาษาด้วย

6. แก้ไขไฟล์คอนฟิกให้ดึงข้อมูล Queue Log ได้
โค้ด: เลือกทั้งหมด
vi /var/www/html/asternic-stats/parselog/config.php


โค้ด: เลือกทั้งหมด
$queue_log_dir  = '/var/log/asterisk/';
$queue_log_file = 'queue_log';

$dbhost = 'localhost';
$dbname = 'qstat';
$dbuser = 'qstatuser';
$dbpass = 'qstatpass';


7. ดึงข้อมูลจาก Queue Log ลงดาต้าเบส
7.1 ถ้าใช้ Asterisk แท้ๆ
โค้ด: เลือกทั้งหมด
cd /var/www/html/asternic-stats/parselog
php -q ./parselog.php


7.2 ถ้าใช้ Queue ผ่านโปรแกรม FreePBX (Trixbox/Elastix/PIAF)
โค้ด: เลือกทั้งหมด
cd /var/www/html/asternic-stats/parselog
php -q ./parselog.php convertlocal


7.3 ถ้าต้องการเคลียร์ข้อมูลในเทเบิล (เพื่อเริ่มใหม่)
โค้ด: เลือกทั้งหมด
cd /var/www/html/asternic-stats/parselog
php -q ./parselog.php purgue


ตอนดึงข้อมูลใช้เวลาพอสมควรครับ ขึ้นอยู่กับปริมาณข้อมูลในไฟล์ queue_log ส่วนตอนลบข้อมูลในดาต้าเบส ลบแป๊บเดียวก็เสร็จ

8. ใช้ Cron ดึง Queue Log เป็นช่วงเวลา
โค้ด: เลือกทั้งหมด
crontab -e

ดึงตอนตี 3ของทุกวัน
โค้ด: เลือกทั้งหมด
3 * * * * php -q /opt/asternic-stats/parselog/parselog.php convertlocal > /dev/null 2>&1


9. เข้าเว็บ Asterinic
http://x.x.x.x/asternic-stats/html/index.php

Main
asternic-main.png
Asternic Call Center Stats
asternic-main.png (59.62 KiB) เปิดดู 4683 ครั้ง

เลือก Queue และช่วงวันที่

Distribution
asternic-2.png
Asternic
asternic-2.png (427.93 KiB) เปิดดู 4683 ครั้ง

Answered
asternic-answered-s.png
Asternic Answered
asternic-answered-s.png (205.85 KiB) เปิดดู 4681 ครั้ง

Unanswered
asternic-unanswered-s.png
Asternic Unanswered
asternic-unanswered-s.png (94.26 KiB) เปิดดู 4681 ครั้ง
** หากมีปัญหากับอุปกรณ์ที่ซื้อมาเองหรือบริการที่ทำขึ้นมาเอง ให้โพสต์ถามในเว็บบอร์ดนี้นะครับ **
** งานเร่งด่วนติดต่อว่าจ้างที่เบอร์ 08-5161-9439 อีเมล์ iamaladin@gmail.com ไลน์ NuizVoip ครับ **
nuiz
Diamond Member
 
โพสต์: 6995
ลงทะเบียนเมื่อ: 24 มี.ค. 2010 09:33

ย้อนกลับไปยัง Asterisk SIP Server

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และ บุคคลทั่วไป 3 ท่าน

cron