สวัสดีครับ
ผมต้องการแยก voicemail ไปยัง file server ซึ่งเป็น Windows
โดยผมได้ทำการ mount samba filesystem ด้วยคำสั่งดังนี้
mount -t smbfs -o username=Administrator,password=myPassword //192.168.1.77/voicemail /mnt/voicemailเมื่อได้ /mnt/voicemail มาแล้ว จึงได้ทำ link โดย redirect จาก /var/spool/asterisk/voicemail ไปยัง /mnt/voicemail ด้วยคำสั่งดังนี้
ln -s /mnt/voicemail /var/spool/asterisk/voicemailเื่พื่อหลีกเลี่ยงปัญหา permission ผมจึงแก้ไข
/etc/fstab โดยกำหนดสิทธิอ่านเขียน เป็น 777 โดยผู้เป็นเจ้าของคือ asterisk ด้วยคำสั่งดังนี้
\\192.168.5.77\voicemail /mnt/voicemail smbfs password=myPassword,fmask=777,uid=100,dmask=777,gid=101,username=Administrator 0 0ที่ File Server (Windows) ผมได้ทำการลบไฟล์ทั้งหมดใน \\192.168.5.77\voicemail ออก เหลือเพียง folder ที่ว่างเปล่า จากนั้นทดสอบ โดยการโทรไปยังเบอร์ที่เปิดใช้บริการ voicemail ไว้ หลังจาก verbose ก็
ดูเหมือนจะทำงานได้ตามปกติ
-- Playing 'beep' (language 'en')
-- Recording the message
-- x=0, open writing: /var/spool/asterisk/voicemail/default/7001/tmp/sOpVTs format: wav49, 0x9080b00
-- x=1, open writing: /var/spool/asterisk/voicemail/default/7001/tmp/sOpVTs format: wav, 0x9084d28
-- User ended message by pressing #
-- Playing 'auth-thankyou' (language 'en')
-- Playing 'vm-review' (language 'en')
-- Saving message as is
-- Playing 'vm-msgsaved' (language 'en')
-- Executing Goto("SIP/7000-090740d8", "exit-SUCCESS|1") in new stack
-- Goto (macro-vm,exit-SUCCESS,1)
-- Executing Playback("SIP/7000-090740d8", "goodbye") in new stack
-- Playing 'goodbye' (language 'en')
-- Executing Hangup("SIP/7000-090740d8", "") in new stack
หลังจากที่บันทึกเสียงเสร็จ ผมได้ตรวจสอบ folder \\192.168.5.77\voicemail ซึ่ง Asterisk ก็ได้สร้าง folder ของ account นั้นๆ ให้
voicemail\
voicemail\default
voicemail\default\7001
voicemail\default\7001\greet
voicemail\default\7001\INBOX
voicemail\default\7001\temp
voicemail\default\7001\tmp
voicemail\default\7001\unavailแต่เมื่อดูใน folder
voicemail\default\7001\INBOX กลับไม่มีไฟล์เสียงถูกบันทึกเอาไว้
ผมได้ทำการทดสอบการเปลี่ยน mount จาก /var/spool/asterisk/voicemail ไปยัง /mnt/voicemail_local (ซึ่งเป็น directory ที่ผมสร้างขึ้นมาไว้) ก็พบว่า Asterisk ทำงานตามปกติ
ที่สงสัยตอนนี้คือ permission ในการเขียนน่าจะผิดปกติ แต่อย่างไรก็ตาม Asterisk กลับสร้าง folder ของ account ได้?
ไม่ทราบว่าท่านใดมีปัญหานี้บ้างครับ หรือมีความเห็นในการตรวจสอบแก้ไขอย่างไร?ขอบคุณล่วงหน้าครับ 