เอาเคส NOTIFY ก่อนนะครับ
ให้เช็ค 2 จุดนะครับ ในไฟล์ไฟล์ sip.conf และ voicemail.conf
ไฟล์ sip.conf เช็คว่ามีบรรทัด mailbox หรือเปล่า ถ้าไม่มีให้เพิ่มเข้าไป รูปแบบคือ
mailbox=mailbox_number@voicemail_context โดยที่ mailbox_number คือเบอร์ Mailbox นะครับ เช่น 404 หรือ 405 ส่วน voicemail_context คือ context ในไฟล์ voicemail.conf สมมติว่าในไฟล์ voicemail.conf คอนฟิกโดยใช้คอนเท็ก [default] บรรทัด maibox ให้ใส่ mailbox=404 หรือ mailbox=404@default ก็ได้
ไฟล์ sip.conf[404]
mailbox=404
[405]
mailbox=405
ไฟล์ voicemail.conf[default]
404 => 1234,......
เสร็จแล้วรีโหลด sip และ voicemail โดยเข้า Asterisk Console แล้วพิมพ์
sip reload และ
module reload app_voicemail.so ตามลำดับ
อาจจะเพิ่ม 2 บรรทัดนี้เข้าไปในไฟล์ sip.conf ด้วยก็ได้นะครับ
[general]
notifymimetype=application/simple-message-summary
vmexten=66
66 คือเบอร์ที่ใช้โทรเข้าไปฟัง Voicemail (ผมดูจากไฟล์ extensions.conf ที่คุณ Rookie แสดงให้ดู)
อ่านข้อมูลเพิ่มเติมได้ที่
กระทู้นี้ครับSUBSCRIBER เป็น SIP message แบบหนึ่งซึ่ง SIP device ไม่ว่าจะเป็น Client หรือ Server ก็ตาม ส่งไปหา SIP Device อื่นเพื่อบอกกว่า "ถ้ามีการเปลี่ยนแปลงสถานะ กรุณาแจ้งให้ผมทราบด้วย" สถานะในที่นี้ก็ได้แก่ วางสาย ยกหู สายไม่ว่าง อะไรทำนองนี้หน่ะครับ เครื่องไอพีโฟนที่ปุ่มเยอะๆเหมือนกับเครื่องคีย์ของโอเปอร์เรเตอร์ (ผมเคยเห็นยี่ห้อ Grandstream) ที่มันมีปุ่มแสดงสถานะของเบอร์ Extensions ได้ว่าเบอร์ไหนใช้สายอยู่หรือไม่ได้ใช้สาย มันก็ใช้คอนเซ็ปต์แบบนี้แหล่ะครับ โดยมันอาจจะส่ง SUBSCRIBE request มาที่ SIP Server (IP PBX, Asterisk) หรือที่เบอร์ Extension โดยตรง เพื่อสอบถามสถานะของเบอร์ Extension แต่ละเบอร์ และถ้าเบอร์เหล่านั้นมีการเปลี่ยนสถานะมันก็จะส่งกลับไปบอก
ข้อความ SUBSCRIBER เป็นคนละกรณีกันกับ NOTIFY แจ้ง Voicemail นะครับ การที่ Client ส่ง SUBSCRIBE มาแล้ว Asterisk ส่ง 404 Not Found กลับไปนั้นเป็นเพราะว่า เราไม่ได้คอนฟิกบอกให้ Asterisk ทำอะไรหน่ะครับ ถ้าต้องการให้ Asterisk จัดการกับ SUBSCRIBE ได้ ให้ทำดังนี้ครับ
ไฟล์ sip.conf[general]
subscribecontext=
subscribe-clientไฟล์ extensions.confให้เพิ่มคอนเท็ก [
subscribe-client] ดังตัวอย่าง
[default]
exten => 404,1,Dial(SIP/404)
... คอนฟิกเดิมๆ
exten => 405,1,Dial(SIP/405)
... คอนฟิกเดิมๆ
[
subscribe-client]
exten => 404,hint,SIP/404
exten => 405,hint,SIP/405
แล้วรีโหลด sip และ dialplan ใหม่