summary refs log tree commit diff
path: root/synapse/push/__init__.py
diff options
context:
space:
mode:
authorDavid Baker <dave@matrix.org>2015-12-10 18:40:28 +0000
committerDavid Baker <dave@matrix.org>2015-12-10 18:40:28 +0000
commit5e909c73d76cd56e3eac91635a99405182dcac3c (patch)
tree08b13f84598df490b1f92181a446ffad7cddb876 /synapse/push/__init__.py
parentSave event actions to the db (diff)
downloadsynapse-5e909c73d76cd56e3eac91635a99405182dcac3c.tar.xz
Store nothing instead of ['dont_notify'] for events with no notification required: much as it would be nice to be able to tell between the event not having been processed and there being no notification for it, this isn't worth filling up the table with ['dont_notify'] I think. Consequently treat the empty actions array as dont_notify and filter dont_notify out of the result.
Diffstat (limited to 'synapse/push/__init__.py')
-rw-r--r--synapse/push/__init__.py18
1 files changed, 3 insertions, 15 deletions
diff --git a/synapse/push/__init__.py b/synapse/push/__init__.py
index e7c964bcd2..d5928c1d29 100644
--- a/synapse/push/__init__.py
+++ b/synapse/push/__init__.py
@@ -157,21 +157,7 @@ class Pusher(object):
         actions = yield rule_evaluator.actions_for_event(single_event)
         tweaks = rule_evaluator.tweaks_for_actions(actions)
 
-        if len(actions) == 0:
-            logger.warn("Empty actions! Using default action.")
-            actions = Pusher.DEFAULT_ACTIONS
-
-        if 'notify' not in actions and 'dont_notify' not in actions:
-            logger.warn("Neither notify nor dont_notify in actions: adding default")
-            actions.extend(Pusher.DEFAULT_ACTIONS)
-
-        if 'dont_notify' in actions:
-            logger.debug(
-                "%s for %s: dont_notify",
-                single_event['event_id'], self.user_name
-            )
-            processed = True
-        else:
+        if 'notify' in actions:
             rejected = yield self.dispatch_push(single_event, tweaks)
             self.has_unread = True
             if isinstance(rejected, list) or isinstance(rejected, tuple):
@@ -192,6 +178,8 @@ class Pusher(object):
                         yield self.hs.get_pusherpool().remove_pusher(
                             self.app_id, pk, self.user_name
                         )
+        else:
+            processed = True
 
         if not self.alive:
             return