หน้า 1 จากทั้งหมด 1

เทคนิคการจำกัดช่วงเวลาการโทรออกใน Asterisk

โพสต์โพสต์แล้ว: 15 พ.ค. 2011 12:24
โดย nuiz
วันนี้นำเสนอเทคนิคการจำกัดช่วงเวลาการโทรออก (time based) นะครับ
ยกตัวอย่างต้องการจะจำกัดช่วงเวลาการโทรออกผ่าน Trunk อันใดอันหนึ่งที่เราไปเหมาๆไว้ เขาจำกัดช่วงเวลาการโทรไว้ ให้โทรได้ช่วง 09:00 - 17:59 วันจันทร์ถึงศุกร์ จะไม่คิดเงินเพิ่ม เพราะเหมาไว้แล้ว ถ้าโทรนอกช่วงเวลานี้ก็จะเสียเงินเพิ่ม ประมาณนี้ครับ

ไฟล์ /etc/asterisk/extensions.conf

[from-internal]
; โทรออกสายนอก ให้โทรไม่ได้ช่วง 18:00 เป็นต้นไป และเริ่มโทรได้เวลา 09:00
exten => _0X.,1,GotoIfTime(18:00-08:59|mon-fri|1-31|jan-dec?out-of-time|s|1)
exten => _0X.,n,Dial(SIP/${EXTEN}@trunk-true,60)
exten => _0X.,n,Hangup

; โทรภายในระหว่างเบอร์ extension ด้วยกัน ไม่เช็คเวลา
exten => _1XX.,1,Dial(SIP/${EXTEN},60,tT)
exten => _1XX.,n,Hangup

[out-of-time]
exten => s,1,Playback(prepaid-sorry-out-of-time)
exten => s,n,Hangup

โดยที่ Asterisk จะเล่นไฟล์เสียง prepaid-sorry-time-out บอกว่า "ขออภัยค่ะ ท่านไม่สามารถใช้บริการในช่วงเวลานี้ได้" แล้วตัดสายไป ดาวน์โหลดไฟล์เสียงนี้

จะโทรออกทาง trunk-true ได้แค่ช่วงเวลา 09:00 - 17:59 ของวัน monday ถึง friday ของวันที่ 1 ถึง 31 ของเดือน january ถึง december หรืออาจจะเขียนแบบนี้ก็ได้

18:00-07:59|mon-fri|*|*
หมายถึงช่วงเวลาตั้งแต่ 18:00 เรื่อยไปจนถึง 07:59 ของวัน monday ถึง friday ทั้งเดือน ทั้งปี

18:00-07:59|*|*|*
หมายถึง ทุกวัน ทั้งเดือน ทั้งปี

พอเป็นไอเดียครับ อ่อ ก่อนใช้งานก็อย่าลืมเช็ควัน เวลา ในเครื่องเซอร์เวอร์ก่อนนะครับว่าเวลาตรงมั๊ย

บทความที่เกี่ยวข้อง
เทคนิคการจำกัดช่วงเวลาการโทรออกบน Elastix, FreePBX โดยคอนฟิกผ่านหน้าเว็บ

Re: เทคนิคการจำกัดช่วงเวลาการโทรออกใน Asterisk

โพสต์โพสต์แล้ว: 15 พ.ค. 2011 14:23
โดย sitt01
ขอบคุณครับ ว่าแต่ว่าเขียนไว้เพิ่มไว้ที่ไหนครับ

Re: เทคนิคการจำกัดช่วงเวลาการโทรออกใน Asterisk

โพสต์โพสต์แล้ว: 16 พ.ค. 2011 17:50
โดย sirom
ยังโทรออกได้ครับ...ทำไงดี หรือ ต้องไปใส่ไว้ใต้ context [from-inernal-xfer]
....
[from-internal]
include => from-internal-xfer
include => bad-number
;outbound call
include => trunk-CAT|06:10-17:30|mon-sun|1-31|jan-dec
; internal call
exten => _1XX.,1,Dial(SIP/${EXTEN})
exten => _1XX.,n,Hangup

[trunk-CAT]
exten => _699|0N.,1,Dial(SIP/${EXTEN}@trunk-CAT,60)
exten => _699|0N.,n,Hangup
......

Re: เทคนิคการจำกัดช่วงเวลาการโทรออกใน Asterisk

โพสต์โพสต์แล้ว: 16 พ.ค. 2011 19:11
โดย nuiz
อันนี้ผมลองกับเฉพาะใน Asterisk ครับ ยังไม่ได้ลองกับ Elastix
ลองใส่ใน Context ที่ว่าดูครับ ใช้ Elastix เวอร์ชั่นไรครับ

Re: เทคนิคการจำกัดช่วงเวลาการโทรออกใน Asterisk

โพสต์โพสต์แล้ว: 18 พ.ค. 2011 10:20
โดย peeturn
Asterisk version อะไรครับ

Re: เทคนิคการจำกัดช่วงเวลาการโทรออกใน Asterisk

โพสต์โพสต์แล้ว: 18 พ.ค. 2011 10:32
โดย nuiz
Asterisk 1.4.36 ครับ