ซึ่งเมื่อเลือก Ring Strategy เป็นบบ rrmemory จะทำให้ลำดับการเรียกเบอร์ Extension จะเรียงแบบนี้ครับ 204 -> 122- > 123 -> 204 -> 122 -> .... วนไปแบบนี้ ไม่ว่าจะเปิดเครื่องทิ้งไว้กี่วัน กี่สัปดาห์ ก็ตาม จนกว่าจะรีสตาร์ทเครื่อง หรือรีสตาร์ท Asterisk จึงจะเริ่มที่ 204 ใหม่อีกครั้ง
มีลูกค้าท่านหนึ่งอยากได้แบบนี้ครับ ทุกเช้าลูกค้าสายแรกจะต้องดังที่เบอร์ 204 เสมอ (ซึ่งเป็นเบอร์แรกใน Queue) จากนั้นสายต่อๆมาให้รันไปตาม Ring Strategy ที่เลือกไว้ มีเงื่อนไขคือต้องไม่มีการรีสตาร์ทเครื่อง ไม่มีการรีสตาร์ท Elastix เพราะเครื่องนี้ต้องรองรับงานอย่างอื่นด้วย
ก็พอมีวิธีครับ โดยการสั่งให้ unload/load โมดูล app_queue.so ใหม่ ผมเอาใส่ไว้ใน Cron เลย ตามนี้ครับ
พิมพ์คำสั่ง
- โค้ด: เลือกทั้งหมด
crontab -e
แล้วเพิ่มบรรทัดต่อไปนี้ ต่อท้ายบรรทัดเดิม (ถ้ามี)
- โค้ด: เลือกทั้งหมด
#Reset Queue' Member Order
30 04 * * * /usr/sbin/asterisk -rx "module unload app_queue.so"
31 04 * * * /usr/sbin/asterisk -rx "module load app_queue.so"
เมื่อถึงเวลา 04:30 ของทุกๆวัน Asterisk ก็จะ Unload โมดูล app_queue.so และรออีก 1 นาทีก็จะ load ขึ้นมาใหม่ ซึ่งจะทำให้ทุกๆเช้าลำดับก็จะมาเริ่มที่สายแรกก่อนเสมอครับ จากนั้นก็โฟลว์ตาม Ring Strategy ที่เลือกไว้ครับ
ทดสอบแล้วเวอร์คครับ
ป.ล. มีคำสั่ง reload ด้วยครับ แบบนี้ asterisk -rx "module reload app_queue.so" แต่จะแค่เป็นการรีโหลดไฟล์ queuerules.conf ใหม่ ไม่่รีเซ็ตลำดับให้