diff --git a/synapse/push/baserules.py b/synapse/push/baserules.py
index 162d265f66..c8c19f2a18 100644
--- a/synapse/push/baserules.py
+++ b/synapse/push/baserules.py
@@ -32,12 +32,14 @@ def make_base_rules(user, kind):
if kind == 'override':
rules = make_base_override_rules()
+ elif kind == 'underride':
+ rules = make_base_underride_rules()
elif kind == 'content':
rules = make_base_content_rules(user)
for r in rules:
r['priority_class'] = PRIORITY_CLASS_MAP[kind]
- r['default'] = True
+ r['default'] = True # Deprecated, left for backwards compat
return rules
@@ -45,6 +47,7 @@ def make_base_rules(user, kind):
def make_base_content_rules(user):
return [
{
+ 'rule_id': 'global/content/.m.rule.contains_user_name',
'conditions': [
{
'kind': 'event_match',
@@ -66,6 +69,7 @@ def make_base_content_rules(user):
def make_base_override_rules():
return [
{
+ 'rule_id': 'global/override/.m.rule.contains_display_name',
'conditions': [
{
'kind': 'contains_display_name'
@@ -80,6 +84,7 @@ def make_base_override_rules():
]
},
{
+ 'rule_id': 'global/override/.m.rule.room_one_to_one',
'conditions': [
{
'kind': 'room_member_count',
@@ -95,3 +100,16 @@ def make_base_override_rules():
]
}
]
+
+
+def make_base_underride_rules():
+ return [
+ {
+ 'rule_id': 'global/underride/.m.rule.fallback',
+ 'conditions': [
+ ],
+ 'actions': [
+ 'notify',
+ ]
+ },
+ ]
|