PAMI ย่อมาจาก PHP Asterisk Manager Interface เป็น API (Applicatoin Programing Interface) ที่สั่งงาน Asterisk ครับ เขียนด้วย PHP ให้เราเรียกสั่งงาน Asterisk ผ่านทาง AMI โดยตรง โดยเราแทบไม่ต้องเขียน Code เองเพราะเขาเตรียมไว้ให้เราเรียกใช้งานอยู่แล้ว สามารถสั่งงานและตรวจสอบสถานะต่างๆของ Asterisk ได้โดยตรงครับ
PAMI (PHP-AMI) ทำแบบนี้ได้
- มอนิเตอร์ Asterisk
- ติดตามสถานะของ Call เช่น CDR, Billing
- รับส่ง Call, SMS, Text
- จัด Queue และพักสาย (Park) ได้
- ควบคุมการ Call ของ Asterisk
- รับส่งสถานะ Event ของ Asterisk แบบ Realtime
- เชื่อมต่อกับ Application ภายนอกได้แบบ Realtime เช่น โปรแกรม CRM โปรแกรม Callcenter ต่างๆ
- ทำ IVR ได้
เว็บไซต์
http://marcelog.github.io/PAMI/index.html
เวอร์ชั่น PHP ที่รองรับ
รองรับ PHP 5.3 ขึ้นไปรับ ยกเว้นเวอร์ชั่น 5.3.9 และ 5.3.10
ติดตั้ง php-pear
- โค้ด: เลือกทั้งหมด
yum -y install php-pear
การติดตั้ง PAMI
ง่ายมากครับ แค่รันสองคำสั่งต่อไปนี้
1. คำสั่ง pear channel-discover pear.marcelog.name
- โค้ด: เลือกทั้งหมด
pear channel-discover pear.marcelog.name
ผลลัพธ์
Adding Channel "pear.marcelog.name" succeeded
Discovery of channel "pear.marcelog.name" succeeded
2. คำสั่ง pear install marcelog/PAMI
- โค้ด: เลือกทั้งหมด
pear install marcelog/PAMI
ผลลัพธ์
downloading PAMI-1.70.1.tgz ...
Starting to download PAMI-1.70.1.tgz (34,932 bytes)
.........done: 34,932 bytes
install ok: channel://pear.marcelog.name/PAMI-1.70.1
ติดตั้ง Log4php
รัน 2 คำสั่งนี้ครับ
- โค้ด: เลือกทั้งหมด
pear channel-discover pear.apache.org/log4php
pear install log4php/Apache_log4php
โฟลเดอร์เก็บ PAMI
PAMI เก็บในโฟลเดอร์นี้ครับ
- โค้ด: เลือกทั้งหมด
/usr/share/pear/PAGI
ภายในจะมีโฟลเดอร์ย่อยๆอีกครับ ได้แก่
- AsyncAgi
- Autoloader
- Client
- Exception
- Listener
- Message
การใช้งาน PAMI
1. Enable Asterisk AMI
ไฟล์ /etc/asterisk/manager.conf
- โค้ด: เลือกทั้งหมด
;
[general]
enabled = yes
;webenabled = yes
port = 5038
bindaddr = 0.0.0.0
allowmultiplelogin = yes
displayconnects = yes
timestampevents = yes
2. เพิ่ม manager ในไฟล์ /etc/asterisk/manager.conf
- โค้ด: เลือกทั้งหมด
[admin]
secret=secret
read=all
write=all
deny=0.0.0.0/0.0.0.0
permit=127.0.0.1/255.255.255.255
3. รีโหลด Asterisk AMI
- โค้ด: เลือกทั้งหมด
asteriks -rx "manager reload"
4. เขียน PHP Code เรียกใช้งาน PAMI
ตามบทความในเว็บนี้ได้เลยครับ
- โค้ด: เลือกทั้งหมด
http://marcelog.github.io/articles/pami_introduction_tutorial_how_to_install.html
** ผมยังไม่มี Code มาให้ดูนะครับ กำลังลองเล่นอยู่ครับ **