avoid verifying someone if they left the room

This commit is contained in:
William Kray
2025-04-19 09:10:09 -07:00
parent afcab3b173
commit b22d760994
+14 -9
View File
@@ -967,15 +967,20 @@ class CommunityBot(Plugin):
if user_phrase == expected_phrase: if user_phrase == expected_phrase:
try: try:
# Update power levels in target room # confirm user is still in target room
power_levels = await self.client.get_state_event( members = await self.client.get_joined_members(state["target_room"])
state["target_room"], EventType.ROOM_POWER_LEVELS if state["user"] not in members:
) await self.client.send_notice(evt.room_id, "Looks like you've left the target room. Rejoin to try again.")
power_levels.users[state["user"]] = state["required_level"] else:
await self.client.send_state_event( # Update power levels in target room
state["target_room"], EventType.ROOM_POWER_LEVELS, power_levels power_levels = await self.client.get_state_event(
) state["target_room"], EventType.ROOM_POWER_LEVELS
await self.client.send_notice(evt.room_id, "Success! My work here is done. You can leave this room now.") )
power_levels.users[state["user"]] = state["required_level"]
await self.client.send_state_event(
state["target_room"], EventType.ROOM_POWER_LEVELS, power_levels
)
await self.client.send_notice(evt.room_id, "Success! My work here is done. You can leave this room now.")
except Exception as e: except Exception as e:
await self.client.send_notice( await self.client.send_notice(
evt.room_id, evt.room_id,