diff --git a/frappe/chat/doctype/chat_room/chat_room.py b/frappe/chat/doctype/chat_room/chat_room.py index b6a9ee6e5c..4de234f89b 100644 --- a/frappe/chat/doctype/chat_room/chat_room.py +++ b/frappe/chat/doctype/chat_room/chat_room.py @@ -195,7 +195,10 @@ def create(kind, owner, users = None, name = None): for user in dsettings.chat_operators: if user.user not in users: - room.append('users', user) + # appending user to room.users will remove the user from chat_operators + # this is undesirable, create a new Chat Room User instead + chat_room_user = {"doctype": "Chat Room User", "user": user.user} + room.append('users', chat_room_user) room.save(ignore_permissions = True) diff --git a/frappe/website/js/website.js b/frappe/website/js/website.js index 5744ebd977..7fa29991d0 100644 --- a/frappe/website/js/website.js +++ b/frappe/website/js/website.js @@ -421,7 +421,9 @@ frappe.ready(function() { callback: (r) => { if (r.message) { frappe.require('/assets/js/moment-bundle.min.js', () => { - frappe.require('/assets/js/chat.js'); + frappe.require('/assets/js/chat.js', () => { + frappe.chat.setup(); + }); }); } }