1 คอมไพล์ dahdi-linux และ dahdi-toolsติดตั้ง
DAHDI และอย่าลืมเซ็ตให้ DADHI เป็นเซอร์วิสด้วยนะครับจะได้รันทุกครั้งที่เปิดเครื่อง
2 ติดตั้งการ์ดใส่การ์ด FXO เข้าไปในเครื่องคอมในสล๊อต PCI ที่ว่างอยู่ จากนั้นเปิดเครื่อง รอจนเครื่องบู๊ตเสร็จ
3 เช็คว่ามองเห็นการ์ดหรือเปล่าโดยเช็คที่ไฟล์ /var/log/message ใช้คำสั่ง
cat /var/log/message
- DAHDI X100P Detected
- found-x100p-card.png (14.37 KiB) เปิดดู 17818 ครั้ง
การ์ดที่เครื่องมองเห็นคือ
Wildcard X100P เซ็ตอัพอีกนิดหน่อยก็ใช้งานได้แล้วครับ
อีก 1 คำสั่งครับคือคำสั่ง
lspcilspci
- lspci command
- dahdi-hardware-lspci.png (48.73 KiB) เปิดดู 17803 ครั้ง
4 เริ่มใช้ DAHDI Tools4.1 แก้ไขไฟล์ /etc/dahdi/genconf_parametersสาเหตุที่ต้องแก้ไขไฟล์นี้ก็คือ ทำให้ค่าดีฟอลท์ที่เหมาะสมกับคอนฟิกที่เรากำลังจะใช้งานครับ แก้ที่ไฟล์นี้ที่เดียว ทุกการ์ด ทุกแชลแนล ทั้งที่กำลังจะคอนฟิกในอีกไม่ช้านี้ และการ์ดใหม่ที่จะเพิ่มในอนาคต ก็จะมีค่าดีฟอลท์คอนฟิกตามนี้ เราจะได้ไม่ต้องไปตามแก้คอนฟิก ลดโอกาสผิดพลาดลงไปได้ครับ
vi /etc/dahdi/genconf_parametersแก้ไขค่าตามนี้ และเอาเครื่องหมาย # ออก
fxs_default_start ksfxo_default_start kslc_country uscontext_lines from-pstncontext_phones from-internalบันทึกไฟล์
Note!1 ถ้าต้องการแก้ไข context ของพอร์ต FXO จาก from-pstn เป็น from-internal ก็แก้ไขที่ไฟล์นี้ได้เลยนะครับ โดยเปลี่ยนบรรทัด context_lines จาก from-pstn เป็น from-internal
2 ผมแนะนำว่าควรตั้งชื่อ context ของพอร์ต FXO ให้เหมือนกับ context ของเบอร์ Extension ดีกว่านะครับ เพราะจะทำให้เบอร์ Extension สามารถโทรออกไปหาพอร์ต FXO ได้ และเมื่อมีสายโทรเข้ามาทางพอร์ต FXO ก็จะเชื่อมต่อมายังเบอร์ Extensions ได้ ดูรายละเอียดเกี่ยวกับ context ระหว่าง Extensions และ DAHDI ได้ที่กระทู้นี้ครับ
viewtopic.php?f=12&t=212 4.2 รันยูติลิตี้ dahdi_genconfพิมพ์คำสั่งต่อไปนี้
dahdi_genconfผลจากการพิมพ์คำสั่งคือไฟล์ /etc/dahdi/system.conf จะถูกสร้างขึ้นมาใหม่ ส่วนไฟล์เดิมจะถูกเปลี่ยนชื่อเป็น /etc/dahdi/system.conf.bak
ไฟล์ system.conf ใหม่มีข้อมูลดังต่อไปนี้
# Autogenerated by /usr/sbin/dahdi_genconf on Mon Jan 11 23:42:25 2010
# If you edit this file and execute /usr/sbin/dahdi_genconf again,
# your manual changes will be LOST.
# Dahdi Configuration File
#
# This file is parsed by the Dahdi Configurator, dahdi_cfg
#
# Span 1: WCFXO/0 "Wildcard X100P Board 1" (MASTER)
fxsks=1echocanceller=mg2,1# Global data
loadzone = usdefaultzone = usซึ่งจะเลือก echo canceller ให้เราอัตโนมัติด้วยนะครับ เราไม่ควรจะแก้ไขอะไรในไฟล์นี้นะครับเพราะถ้าสั่งรัน dahdi_genconf ใหม่ข้อมูลที่แก้ไขมันก็จะหายไป
พร้อมๆกันนั้นที่ไดเร็คตอรี่ /etc/asterisk ก็จะมีไฟล์ๆนึงถูกสร้างขึ้นมาด้วย ไฟล์นี้คือ
dahdi-channels.conf ภายในไฟล์มีข้อมูลดังต่อไปนี้
; Autogenerated by /usr/sbin/dahdi_genconf on Mon Jan 11 23:42:25 2010
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;
; Span 1: WCFXO/0 "Wildcard X100P Board 1" (MASTER)
;;; line="1 WCFXO/0/0"
signalling=fxs_kscallerid=asreceivedgroup=0context=from-pstnchannel => 1callerid=group=context=defaultและเช่นเดียวกันไม่ต้องแก้ไขอะไรในไฟล์นี้นะครับ เพราะมันจะไม่อยู่อีกต่อไปถ้ารัน dahdi_genconf ใหม่ ผมขออธิบายเพิ่มเติมข้อมูลในไฟล์ /etc/asterisk/dahdi-channels.conf อีกสักเล็กน้อยนะครับ ดังนี้
1
context=from-pstn เป็นชื่อ context ของการ์ด FXO ถ้าต้องการเปลี่ยนให้เปลี่ยนที่ไฟล์ /etc/dahdi/genconf_parameters แล้วรันคำสั่ง dahdi_genconf ใหม่
2
channel => 1 เป็นหมายเลขแชลแนลของพอร์ต FXO ค่าตัวเลขนี้เราจะใช้อ้างถึงพอร์ตนี้เมื่อต้องการจะใช้งานครับ ถ้าเป็นการ์ดที่มีหลายๆพอร์ต ตัวเลขก็จะแตกต่างกันไป เช่น 1, 2, 3 เป็นต้น
signalling=fxs_kscallerid=asreceivedgroup=0context=from-pstnchannel => 1,2,3,4callerid=group=context=default3
group=0 เป็นหมายเลขกลุ่ม พอร์ตหลายๆพอร์ตสามารถนำมาอยู่กลุ่มเดียวกันได้ ลักษณะเป็น Hunting ครับ ถ้าต้องการแก้ไขให้แก้ที่ไฟล์ /etc/dahdi/genconf_parameters นะครับ แล้วรัน dahdi_genconf ใหม่
4
context=default ให้ปล่อยไว้อย่างเดิมนะครับ
5
signaling=fxsks เป็นสัญญาณที่จะกระตุ้นการทำงานของพอร์ต พอร์ต FXO ต้องเลือก singnaling เป็น fxs นะครับ ส่วน ks เป็นค่า default_start
สรุปว่าถ้าต้องการแก้ไขพารามิเตอร์ทั้งหมดนี้ ให้แก้ไขที่ไฟล์
/etc/dahdi/genconf_parameters แล้วรันคำสั่ง
dahdi_genconf ใหม่
4.3 รันคำสั่งตรวจสอบ (ไว้ตรวจสอบเท่านั้นครับ)4.3.1 คำสั่ง dahdi_cfgdahdi_cfg -vvDAHDI Tools Version - 2.2.1-rc2
DAHDI Version: 2.2.1-rc2
Echo Canceller(s):
MG2Configuration
======================
Channel map:
Channel 01: FXS Kewlstart (Default) (Echo Canceler: mg2) (Slaves: 01)1 channels to configure.Setting echocan for channel 1 to mg24.3.2 คำสั่ง dahdi_scandahdi_scan[1]active=yesalarms=OKdescription=Wildcard X100P Board 1name=WCFXO/0manufacturer=Digiumdevicetype=Wildcard X100Plocation=PCI Bus 05 Slot 03basechan=1totchans=1irq=50type=analogport=1,FXO4.3.3 คำสั่ง dahdi_monitorใช้มอนิเตอร์อัตราการขายของแชลแนลที่ต้องการมอนิเตอร์ และยังสามารถอัดเสียงพูดได้อีกด้วย
dahdi monitor 1 -vv
- DAHDI Channel Monitor
- dahdi-tools-monitor.png (4.02 KiB) เปิดดู 17814 ครั้ง
4.3.4 คำสั่ง dahdi_testใช้ทดสอบการทำงานของภาค DSP (Digitital Signal Processor) บนการ์ด FXS/FXO
dahdi_test