diff --git a/messages/__pycache__/base.cpython-39.pyc b/messages/__pycache__/base.cpython-39.pyc index c522b12..11e049f 100644 Binary files a/messages/__pycache__/base.cpython-39.pyc and b/messages/__pycache__/base.cpython-39.pyc differ diff --git a/messages/__pycache__/gift.cpython-39.pyc b/messages/__pycache__/gift.cpython-39.pyc index 47ab038..58a2271 100644 Binary files a/messages/__pycache__/gift.cpython-39.pyc and b/messages/__pycache__/gift.cpython-39.pyc differ diff --git a/messages/__pycache__/utils.cpython-39.pyc b/messages/__pycache__/utils.cpython-39.pyc index 5723ab7..6b9e066 100644 Binary files a/messages/__pycache__/utils.cpython-39.pyc and b/messages/__pycache__/utils.cpython-39.pyc differ diff --git a/messages/base.py b/messages/base.py index 6a7e619..5bfb455 100644 --- a/messages/base.py +++ b/messages/base.py @@ -1,3 +1,4 @@ +from datetime import datetime from store.mongo import MongoStore from config.helper import config @@ -8,6 +9,9 @@ class Base: def set_payload(self, payload): self.instance.ParseFromString(payload) + + def extra_info(self): + return dict() def user(self): return self.instance.user @@ -38,12 +42,18 @@ class Base: store.set_collection(self.instance.common.method) - store.insert_one({ + msg = { "msgId": self.instance.common.msgId, "roomId": self.instance.common.roomId, "userId": user.id, - 'content': self.format_content() - }) + 'content': self.format_content(), + 'created_at': datetime.now().strftime("%Y-%m-%d %H:%M:%S") + } + + if len(self.extra_info()): + msg.update(self.extra_info()) + + store.insert_one(msg) except Exception as e: print(self.instance.common.method + ' persists error') diff --git a/messages/gift.py b/messages/gift.py index f73d27a..d185b0c 100644 --- a/messages/gift.py +++ b/messages/gift.py @@ -7,6 +7,13 @@ class GiftMessage(Base): def __init__(self): self.instance = message_pb2.GiftMessage() + def extra_info(self): + return { + 'giftId': self.instance.gift.id, + 'gitfName': self.instance.gift.name, + 'giftCount': self.instance.gift.diamondCount, + } + def format_content(self): return self.instance.common.describe diff --git a/messages/utils.py b/messages/utils.py index b145fe8..561e3b9 100644 --- a/messages/utils.py +++ b/messages/utils.py @@ -37,36 +37,42 @@ def decodeMsg(messages): member_message = MemberMessage() member_message.set_payload(message.payload) member_message.persists() + print(f"\n{RED}[+] {member_message} {RESET}") elif message.method == 'WebcastSocialMessage': social_message = SocialMessage() social_message.set_payload(message.payload) social_message.persists() + print(f"\n{GREEN}[+] {social_message} {RESET}") elif message.method == 'WebcastChatMessage': chat_message = ChatMessage() chat_message.set_payload(message.payload) chat_message.persists() + print(f"\n{BLUE}[+] {chat_message} {RESET}") elif message.method == 'WebcastLikeMessage': like_message = LikeMessage() like_message.set_payload(message.payload) like_message.persists() + print(f"\n{CYAN}[+] {like_message} {RESET}") elif message.method == 'WebcastGiftMessage': gift_message = GiftMessage() gift_message.set_payload(message.payload) gift_message.persists() + print(f"\n{MAGENTA}[+] {gift_message} {RESET}") elif message.method == 'WebcastRoomUserSeqMessage': room_user_seq_message = RoomUserSeqMessage() room_user_seq_message.set_payload(message.payload) # room_user_seq_message.persists() + print(f"\n{YELLOW}[+] {room_user_seq_message} {RESET}") except Exception as e: