มอนิเตอร์ asterisk ผ่านเว็บด้วยโปรแกรม...

7
มอนิเตอร์ Asterisk ผ่านเว็บด้วย MonAst 1 บทความโดย คุณหนุ่ยแห่งเว็บ www.voip4share.com มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst มีบทความเกี่ยวกับ Asterisk, Elastix, VoIP อีกมากมายทีhttp://www.voip4share.com สวัสดีครับ ผมมีโปรแกรมอีกตัวหนึ่งมานาเสนอ โปรแกรมนี้มีชื่อว่า MonAst ครับ เป็นโปรแกรมแบบ Open Source เอาไว้มอนิเตอร์ Asterisk ใช้งานได้ฟรี ทางานผ่านเว็บเบราเซอร์ ติดตั้งง่ายไม่ต้องมี Data Base มาเกี่ยวข้อง แค่เพิ่ม User/Pass เข้าไปในไฟล์ manager.conf ของ Asterisk เท่านี้เองครับก็จะมอนิเตอร์ได้แล้ว ทั้งหมดนี้จะแสดงแบบ Real Time ครับ เป็นอีกทางเลือกหนึ่งสาหรับท่านที่เบื่อๆ FOP (Flash Operator Panel) ดูรูปตัวอย่างก่อนครับ สิ่งที่โปรแกรม MonAst สามารถแสดงผลให้เราดูได้ ก็มีดังต่อไปนี้ครับ Peers/Users แสดงสถานะการออนไลน์ /ออฟไลน์ การโทร ดูได้ทั้งของ SIP/IAX Clients และ Trunks เลยนะครับ Meetme Rooms สถานของห้อง Conference Channels/Calls หลักๆแล้วหน้านี้จะแสดงสถานะของ Trunk สายที่กาลังโทรเข้า โทรออก ระยะเวลาที่โทร Parked Calls แสดงคอลที่กาลัง Park สายอยูQueues แสดง Queue ทั้งหมดที่คอนฟิกไว้ สายที่โทรเข้ามาใน Queue ระยะเวลาที่โทร Asterisk CLI ให้เราพิมพ์คาสั่งใน Asterisk Console ได้โดยไม่ต้องล๊อกอินเข้าเครื่อง เอาหล่ะครับเรามาติดตั้งโปรแกรมนี้กันดีกว่า 1. ดาวน์โหลดโปรแกรม ดาวน์โหลดโปรแกรมจากเว็บไซต์นีhttp://sourceforge.net/projects/monast/ โค้ด: เลือกทั้งหมด

Upload: iamaladin

Post on 27-Jul-2015

477 views

Category:

Documents


5 download

DESCRIPTION

สอนวิธีการติดตั้งโปรกรม MonAst เพื่อมอนิเตอร์ Asterisk ผ่านเว็บครับ ดูการใช้งาน Extension, Trunk, Queue, Conference ผ่านหน้าเว็บได้เลย ใช้แทน FOP ได้สบายๆ

TRANSCRIPT

Page 1: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 1

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มีบทความเกี่ยวกับ Asterisk, Elastix, VoIP อีกมากมายที ่http://www.voip4share.com

สวัสดีครับ ผมมีโปรแกรมอีกตัวหน่ึงมาน าเสนอ โปรแกรมนี้มีชื่อว่า MonAst ครับ เป็นโปรแกรมแบบ Open Source เอาไว้มอนิเตอร์ Asterisk ใช้งานได้ฟรี ท างานผ่านเว็บเบราเซอร์ ติดตั้งง่ายไม่ต้องมี Data Base มาเกี่ยวข้อง แค่เพิ่ม User/Pass เข้าไปในไฟล์ manager.conf ของ Asterisk เท่านี้เองครับก็จะมอนิเตอร์ได้แล้ว ทั้งหมดนี้จะแสดงแบบ Real Time ครับ เป็นอีกทางเลือกหนึ่งส าหรับท่านที่เบื่อๆ FOP (Flash Operator Panel) ดูรูปตัวอย่างก่อนครับ

