async def _(event): sender = event.sender_id msg = str(event.text) global let global userid userid = None let = None if event.reply_to_msg_id: reply = await event.get_reply_message() userid = reply.sender_id else: try: for (ent, txt) in event.get_entities_text(): if ent.offset != 0: break if isinstance(ent, types.MessageEntityMention): pass elif isinstance(ent, types.MessageEntityMentionName): pass else: return c = txt a = c.split()[0] let = await tbot.get_input_entity(a) userid = let.user_id except Exception: return if not userid: return if sender == userid: return if event.is_group: pass else: return if sql.is_afk(userid): user = sql.check_afk_status(userid) if not user.reason: etime = user.start_time elapsed_time = time.time() - float(etime) final = time.strftime("%Hh: %Mm: %Ss", time.gmtime(elapsed_time)) fst_name = "This user" res = "**{} is AFK !**\n\n**Last seen**: {}".format( fst_name, final) await event.reply(res, parse_mode="markdown") else: etime = user.start_time elapsed_time = time.time() - float(etime) final = time.strftime("%Hh: %Mm: %Ss", time.gmtime(elapsed_time)) fst_name = "This user" res = "**{} is AFK !**\n\n**Reason**: {}\n\n**Last seen**: {}".format( fst_name, user.reason, final) await event.reply(res, parse_mode="markdown") userid = "" # after execution let = "" # after execution
def check_afk(update, context, user_id, fst_name, userc_id): if sql.is_afk(user_id): user = sql.check_afk_status(user_id) if not user.reason: etime = user.start_time elapsed_time = time.time() - float(etime) final = time.strftime("%Hh: %Mm: %Ss", time.gmtime(elapsed_time)) if int(userc_id) == int(user_id): return res = "*{} is AFK !*\n\n*Last seen*: {}".format(fst_name, final) update.effective_message.reply_text(res, parse_mode=ParseMode.MARKDOWN) else: etime = user.start_time elapsed_time = time.time() - float(etime) final = time.strftime("%Hh: %Mm: %Ss", time.gmtime(elapsed_time)) if int(userc_id) == int(user_id): return res = "*{} is AFK !*\n\n*Reason*: {}\n\n*Last seen*: {}".format( fst_name, user.reason, final) update.effective_message.reply_text(res, parse_mode=ParseMode.MARKDOWN)