diff --git a/ChatServiceApp/funcs.py b/ChatServiceApp/funcs.py index a4def9c..7e4c068 100644 --- a/ChatServiceApp/funcs.py +++ b/ChatServiceApp/funcs.py @@ -89,6 +89,8 @@ def update_chat(data): context_Dict.update({'cur_receiver': receiver}) + required_beep = data['required_beep'] + if not ticket: @@ -120,15 +122,14 @@ def update_chat(data): }) - if sender and receiver: - msgs = get_msgs_for_chat_w_users(sender, receiver) - unreaded_msgs = msgs.filter(status='sended') - if msgs and unreaded_msgs: - context_Dict.update({'messages': msgs}) - chat_html = render_to_string(tpl_name, context_Dict) - res_Dict.update({'chat_html': chat_html}) - required_beep = True - # unreaded_msgs.update(status='seen') + # if sender and receiver: + msgs = get_msgs_for_chat_w_users(sender, receiver) + # unreaded_msgs = msgs.filter(status='sended') + # if msgs and unreaded_msgs: + context_Dict.update({'messages': msgs}) + chat_html = render_to_string(tpl_name, context_Dict) + res_Dict.update({'chat_html': chat_html}) + # unreaded_msgs.update(status='seen') diff --git a/ChatServiceApp/websocket_views.py b/ChatServiceApp/websocket_views.py index e203261..c0d8af4 100644 --- a/ChatServiceApp/websocket_views.py +++ b/ChatServiceApp/websocket_views.py @@ -34,30 +34,38 @@ class ChatConsumer(WebsocketConsumer): receiver = data['receiver'] from .funcs import send_msg, update_chat - data.update({'cur_user': sender}) + data.update({ + 'cur_user': sender, + 'required_beep': False, + }) send_msg(data) Dict = update_chat(data) + group_name = f'user_{sender}' resDict = { 'type': 'update_chat', 'sender': sender, 'receiver': receiver, + 'group_name': group_name, + } resDict.update(Dict) - group_name = f'user_{sender}' async_to_sync(self.channel_layer.group_send)( group_name, resDict ) - data.update({'cur_user': receiver}) + data.update({ + 'cur_user': receiver, + 'required_beep': True, + }) Dict = update_chat(data) - group_name = f'user_{receiver}' resDict = { 'type': 'update_chat', 'sender': receiver, 'receiver': sender, + 'group_name': group_name, } resDict.update(Dict) async_to_sync(self.channel_layer.group_send)( @@ -71,7 +79,7 @@ class ChatConsumer(WebsocketConsumer): self.send(text_data=json.dumps(data)) def update_chat(self, data): - print(f'ws update_chat {str(self.channel_layer.groups)}') + print(f'ws update_chat {data["group_name"]}') self.send(text_data=json.dumps(data))