รบกวนสอบถามเรื่อง .csv ของ asterisk cdr ครับ
โพสต์แล้ว:
11 ก.พ. 2010 16:59
โดย rookie
ตามรูปนะครับขอรบกวนด้วยครับคือว่าใน .csv ของผมที่เก็บการโทรนะครับ หากเป็นการตัด 9 เพื่อรอสัญญาณแล้วกดหมายเลขโทรออกระบบจะบันทึกแค่ 9 เท่านั้นครับ
โดยไม่ยอมบันทึกหมายเลขที่ตามหลัง 9 ทำให้ไม่สามารถทราบได้เลยว่า ext ไหนโทรไปไหนหากเป็นการกดโดยที่ 9xxxxxxxxx โดยไม่รอสัญญาณสายนอกจะไม่สามารถโทรออกได้ครับ
ไม่ทราบว่าผมจะแก้ไขปัญหานี้ได้อย่างไรครับ ขอรบกวนด้วยครับ
ขอบคุณครับ
Re: รบกวนสอบถามเรื่อง .csv ของ asterisk cdr ครับ
โพสต์แล้ว:
11 ก.พ. 2010 20:12
โดย jubjang95
ผมว่าไฟล์ extensions.conf น่าจะมีอะไรผิดปกติครับ พอยูสเซอร์กด 9xxxxxx ถึงโทรออกไม่ได้ ลองเอามาโพสต์ให้ดูหน่อยก็ดีครับ หรือไม่ก็เข้า asterisk console แล้วก็ดูข้อความที่เห็นบนหน้าจอเวลากด 9xxxxxx
ส่วนสาเหตุที่ไฟล์ cdr บันทึกแค่ 9 ก็เป็นสาเหตุมาจาก asterisk รับรู้แค่ว่ายูสเซอร์กด 9 แต่หลัง 9 ไม่รับรู้แล้วเพราะมันตอบรับ (answer) ไปเรียบร้อยแล้ว มันนึกว่าเป็น voice หน่ะครับ
ผมมีตัวอย่าง Dial Plan ง่ายๆมาฝากครับ
exten => _9X.,1,Dial(DAHDI/g0,30,tT)
exten => _9X.,n,Hangup()
อาจต้องเขียนเพิ่มให้มันตัด 9 ออกก่อน ส่งเฉพาะตัวเลขที่เหลือออกไปทาง DAHDI channel ครับ ตัวอย่าง
[from-internal]
exten => _9X.,1,Goto(from-internal-outbound,${EXTEN:1},1)
exten => _9X.,n,Hangup
[from-internal-outbound]
exten => _X.,1,Dial(DAHDI/g0,45,tT)
exten => _X.,n,Hangup
Re: รบกวนสอบถามเรื่อง .csv ของ asterisk cdr ครับ
โพสต์แล้ว:
12 ก.พ. 2010 17:50
โดย rookie
ผมลองอย่างงี้ครับ
exten => _9x.,1,set(${EXTEN})
exten => _9x.,n,DIAL(DAHDI/g0/${EXTEN})
ทำยังไงที่ผมจะตัด 9 ออกครับเพราะตอนนี้มส่งไปหมดเลยทั้ง 9xxxxxxxxx เหอๆคิดทั้งวันเลยคิดไม่ออก
ระบบเลยเข้าใจว่าเรากด 9xxxxxxxxx เลยโทรออกไม่ได้
เกือบจะได้แล้วแท้ๆ
เอไม่ทราบว่า
ใน asterisk มันตัดคำยังไงอะครับช่วยแนะนำด้วยครับ เสร็จงานนี้ต้องขอเลี้ยงข้าวคุณ jubjang สักมื้อละถามบ่อย
ชักเกรงใจ
รบกวนด้วยนะครับ
Re: รบกวนสอบถามเรื่อง .csv ของ asterisk cdr ครับ
โพสต์แล้ว:
12 ก.พ. 2010 23:06
โดย jubjang95
ตอนเขียน Dial Plan นี้ ตัว Wildcard ผมใช้แต่ X (ตัว X ใหญ่นะครับ) ไม่เคยลอง x (ตัว x เล็กเลย) ไม่รู้ว่ามีผลทำให้ไม่เวอร์คหรือเปล่า
วิธีการตัด 9 ออก ใช้ Goto ก็ได้ครับ ตัวอย่าง
exten => _9X.,1,Goto(from-internal-outbound,${EXTEN:1},1)
exten => _9X.,n,Hangup
[from-internal-outbound]
exten => _X.,1,Dial(DAHDI/g0,45,tT)
exten => _X.,n,Hangup
โดยที่
${EXTEN:1} ตัวเลข 1 หมายถึงตัดข้างหน้าเบอร์ออก 1 หลัก ซึ่งก็คือ 9 แล้วก็โยนไปที่คอนเท็ค from-internal-outbound ส่วนตัวเลข 1 ตัวสุดท้ายหมายถึงโยนไปที่บรรทัดที่มี priority เป็น 1
ดังนั้นผมลองเทียบกับ Dial Plan ของคุณ rookie ดู ก็จะได้ประมาณนี้อ่ะครับ
exten => _9X.,1,Goto(from-internal-outbound,${EXTEN:1},1)
exten => _9X.,n,Hangup
[from-internal-outbound]
exten => _X.,1,set(${EXTEN})
exten => _X.,n,DIAL(DAHDI/g0/${EXTEN})
exten => _X.,n,Hangup
ลองดูครับ ไม่รู้ว่าจะเวอร์คมั๊ย
Re: รบกวนสอบถามเรื่อง .csv ของ asterisk cdr ครับ
โพสต์แล้ว:
13 ก.พ. 2010 17:11
โดย rookie
ได้ละครับ ขอบคุณมักๆเลยครับกว่าจะได้เหอๆ