ถามการ Lock การโทรออกสายนอกครับ

Elastix IP Pbx

Moderator: jubjang

ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย mnop_29 » 09 ก.พ. 2011 15:01

คือว่าผมต้องการจะล็อค ไม่ให้บาง extension สามารถโทรออกสายนอกได้ ตอนนี้ผมใช้วิธีให้ใส่ password อยู่ แต่สิ่งที่ผมต้องการคือ

Ext 100 สามารถตัด 9 แล้วโทรได้เลย โดยไม่ต้องใส่ password
Ext 200 ไม่สามารถตัด 9 ได้ แล้วให้ขึ้น busy

ตอนนี้ผมใช้ Elastix อยู่ ลองไปดูหลายๆๆกระทู้แล้วให้ไปแก้ในไฟล์ Extensions.conf , sip.conf ผมลองดูคอนฟิกแล้วงงไม่รู้แก้ตรงไหน

ขอบคุณล่วงหน้าน่ะครับ ช่วยหน่อยน่ะครับ
mnop_29
Silver Member
 
โพสต์: 27
ลงทะเบียนเมื่อ: 08 ธ.ค. 2010 15:18

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย wiratf » 09 ก.พ. 2011 16:28

ไม่แน่ใจว่าจะ ตรงกับ โจทย์ที่ให้มาหรือเปล่านะครับ
สมมติ เบอร์ 100 ให้ผูกกับ Context A ที่สามารถโทรออกได้โดยกการตัด 9
อีกเบอร์ 200 ก็ผูกกับ Context B ที่ไม่สามารถโทรตัด 9 ได้
ประมาณนี้ครับ
wiratf
Bronz Member
 
โพสต์: 9
ลงทะเบียนเมื่อ: 04 พ.ค. 2010 16:40

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย mnop_29 » 10 ก.พ. 2011 10:06

ใช่ครับ อยากได้ประมาณนี้แหละครับ แต่ไม่แน่ใจจะไปแก้ที่ไฟล์ไหนของ Elastix และก็ระบบยังบันทึกการทำงานของpabx เหมือนเดิม
mnop_29
Silver Member
 
โพสต์: 27
ลงทะเบียนเมื่อ: 08 ธ.ค. 2010 15:18

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย peeturn » 15 ก.พ. 2011 13:01

ใน Elastix หลังจากสร้าง Extension แล้ว Edit Extension นั้น จะเห็นว่ามี Context ให้เราแก้ไขได้ครับซึ่ง default จะเป็น from-internal ครับ และ context=from-internal จะสามารถ โทรออกผ่าน outbound ที่เราสร้างมาได้ทั้งหมดครับ ถ้าไม่ต้องการให้โทรออกได้ก็เปลี่ยนเป็นชื่อ context อื่นครับ แล้วก็อย่าลืม include ให้โทรหา context อื่นด้วยนะครับไม่งั้นโทรหาเบอร์อื่นไม่ติดครับ
peeturn
Gold Member
 
โพสต์: 122
ลงทะเบียนเมื่อ: 21 ธ.ค. 2009 09:29

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย mnop_29 » 20 ก.พ. 2011 09:41

ถ้าไม่ต้องการให้โทรออกได้ก็เปลี่ยนเป็นชื่อ context อื่นครับ แล้วก็อย่าลืม include ให้โทรหา context อื่นด้วยนะครับไม่งั้นโทรหาเบอร์อื่นไม่ติดครับ


แล้วเจ้า include context ที่เราจะกำหนดใหม่ เราจะต้องไปกำหนดที่ ไฟล์ไหน แล้วแก้ยังไง ช่วยยกตัวอย่างหน่อยได้มั้ยครับ ไม่รู้จิงๆๆ ช่วยหน่อยน่ะครับ
mnop_29
Silver Member
 
โพสต์: 27
ลงทะเบียนเมื่อ: 08 ธ.ค. 2010 15:18

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย nuiz » 20 ก.พ. 2011 17:01

ในแต่ละเบอร์ Extensions (เมนู PBX -> Extensions) จะมีบรรทัด Context อยู่อ่ะครับ ดีฟอลท์จะเป็น from-internal
ถ้าทุกเบอร์ Extension ใช้ context ค่าดีฟอลท์ from-internal ทั้งหมด มันก็จะโทรหากันได้ทุกเบอร์ รวมทั้งกดออกภายนอกด้วย (ถ้ามีคอนฟิกไว้ใน Outbound Routes)

ทีนี้สมมติว่ามีเบอร์ Extensions อยู่ 10 เบอร์ ซึ่ง 5 เบอร์แรกใช้ context = from-internal ตามค่าดีฟอลท์ ส่วน 5 เบอร์หลังแก้ไข conext เป็น from-internal-2

