วันอังคารที่ 20 ตุลาคม พ.ศ. 2552

การติดตั้ง Asterisk 1.2

การติดตั้ง Asterisk 1.2 นี้เป็นส่วนหนึ่งของโครงงานทำส่ง ภาควิชาสารสนเทศ มหาวิยาลัยเทคโนโลยีมหานคร (MSNE#2) เมื่อส่งเสร็จเห็นว่าน่าจะเป็นประโยชน์จึงได้นำมาเผยแพร่สำหรับผู้สนใจ
---------------------------------------------------------------
2. การติดตั้ง Asterisk Server / configuration
การติดตั้งโปรแกรม Asterisk ลงบนระบบปฏิบัติการ FreeBSD ให้ทำการจัดเตรียมไฟล์ที่จำเป็นต่อการติดตั้งให้พร้อมและ Copy ไฟล์ลงในเครื่อง Server เพื่อง่ายต่อการติดตั้ง
2.1 ขั้นแรกเริ่มจากการนำแผ่นซีดีรอม ที่มีไฟล์ที่จำเป็นต่อการติดตั้งโปรแกรม Asterisk เข้าไป แล้วดำเนินการดังต่อไปนี้
2.1.1 ทำให้เครื่องมองเห็นซีดีรอม โดยใช้คำสั่ง
Asterisk# Mount /cdrom
2.1.2 เข้าไปที่ห้องที่เก็บไฟล์โปรแกรม ใช้คำสั่ง
Asterisk# cd source ;เพื่อเข้าไปในโฟลเดอร์เก็บไฟล์
Asterisk# ls ;เพื่อตรวจสอบว่ามีไฟล์ Asterisk หรือไม่
Asterisk# cp Asterisk62.tar.gz /usr/ports/distfiles/
Copy ไฟล์สำหรับติดตั้ง Asterisk62.tar.gz มาไว้ที่ห้อง /usr/ports/distfiles
รูปที่ 2.1 การ Copy ไฟล์ Asterisk เตรียมสำหรับติดตั้ง

2.2 ทำการแตกไฟล์ Asterisk62.tar.gz ด้วยคำสั่ง gzip มีวิธีการดังนี้
Asterisk# cd /usr/ports/distfiles ; เข้าไปในห้องที่เก็บไฟล์นั้นก่อน
Asterisk# gzip –cd Asterisk62.tar.gz : tar xvf -
แตกไฟล์ Asterisk62.tar.gz

รูปที่ 2.2 แตกไฟล์ Asterisk62.tar.gz

2.3 เมื่อแตกไฟล์เรียบร้อยแล้ว ให้เข้าไปที่ไดเร็กทอรี /usr/ports/net/asterisk แล้วตรวจสอบดูว่ามีไฟล์อะไรบ้าง ด้วยคำสั่ง
Asterisk# cd /usr/ports/net/asterisk ; เข้าไปในห้องที่เก็บไฟล์นั้นก่อน
Asterisk# ls –l ; ตรวจสอบว่ามีไฟล์อะไรบ้าง

รูปที่ 2.3 แสดงไฟล์อยู่ในไดเร็คทอรี /usr/ports/net/asterisk

2.4 ทำการติดตั้ง Asterisk ด้วยคำสั่ง make install ซึ่งเป็นการติดตั้งจาก Port Tree

รูปที่ 2.4 การติดตั้ง Asterisk

การติดตั้ง Asterisk จาก Port Tree [1]
เป็นวิธีการติดตั้งโปรแกรมลักษณะหนึ่งบนระบบปฏิบัติการ FreeBSD ซึ่งเครื่องเซิร์ฟเวอร์จะมีการตรวจสอบว่าในไดเร็กเทอรี /usr/ports/distfiles มีไฟล์โปรแกรมที่ต้องการติดตั้งอยู่หรือไม่ หากมีก็จะสามารถติดตั้งได้ โดยการเข้าไปยังโครงสร้างไดเร็กทอรี ในที่นี้ระบบปฏิบัติการ FreeBSD เรียกว่า Port Tree (ซึ่งจะเป็น ซับไดเร็กทอรีภายใต้ /usr/ports) แล้วใช้คำสั่ง make install เพื่อติดตั้งได้ทันที หากแต่ระบบมีการตรวจสอบไฟล์ว่าในไดเร็กทอรี /usr/ports/distfiles ถ้าไม่มีโปรแกรมที่ต้องการติดตั้ง ระบบจะทำการเชื่อมต่ออินเตอร์เน็ตแล้วไปดาวน์โหลดโปรแกรมนั้นๆ จากแหล่งข้อมูลที่มีให้ดาวน์โหลดก่อน แล้วจึงเริ่มติดตั้งโปรแกรม

2.5 ปล่อยให้โปรแกรมทำการติดตั้งไปเรื่อยๆ จนถึงหน้า Options ให้เลือกสำหรับ gettext ให้กดปุ่ม TAB มาที่ OK แล้วกดปุ่ม Enter เพื่อทำงานต่อไป

รูปที่ 2.5 แสดง Option สำหรับ gettext

2.6 โปรแกรมทำการตรวจสอบไฟล์ที่ต้องใช้ แล้วทำการติดตั้งโปรแกรม


รูปที่ 2.6 ตรวจเช็คไฟล์ที่ใช้ในการติดตั้งโปรแกรม Asterisk

2.7 โปรแกรมให้เราลง Options เพิ่มสำหรับ Curl ให้กดปุ่ม TAB มาที่ OK แล้วกดปุ่ม Enter เพื่อทำงานต่อไป

รูปที่ 2.7 เลือก Option เพิ่มเติมสำหรับ Curl

2.8 ปล่อยให้เครื่องทำการติดตั้งโปรแกรมไปเรื่อยๆ จนจบ ซึ่งใช้เวลานานเหมือนกันถ้าไม่ได้ดาวน์โหลดไฟล์ที่จำเป็นต่อการติดตั้งมาไว้ที่ /usr/ports/distfiles ยิ่งทำให้รอนาน และเสี่ยงต่อการติดตั้งไม่สำเร็จ


รูปที่ 2.8 ติดตั้งโปรแกรม Asterisk สำเร็จ

2.9 ทดสอบการติดตั้งโปรแกรม Asterisk ว่าสามารถใช้งานได้หรือไม่ ก่อนทำการเซตค่าอื่นๆ ด้วยคำสั่ง
Asterisk# asterisk –r
จะแสดงการทำงานของโปรแกรม Asterisk ถ้าติดตั้งอย่างสมบูรณ์ต้องไม่มี Error ดังรูปที่ 2.9 ถ้าต้องการออกจากการรันโปรแกรม Asterisk ให้พิมพ์คำสั่ง Exit แล้วกดปุ่ม Enter
Asterisk*CLI> exit

รูปที่ 2.9 ทดสอบการทำงานโปรแกรม Asterisk

2.10 เมื่อโปรแกรม Asterisk ใช้งานได้ตามปกติ ให้เข้าไปแก้ไขไฟล์ rc.conf เพื่อให้โปรแกรม Asterisk ทำงานทุกครั้งเมื่อเปิดเครื่อง ด้วยคำสั่งดังนี้
Asterisk# pico /etc/rc.conf
เปิดไฟล์เพื่อแก้ไขด้วยโปรแกรม pico และให้เพิ่มคำสั่ง asterisk_enable=”YES” เข้าไปแล้วทำการบันทึก

รูปที่ 2.10 สั่งให้ Asterisk ทำงานทุกครั้งเมื่อเปิดเครื่อง

2.11 การสร้าง SIP Account ไว้บน Asterisk Server โดยให้เข้าไปแก้ไขไฟล์ sip.conf และสร้าง SIP Account ดังต่อไปนี้
Asterisk# pico /usr/local/etc/asterisk/sip.conf
เพื่อสร้าง SIP Account ซึ่งได้สร้างหมายเลข 1000 ดังรูปที่ 2.11

รูปที่ 2.11 สร้าง SIP Account

2.12 การเขียน Dial Plan คือการเขียนแผนการโทรศัพท์ เพื่อกำหนดว่าเมื่อมีสายเข้ามาที่ IP-PBX (Asterisk) แล้วนั้นจะทำอะไรบ้าง เช่น หมุนโทรศัพท์ไปยังปลายทางหมายเลขใด หรือจะทำการบันทึกเสียง หรือฟังสัญญาณรอสาย ทั้งหมดนี้จะถูกกำหนดโดยการเขียน Dial Plan ถ้าไม่มีการเขียน Dial Plan ในระบบโทรศัพท์ Asterisk เพื่อกำหนดการทำงาน ระบบโทรศัพท์นั้นก็ไม่สามารถทำงานได้ การเข้าไปเขียน Dial Plan เพื่อกำหนดการทำงานของระบบโทรศัพท์ Asterisk ทำได้โดยใช้คำสั่งดังนี้
Asterisk# pico /usr/local/etc/asterisk/extensions.conf
เข้าไปเพิ่มคำสั่งเข้าไปในไฟล์ extensions.conf แล้วทำการบันทึก
exten=> 1000,1,Dial(SIP/1000)
exten=> 1001,1,Dial(SIP/1001)
exten=> 1002,1,Dial(SIP/1001)

รูปที่ 2.12 การเขียน Dial Plan ของระบบ Asterisk

2.13 เมื่อสร้าง SIP Account และกำหนด Dial Plan เรียบร้อยแล้ว ให้ทำการรันคำสั่งของระบบโทรศัพท์ Asterisk ด้วยคำสั่งดังนี้
Asterisk# asterisk –rx “restart now”
สั่งให้ระบบโทรศัพท์ Asterisk รีสตาร์ทตัวเอง โดยไม่ต้องรีสตาร์ทเครื่อง
Asterisk# asterisk –rx “sip reload”
สั่งให้ระบบโทรศัพท์ Asterisk ทำการรีโหลดค่าต่างๆ ของโปรโตคอล SIP อีกครั้ง
Asterisk# asterisk –rx “extensions reload”
สั่งให้ระบบโทรศัพท์ Asterisk ทำการรีโหลดค่าต่างๆ ของ Dial Plan ใน Extension อีกครั้ง

รูปที่ 2.13 รีโหลดค่า SIP และ Extension

2.14 ทำการทดสอบระบบโทรศัพท์ผ่านไอพีร่วมกับโปรแกรม Soft Phone โดยเปิดระบบโปรแกรม Asterisk เพื่อรอการร้องขอการใช้งานจากโปรแกรม Soft Phone
ด้วยคำสั่ง Asterisk# asterisk –r

รูปที่ 2.14 รันโปรแกรม Asterisk

2.15 ผลการรันโปรแกร Asterisk ต้องรันทิ้งไว้เพื่อรอให้เครื่อง Client เข้ามาร้องขอตรวจสอบ SIP Account จากเครื่อง Asterisk server

รูปที่ 2.15 ผลการรันโปรแกรม Asterisk

อ้างอิง

[1] กิตติพงษ์ สุวรรณราช , “ออกแบบและติดตั้งระบบโทรศัพท์ IP-PBX ด้วย Asterisk”,บริษัท ออฟเซท เพรส จำกัด , กุมภาพันธ์ 2551

ไม่มีความคิดเห็น:

แสดงความคิดเห็น