ส่ิงที่โปรแกรม MonAst สามารถแสดงผลให้เราดูได้ ก็มีดังต่อไปนี้ครับ Peers/Users แสดงสถานะการออนไลน/์ออฟไลน์ การโทร ดูได้ทั้งของ SIP/IAX Clients และ Trunks เลยนะครับ Meetme Rooms สถานของห้อง Conference Channels/Calls หลักๆแล้วหน้านี้จะแสดงสถานะของ Trunk สายที่ก าลังโทรเข้า โทรออก ระยะเวลาที่โทร Parked Calls แสดงคอลท่ีก าลัง Park สายอยู่ Queues แสดง Queue ทั้งหมดที่คอนฟิกไว้ สายที่โทรเข้ามาใน Queue ระยะเวลาที่โทร Asterisk CLI ให้เราพิมพ์ค าส่ังใน Asterisk Console ได้โดยไม่ต้องล๊อกอินเข้าเครื่อง เอาหล่ะครับเรามาติดตั้งโปรแกรมนี้กันดีกว่า 1. ดาวน์โหลดโปรแกรม ดาวน์โหลดโปรแกรมจากเว็บไซต์นี้ http://sourceforge.net/projects/monast/ โค้ด: เลือกทั้งหมด

Page 2: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 2

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

wget http://downloads.sourceforge.net/project/monast/MonAst%20for%20Asterisk%201.4_1.6/1.4/monast-1.4.tar.gz?use_mirror=nchc

2. แตกไฟล ์แตกไปไว้ในไดเร็คตอรี่ที่เรียกได้จาก Web Server tar xzvf monast-1.4.tar.gz -C /var/www/html mv /var/www/html/monast-1.4 /var/www/html/monast cd /var/www/html/monast 3. แก้ไขไฟล์ manager.conf ของ Asterisk vi /etc/asterisk/manager.conf [general] enabled = yes port = 5038 bindaddr = 0.0.0.0 displayconnects = yes timestampevents = yes [monast] secret=password deny=0.0.0.0/0.0.0.0 permit=127.0.0.1/255.255.255.0 writetimeout=100 read=system,call,log,verbose,command,agent,user,config write=system,call,log,verbose,command,agent,user,config อย่าลืมแก้ไข username/secret ให้เป็นของเราเองด้วยนะครับ เสร็จแล้วรีโหลด Asterisk เพื่อให้มีผล asterisk -rx "reload" 4. ก๊อปไฟล์คอนฟิก cd pymon cp monast.conf.sample /etc/monast.conf

Page 3: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 3

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

5. แก้ไขไฟล์คอนฟิกของ MonAst vi /etc/monast.conf

[global] # Dados para conectar ao AMI hostname = localhost hostport = 5038 username = monast password = password # Bind client connetions on host:port bind_host = 127.0.0.1 bind_port = 5039 # Default user context default_context = from-internal # Context to use in transfer calls transfer_context = default # Context and prefix for meetme meetme_context = default meetme_prefix = [users] # sort peers (options: peer, callerid, calleridname, calleridnum) sortby = callerid # defualt show/hide default = show # hide peer when default = show SIP/user-1 = hide

Page 4: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 4

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

# show peer when default = hide SIP/user-2 = show # always show peer. #SIP/user-3 = force # force CallerID (only in forced mode) #SIP/user-4 = force,Diego Aguirre <5555>

