def _chat_users(self, chat: str) -> None: """ Get list of users in chat on account """ user_list = self.client.list_room_users(chat) for user in user_list: user_id, user_name, user_status = user self.account.receive_msg( Message.chat_user(self.account, chat, user_id, user_name, user_status))
def _membership_event(self, *params): """ Handle membership event """ # parse params event_type, tstamp, sender_id, sender_name, room_id, room_name,\ invited_user = params # check membership type if event_type == "invite": user_msg = Message.chat_user(self.account, room_id, invited_user, invited_user, event_type) msg = (f"*** {sender_name} invited {invited_user} " f"to {room_name}. ***") if event_type == "join": user_msg = Message.chat_user(self.account, room_id, sender_id, invited_user, event_type) msg = f"*** {invited_user} joined {room_name}. ***" if event_type == "leave": user_msg = Message.chat_user(self.account, room_id, sender_id, sender_name, event_type) msg = f"*** {sender_name} left {room_name}. ***" # generic event, return as message # TODO: change parsing in nuqql and use char + / + sender here? formatted_msg = Message.CHAT_MSG.format(self.account.aid, room_id, tstamp, sender_id, msg) # add event to event list if self.settings.membership_user_msg: self.account.receive_msg(user_msg) if self.settings.membership_message_msg: self.account.receive_msg(formatted_msg)