จะทำให้ 5 เบอร์แรกโทรหากันได้ และโทรออกไปภายนอกได้ และ 5 เบอร์หลังโทรหากันได้แต่จะโทรออกภายนอกไม่ได้

แต่ 5 เบอร์แรกจะโทรหา 5 เบอร์หลัง และ 5 เบอร์หลังจะโทรหา 5 เบอร์แรกไม่ได้ เพราะว่ามันอยู่คนละ context กันจะโทรหากันไม่ได้ครับ นี้คือคอนเซ็ปต์ความสำคัญของ context ใน Asterisk ครับผม

และกรณีของคุณ mnop_29 นั้นนะครับ เบอร์ 100 ให้อยู่ใน context = from-internal ตามค่าดีฟอลท์ก็จะโทรออกตัด 9 ได้ตามปกติ
แต่สำหรับเบอร์ 200 ถ้าเซ็ต context=from-internal-2 มันจะโทรหาเบอร์ 100 ไม่ได้ และก็จะตัด 9 ไม่ได้ด้วยอ่ะครับ

ไม่ต้องแก้ไขที่ไฟล์ไหนทั้งนั้นครับ แก้จากหน้าเว็บ แล้วมันก็จะทำให้เองเลย

เท่านี้ก่อนครับ ลองดูก่อน ติดปัญหาก็โพสต์ถามมาใหม่ครับ
** หากมีปัญหากับอุปกรณ์ที่ซื้อมาเองหรือบริการที่ทำขึ้นมาเอง ให้โพสต์ถามในเว็บบอร์ดนี้นะครับ **
** งานเร่งด่วนติดต่อว่าจ้างที่เบอร์ 08-5161-9439 อีเมล์ iamaladin@gmail.com ไลน์ NuizVoip ครับ **
nuiz
Diamond Member
 
โพสต์: 7069
ลงทะเบียนเมื่อ: 24 มี.ค. 2010 09:33

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย mnop_29 » 20 ก.พ. 2011 20:34

ขอบคุณครับท่าน nuiz

จากคำตอบของท่าน nuiz ผมลองทำตามแล้วครับ แต่ในกรณีของผม สมมุติให้ 5 เบอร์แรกโทรตัด 9 ได้ ส่วน 5 เบอร์หลังไม่สามารถตัด 9 ได้ แต่ ผมอยากให้ ทั้ง 5 เบอร์แรก และ 5 เบอร์หลังสามารถโทรติดต่อหากันภายในได้ด้วยครับ

้ถ้าใน Asterisk แบบเพียวๆ เราสามารถกำหนดในไฟล์ Extensions.conf ได้เลย แต่ใน Elastix ไฟล์ Extensions.conf ไม่ค่อยมีคอนฟิกที่เกี่ยวกับ context ผมเลยไม่รู้ว่าจะต้องไปแก้ หรือเพิ่มเจ้า context อีกตัวตรงไหนดีิ
mnop_29
Silver Member
 
โพสต์: 27
ลงทะเบียนเมื่อ: 08 ธ.ค. 2010 15:18

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย nuiz » 20 ก.พ. 2011 22:53

อ่านแล้วค่อยๆทำความเข้าใจไปนะครับ เขียนตอบขณะกำลัง ง่วงงงงง อาทิตย์นี้ไม่ได้หยุดสักวันเลย

ถึงจะใช้ Elastix, FreePBX ก็ทำได้ไม่ยากครับ เพิ่ม context และ include ในไฟล์ extensions.conf ไฟล์ๆนี้แก้ไขได้เลยครับ (ไฟล์ที่แก้ไขไม่ได้คือไฟล์ที่มีคำว่า additional อยู่ เช่น extensions_additional.conf)

สมมติว่า 5 เบอร์แรกอยู่ context = from-internal ส่วน 5 เบอร์หลังอยู่ context=from-internal-2

ดูที่ไฟล์ extensions.conf ค้นหา [from-internal]
ใส่บรรทัด include => from-internal-2 เพิ่มเข้าไป จะใส่ไว้ใต้ [from-internal] เลยหรือว่าใส่ต่อบรรทัดที่มีอยู่แล้วก็ได้ แบบนี้

[from-internal]
include => from-internal-xfer
include => from-internal-2

เซฟไฟล์ แล้วพิมพ์ asterisk -rx "dialplan reload' จาก Linux Prompt ทำแค่นี้ก็จะทำให้ Extension ที่อยู่ใน context=from-internal โทรหา Extension ที่อยู่ใน context=from-internal-2 ได้แล้วครับ แต่ว่า Extension ใน context=from-internal-2 ยังโทรย้อนกลับมาไม่ได้ ต้องทำเพิ่มแบบนี้ครับ

