Support membership events and more camelcase/underscores
2 files changed, 8 insertions, 4 deletions
diff --git a/synapse/push/__init__.py b/synapse/push/__init__.py
index 0c51d2dd8f..b6d01a82a0 100644
--- a/synapse/push/__init__.py
+++ b/synapse/push/__init__.py
@@ -65,6 +65,10 @@ class Pusher(object):
# let's assume you probably know about messages you sent yourself
defer.returnValue(['dont_notify'])
+ if ev['type'] == 'm.room.member':
+ if ev['state_key'] != self.user_name:
+ defer.returnValue(['dont_notify'])
+
rules = yield self.store.get_push_rules_for_user_name(self.user_name)
for r in rules:
diff --git a/synapse/push/httppusher.py b/synapse/push/httppusher.py
index 25db1dded5..22532fcc6a 100644
--- a/synapse/push/httppusher.py
+++ b/synapse/push/httppusher.py
@@ -65,8 +65,6 @@ class HttpPusher(Pusher):
d = {
'notification': {
- 'transition': 'new',
- # everything is new for now: we don't have read receipts
'id': event['event_id'],
'type': event['type'],
'from': event['user_id'],
@@ -89,11 +87,13 @@ class HttpPusher(Pusher):
]
}
}
+ if event['type'] == 'm.room.member':
+ d['notification']['membership'] = event['content']['membership']
if len(ctx['aliases']):
- d['notification']['roomAlias'] = ctx['aliases'][0]
+ d['notification']['room_alias'] = ctx['aliases'][0]
if 'name' in ctx:
- d['notification']['roomName'] = ctx['name']
+ d['notification']['room_name'] = ctx['name']
defer.returnValue(d)
|