คอนฟิก Asterisk เชื่อมต่อแบบ H.323

Asterisk Opensource IP Pbx

คอนฟิก Asterisk เชื่อมต่อแบบ H.323

โพสต์โดย nuiz » 04 เม.ย. 2010 01:46

ดาวน์โหลด Asterisk H.323 นี้ในรูปแบบไฟล์ PDF

เมื่อวันก่อนคนที่ผมดูแลเครื่องให้เขาได้เร้าท์ที่เป็น H.323 มา แต่เซอร์เวอร์ที่เขาใช้เป็น Asterisk ซึ่งปกติก็ใช้แต่ SIP ผมเองไม่เคยทำ H.323 บน Asterisk มาก่อน (แต่รู้ว่ามันทำได้) เคยแต่คอมไพล์แต่ไม่เคยใช้งานจริงสักที ถึงคราวจะได้ใช้งานจริงสักที ผมลองแล้วก็เวอร์คนะครับใช้งานได้ดีด้วยอีกต่างหาก จะมีปัญหาอยู่นิดนึงก็ตรงเรื่องของ DTMF นี่แหล่ะ เวอร์คบ้างไม่เวอร์คบ้าง แต่คนที่ดูแล H.323 Softswitch ก็บอกว่าตัวเซอร์เวอร์เขาเองก็มีปัญหาเรื่อง DTMF อยู่ด้วย ผมเลยไม่รู้ว่าตกลงปัญหามันอยู่ที่ Asterisk หรือว่า H.323 Softswitch กันแน่ ผมก็เคยได้ยินมาว่าเวลาใช้ Asterisk แปลงระหว่าง SIP-H.323 จะมีปัญหาเรื่อง DTMF ว่าจะลองปรับจูนดูซะหน่อย เลยได้ลองกันหล่ะ

มาดูรูปกันดีกว่าครับ คอนฟิกนี้ลูกค้าส่งมาเป็น SIP ส่งมาเข้า Asterisk แล้วให้ Asterisk แปลงเป็น H.323 แล้วส่งไปยัง H.323 Gateway/Softswitch คอนฟิกนี้ไม่มี Gatekeeper นะครับ

asterisk-sip-h323-gateway.png
Asterisk SIP H.323
asterisk-sip-h323-gateway.png (20.68 KiB) เปิดดู 3469 ครั้ง


มาเริ่มทำงานกันดีกว่าครับ

1. คอมไพล์ Asterisk ให้รองรับ H.323
บทความนี้ Asterisk H.323

2. คอนฟิกไฟล์ h323.conf
โค้ด: เลือกทั้งหมด
vi /etc/asterisk/h323.conf


[general]
port=1720
;บรรทัด bindaddr ควรใส่เป็น ip จริงๆ ไม่ควรใส่ 0.0.0.0 เดี๋ยวไม่งั้น h.323 อาจจะใช้ 127.0.0.1 เป็นไอพีของมัน เวลาโทรจะไม่ได้ยินเสียง
bindaddr=192.168.4.55
;tos=lowdelay
;amaflags=billing
;accountcode=myh323
;disallow=all
;allow=g729
;allow=g723
;allow=gsm
;allow=ulaw
;allow=alaw
;dtmfmode=rfc2833
;เซ็ต rfc2833 payload type ปกติใช้ค่า 101 แต่มีบางยี่ห้อ บางรุ่นใช้ 97 ต้องคอนฟิกให้ตรงกันครับ ไม่งั้น dtmf จะไม่เวอร์ค
;dtmfcodec=101
;ไม่ได้ใช้งาน gatekeeper
gatekeeper=disable
allowgkrouted=no
;ยอมรับ anonymous call หรือ call ที่ไม่ได้คอนฟิก host/ip ไว้
acceptanonymous=no
;เช็ต authorize จาก ip address ไม่ใช่ h.323 alias
userbyalias=no
;เซ็ต context สำหรับ anonymous call
context=default
;เซ็ต progress_setup=3 ให้คุยกับ cisco gateway ได้
progress_setup=3
progress_alert=8
progress_audio=yes
tunneling=none
;เซ็ต jitter buffer
;jbenable=no

[trunk_h323]
type=peer
host=192.168.100.1
port=1720
context=trunk_h323
incominglimit=300
faststart=yes
h245tunneling=no
disallow=all
allow=g729
dtmfmode=rfc2833
dtmfcodec=101
amaflags=billing
rtptimeout=60
h323id=H323-Gw

3. คอนฟิก Dialplan

[from-internal]
include => trunk_h323
exten => _1XX.,1,Dial(SIP/${EXTEN},30,tT)
exten => _1XX.,n,Hangup

[trunk_h323]
exten => _0X.,1,Dial(H323/${EXTEN}@trunk_h323,30,tT)
exten => _0X.,n,Hangup

4. กราฟพิสูจน์ว่าใช้งานได้จริงๆ
ผมมีกราฟที่พิสูจน์ว่า H.323 ใช้งานได้ดีบน Asterisk กราฟนี้ผมสร้างจากโปรแกรม Cacti และมอนิเตอร์ Asterisk SNMP โดยมอนิเตอร์ H.323 Channel โดยใช้ค่า OID = .1.3.6.1.4.1.22736.1.5.4.1.7.1 อ่อเครื่องนี้ผมใช้ Asterisk 1.4 นะครับ

asterisk-h323-graph.png
Asterisk H.323 Statistics
asterisk-h323-graph.png (74.57 KiB) เปิดดู 3469 ครั้ง


กราฟนี้แสดงจำนวน Active H.323 Channels ที่ 60 Concurrent ครับ ระหว่างทำงานผมเช็ค CPU, Process, Load ก็ปกติดีครับ
** หากมีปัญหากับอุปกรณ์ที่ซื้อมาเองหรือบริการที่ทำขึ้นมาเอง ให้โพสต์ถามในเว็บบอร์ดนี้นะครับ **
** งานเร่งด่วนติดต่อว่าจ้างที่เบอร์ 08-5161-9439 อีเมล์ iamaladin@gmail.com ไลน์ NuizVoip ครับ **
nuiz
Diamond Member
 
โพสต์: 6993
ลงทะเบียนเมื่อ: 24 มี.ค. 2010 09:33

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

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

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

cron