Add rule option continue_after_match
(defaults to True
)
This commit is contained in:
parent
a15e13ae5f
commit
2e5d9424b9
3 changed files with 4 additions and 1 deletions
|
@ -106,4 +106,5 @@ class ReactBot(Plugin):
|
|||
await rule.execute(evt, match)
|
||||
except Exception:
|
||||
self.log.exception(f"Failed to execute {name} in {evt.room_id}")
|
||||
|
||||
if not rule.continue_after_match:
|
||||
return
|
||||
|
|
|
@ -64,6 +64,7 @@ class Config(BaseProxyConfig):
|
|||
type=EventType.find(rule["type"]) if "type" in rule else None,
|
||||
template=self.templates[rule["template"]],
|
||||
variables=self._parse_variables(rule),
|
||||
continue_after_match=rule.get("continue_after_match", True),
|
||||
)
|
||||
except Exception as e:
|
||||
raise ConfigError(f"Failed to load {name}") from e
|
||||
|
|
|
@ -35,6 +35,7 @@ class Rule:
|
|||
template: Template
|
||||
type: Optional[EventType]
|
||||
variables: Dict[str, Any]
|
||||
continue_after_match: bool
|
||||
|
||||
def _check_not_match(self, body: str) -> bool:
|
||||
for pattern in self.not_matches:
|
||||
|
|
Loading…
Reference in a new issue