ไฟล์ extensions.conf ไฟล์เดิม เพิ่ม [from-internal-2] เข้าไป เพิ่มถัดจาก [from-internal] ก็ได้ครับ แบบนี้

[from-internal]
include => from-internal-xfer
include => from-internal-2

[from-internal-2]
include => from-internal
exten => _9X.,1,Hangup

เสร็จหล่ะครับ เซฟไฟล์แล้วพิมพ์ asterisk -rx "dialplan reload" แล้วก็ลองได้เลยครับ

สังเกตุนิดนะครับว่าใน [from-internal-2] นั้น ถ้ายูสเซอร์กด 9 นำหน้า Asterisk จะตัดสายเลย ถ้าอยากให้มีเสียงบอกประมาณว่า ขออภัยค่ะท่านไม่ได้รับอนุญาตให้กดหมายเลขนี้ ก็ให้อัดเสียง แปลงเสียงให้เป็นฟอร์เม็ต Windows PCM, 8000 Hz, 16 Bit, Mono ก่อน แล้วอัพโหลดเข้าเซอร์เวอร์ด้วยเมนู PBX-> System Recordings สมมติว่าตั้งชื่อไฟล์เป็น sorry-you-are-not-authorized แล้วเขียนใหม่แบบนี้ครับ

[from-internal-2]
include => from-internal
exten => _9X.,1,Playback(custom/sorry-you-are-not-authorized)
exten => _9X.,n,Hangup

ถ้าสงสัยว่าทำไมมันสั้นจัง ครับมันสั้นๆแค่นี้แหล่ะแต่รับรองทำงานได้อย่างที่ต้องการได้ชัวร์ ถ้าจะให้ผมอธิบายการทำงาน ก็จะอธิบายประมาณว่า
สมมติว่า extensions 100 อยู่ context=from-internal และ extensions 200 อยู่ context=from-internal-2

เบอร์ 100 กดหา 200, asterisk จะมองหาเบอร์ 200 มันก็จะรู้จาก dialplan ว่าต้องโทรหาเบอร์ 200 ยังไง ด้วย protocol อะไร แต่เนื่องจากเบอร์ 200 มันอยู่ context=from-internal-2 ซึ่งอยู่คนละ context กัน ปกติจะทำไม่ได้ แต่การที่เราใส่บรรทัด include=>from-internal-2 ไว้ด้วย เป็นการบอกว่าเรายอมให้มีการโทรข้าม context กันได้ จึงทำให้มันโทรหาเบอร์ 200 ได้ ก็ประมาณนี้หน่ะครับ

สนใจทำเสียงพูด IVR ภาษาไทย ตามบทความนี้ครับ Text-To-Speech ภาษาไทย

ลองดูครับ ติดขัดตรงไหนโพสต์ถามใหม่นะครับ

นอนก่อนครับ
** หากมีปัญหากับอุปกรณ์ที่ซื้อมาเองหรือบริการที่ทำขึ้นมาเอง ให้โพสต์ถามในเว็บบอร์ดนี้นะครับ **
** งานเร่งด่วนติดต่อว่าจ้างที่เบอร์ 08-5161-9439 อีเมล์ iamaladin@gmail.com ไลน์ NuizVoip ครับ **
nuiz
Diamond Member
 
โพสต์: 7069
ลงทะเบียนเมื่อ: 24 มี.ค. 2010 09:33

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย mnop_29 » 21 ก.พ. 2011 09:15

ผมขอขอบคุณท่าน nuiz และเพื่อนๆๆ ทุกท่าน รวมถึงพื้นที่เว็ป ที่สละเวลามาแบ่งปันความรู้ ให้กันน่ะครับ

ตอนนี้สำหรับโจทย์ที่ผมต้องการจะแก้ ผมทำตามคำแนะนำของท่าน nuiz สำเร็จแล้วครับ ขอบคุณมากๆๆ ครับ :D
mnop_29
Silver Member
 
โพสต์: 27
ลงทะเบียนเมื่อ: 08 ธ.ค. 2010 15:18

Re: ถามการ Lock การโทรออกสายนอกครับ

โพสต์โดย Pisces » 26 เม.ย. 2011 09:05

ขอขอบคุณคุณ nuiz ด้วยเหมือนกันค่ะ กำลังหาวิธีอยู่เลย ขอบคุณมากนะคะ :D
Pisces
Bronz Member
 
โพสต์: 17
ลงทะเบียนเมื่อ: 23 ก.ค. 2010 17:22

ต่อไป

ย้อนกลับไปยัง Elastix - Unified Communications Software

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

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