avoid verifying someone if they left the room
This commit is contained in:
+14
-9
@@ -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,
|
||||||
|
|||||||
Reference in New Issue
Block a user