randydev commited on
Commit
b66910a
Β·
verified Β·
1 Parent(s): fff17d0

fix data safe no missing all

Browse files
Files changed (1) hide show
  1. akn/clientmulti_bot.py +21 -2
akn/clientmulti_bot.py CHANGED
@@ -499,14 +499,33 @@ async def _check_session_health(client: Client, user_id: int, interval: int = 30
499
  await asyncio.sleep(60)
500
 
501
  async def _handle_dead_session(user_id: int, error: Exception) -> None:
502
- LOGS.warning(f"Cleaning up dead session: {user_id}")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
503
  await _send_message_warning(
504
  user_id,
505
  f"🚨 Session terminated\n"
506
  f"User: {user_id}\n"
507
  f"Reason: Error: {type(error).__name__}"
508
  )
509
- await db.remove_strings_userv(user_id)
510
  LOGS.warning(
511
  f"🚨 Session terminated\n"
512
  f"User: {user_id}\n"
 
499
  await asyncio.sleep(60)
500
 
501
  async def _handle_dead_session(user_id: int, error: Exception) -> None:
502
+ request = await db.session.find_one({"user_id": user_id})
503
+ if not request:
504
+ return
505
+
506
+ for user in request["client_user"]:
507
+ if user.get("user_id") == user_id:
508
+ await db.session.update_one(
509
+ {
510
+ "_id": request["_id"],
511
+ "user_client.user_id": user_id
512
+ },
513
+ {
514
+ "$set": {
515
+ "user_client.$.is_active": False
516
+ },
517
+ "$unset": {
518
+ "user_client.$.session_string": ""
519
+ }
520
+ }
521
+ )
522
+ break
523
  await _send_message_warning(
524
  user_id,
525
  f"🚨 Session terminated\n"
526
  f"User: {user_id}\n"
527
  f"Reason: Error: {type(error).__name__}"
528
  )
 
529
  LOGS.warning(
530
  f"🚨 Session terminated\n"
531
  f"User: {user_id}\n"