Skip to content

Commit fdddb7f

Browse files
committed
add debug
1 parent 8e46a13 commit fdddb7f

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

main.py

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -91,9 +91,9 @@ async def new_chat(client: "Client", message: "types.Message"):
9191

9292
group_id = message.chat.id
9393
message_id = bot_message.id
94-
# redis data structure: name: group_id,chat_id k-v: created:timestamp, message_id:id, captcha:chars
94+
# redis data structure: name: group_id,chat_id k-v: created:timestamp, message_id:id, captcha:chars, status:deleted
9595
name = f"{group_id},{from_user_id}"
96-
mapping = {"created": str(time.time()), "message_id": str(message_id), "captcha": chars}
96+
mapping = {"created": str(time.time()), "message_id": str(message_id), "captcha": chars, "deleted": "false"}
9797
await redis_client.hset(name, mapping=mapping)
9898
# deleting service message and ignoring error
9999
with contextlib.suppress(Exception):
@@ -208,26 +208,28 @@ async def un_restrict_user(gid, uid):
208208

209209

210210
async def invalid_queue(gid_uid):
211-
await redis_client.delete(gid_uid)
211+
# for debugging purpose, just set deleted to true
212+
# await redis_client.delete(gid_uid)
213+
await redis_client.hset(gid_uid, mapping={"deleted": "true"})
212214

213215

214216
async def check_idle_verification():
215217
items = await redis_client.keys("*")
216-
logging.info("items to be checked: %s", items)
217218
value = None
218219
for gid_uid in items:
219220
try:
220221
value = await redis_client.hgetall(gid_uid)
222+
if value.get("deleted") == "true":
223+
continue
221224
group_id, from_user_id = [int(i) for i in gid_uid.split(",")]
222225
created_at = float(value.get("created", 0))
223226
message_id = int(value.get("message_id", 0))
224227
if time.time() - created_at > IDLE_SECONDS:
225-
logging.info("User %s in group %s verification timeout", from_user_id, group_id)
228+
logging.info("User %s group %s timeout, message id %s", from_user_id, group_id, message_id)
226229
# delete captcha, ban user, and remove from redis
227230
await ban_user(group_id, from_user_id)
228231
await delete_captcha(group_id, message_id)
229232
await invalid_queue(gid_uid)
230-
await redis_client.delete(gid_uid)
231233
else:
232234
logging.info("User %s in group %s still in verification queue", from_user_id, group_id)
233235
except Exception as e:
@@ -238,9 +240,9 @@ async def delete_captcha(group_id, message_id):
238240
try:
239241
msg = await app.get_messages(group_id, message_id)
240242
await msg.delete()
241-
logging.info("Deleted captcha message %s", msg)
243+
logging.info("Deleted captcha message %s in group %s", message_id, group_id)
242244
except Exception as e:
243-
logging.error("Failed to delete for message %s in chat %s: %s", message_id, group_id, e)
245+
logging.error("Failed to delete message %s in group %s: %s", message_id, group_id, e)
244246

245247

246248
def keyword_hit(keyword: str, message: str | None) -> bool:

0 commit comments

Comments
 (0)