ฉันต้องการใช้อุปกรณ์ไคลเอนต์ที่แตกต่างกันสองเครื่องที่มี jabber ID เดียวกัน และฉันต้องการให้เธรดข้อความปรากฏเหมือนกันสำหรับทั้งสองเครื่อง แม้ว่าไคลเอนต์เครื่องหนึ่งจะออฟไลน์เป็นระยะเวลาหนึ่งก็ตาม ทั้งสองไคลเอนต์เรียกใช้การสนทนาและเซิร์ฟเวอร์ถูก ejabberd 21.12
ทั้ง mod_carboncopy (XEP-0208) และ mod_mam เปิดใช้งานใน ejabberd.yml
mod_mam เปิดใช้งานดังนี้:
mod_mam:
db_type: sql
access_preferences: ไม่มี
ถือว่า_mam_usage: จริง
ค่าเริ่มต้น: ไม่เคย
พฤติกรรมที่สังเกตคือ:
- ข้อความที่ส่งไปยังบัญชีจะส่งถึงลูกค้าทั้งสองรายหากทั้งสองออนไลน์อยู่
- หากลูกค้าออนไลน์เพียงรายเดียว ให้ส่งข้อความไปยังบัญชีที่ส่งถึงลูกค้าออนไลน์ ไคลเอนต์ที่สองไม่ได้รับข้อความเหล่านี้เมื่อออนไลน์
- ข้อความที่ส่งจากไคลเอนต์ทั้งสองปรากฏในเธรดไคลเอ็นต์ทั้งสอง (ฉันเชื่อว่านี่เป็นการกระทำของ mod_carboncopy)
พฤติกรรมที่ต้องการ:
- ข้อความที่ส่งไปยังบัญชีจะส่งถึงลูกค้าทั้งสองราย หากออนไลน์อยู่จะได้รับข้อความ ไคลเอนต์ที่สองได้รับข้อความเมื่อออนไลน์ในภายหลัง