บรรทัด bind_host, bind_port เป็น IP และ Port ที่โปรแกรม MonAst Daemon จะรันครับ รอรับคอนเน็คชั่นจาก MonAst Web 6. ลองรัน MonAst Daemon ด ู./monast.py ถ้าเวอร์คจะเห็นข้อความคล้ายๆนี้ครับ [Wed Mar 31 23:46:42 2010] NOTICE :: MonAst :: Initializing... [Wed Mar 31 23:46:42 2010] NOTICE :: MonAst.parseConfig :: Parsing config [Wed Mar 31 23:46:42 2010] NOTICE :: AsteriskManager :: Initializing... [Wed Mar 31 23:46:43 2010] NOTICE :: AsteriskManager.connect :: Trying to connect to localhost:5038 [Wed Mar 31 23:46:43 2010] NOTICE :: AsteriskManager.login :: Logging in... [Wed Mar 31 23:46:43 2010] NOTICE :: AsteriskManager.threadRecvQueue :: Authentication accepted ถ้าไม่มี Error ให้กด Ctrl+C เพื่อยกเลิก ก็จะเห็นข้อความคล้ายๆแบบนี้ [Wed Mar 31 23:47:25 2010] NOTICE :: AsteriskManager.close :: Finishing... [Wed Mar 31 23:47:25 2010] NOTICE :: AsteriskManager.logoff :: Logging off... [Wed Mar 31 23:47:27 2010] NOTICE :: AsteriskManager.disconnect :: Closing connection to localhost:5038 [Wed Mar 31 23:47:28 2010] NOTICE :: Monast :: Finished... แล้วรันค าส่ังนี้ ./monast.py --daemon จะมี Process ของ MonAst รันอยู่ครับ แบบนี้ root 18596 1 0 23:48 ? 00:00:00 /usr/bin/python -u /var/www/html/monast/pymon/monast.py --daemon

Page 5: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 5

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

ต้องให้ monast.py นี้รันอยู่ตลอดเวลานะครับ เพราะมันเหมือนเป็นตัวกลางระหว่าง MonAst ที่เราดูผ่านเว็บกับ Asterisk เพราะถ้ามันไม่รันเราก็จะมอนิเตอร์ไม่ได้ 7. ท าให้ MonAst Daemon รันทุกครั้งที่เปิดเครื่อง vi /etc/rc.d/rc.local เพิ่มบรรทัดนี้เข้าไป /var/www/html/monast/pymon/monast.py --daemon 8. แก้ไขไฟล์ config.php เป็นออปชั่นในการแสดงผลข้อมูลบนหน้าเว็บครับ cd /var/www/html/monast/lib vi config.php

แก้ไขบรรทัดต่อไปนี้ตามที่ต้องการ ซึ่ง HOSTNAME, HOSTPORT ต้องให้ตรงกับข้อมูลใน # Bind client connetions on host:port ของไฟล์ /etc/monast.conf ด้วยนะครับ define("HOSTNAME", "localhost"); // monast.py hostname define("HOSTPORT", 5039); // monast.py port define("MONAST_SOCKET_DURATION", 20); // 20 seconds define("MONAST_BROWSER_REFRESH", 60 * 10); // 10 minutes define("MONAST_CALL_TIME", true); // enable or disable call timer define("MONAST_CLI_TAB", true); // enable or disable Asterisk CLI TAB define("MONAST_DEBUG_TAB", false); // enable or disable debug TAB

9. ใช้งานโปรแกรม http://x.x.x.x/monast/ 10. ข้อสังเกตุในการใช้งาน 1. โปรแกรมนี้ไม่มีหน้าล๊อกอิน หากต้องการให้ม ีLogin ก็ต้องใช้ Apache Auth ครับ

Page 6: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 6

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

2. หน้าเว็บเพจอาจจะแฮ้งค์ได้ในบางครั้งเป็นตอนที่เปิดหน้าเว็บค้างไว้นานๆครับ เราอาจต้องกด Refresh หรือปุ่ม F5 เพื่อให้ Refresh หน้าเว็บใหม่ให้โปรแกรมเรียกข้อมูลใหม่ 11. ตัวอย่างเว็บ ผมมีตัวอย่างหน้าเว็บให้ดคูรับ ก๊อบมาจากของผมเอง Channels/Calls

Mixed Channels

Page 7: มอนิเตอร์ Asterisk ผ่านเว็บด้วยโปรแกรม MonAst

มอนเิตอร์ Asterisk ผ่านเว็บดว้ย MonAst 7

บทความโดย “คุณหนุ่ย” แห่งเว็บ www.voip4share.com

ท่านที่ก าลังมองหาโปรแกรมลักษณะนี้อยู่ ผมหวังว่าคงตอบสนองความต้องการได้นะครับ