diff options
author | Kegan Dougal <kegan@matrix.org> | 2015-02-03 13:29:27 +0000 |
---|---|---|
committer | Kegan Dougal <kegan@matrix.org> | 2015-02-03 13:29:27 +0000 |
commit | f2c039bfb958ed349bce42098e296995786374cc (patch) | |
tree | b8285361668534493f69ea6253fe88c2ff99f600 /synapse/handlers/appservice.py | |
parent | Add namespace constants. Add restrict_to option to limit namespace checks. (diff) | |
download | synapse-f2c039bfb958ed349bce42098e296995786374cc.tar.xz |
Implement restricted namespace checks. Begin fleshing out the main hook for notifying application services.
Diffstat (limited to 'synapse/handlers/appservice.py')
-rw-r--r-- | synapse/handlers/appservice.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/synapse/handlers/appservice.py b/synapse/handlers/appservice.py index bf68b33398..dac63e2245 100644 --- a/synapse/handlers/appservice.py +++ b/synapse/handlers/appservice.py @@ -17,6 +17,7 @@ from twisted.internet import defer from ._base import BaseHandler from synapse.api.errors import Codes, StoreError, SynapseError +from synapse.storage.appservice import ApplicationService import logging @@ -88,8 +89,26 @@ class ApplicationServicesHandler(BaseHandler): # Do we know this user exists? If not, poke the user query API for # all services which match that user regex. + unknown_user = False # TODO check + if unknown_user: + user_query_services = self.get_services_for_event( + event=event, + restrict_to=ApplicationService.NS_USERS + ) + for user_service in user_query_services: + pass # TODO poke User Query API # Do we know this room alias exists? If not, poke the room alias query # API for all services which match that room alias regex. + unknown_room_alias = False # TODO check + if unknown_room_alias: + alias_query_services = self.get_services_for_event( + event=event, + restrict_to=ApplicationService.NS_ALIASES + ) + for alias_service in alias_query_services: + pass # TODO poke Room Alias Query API # Fork off pushes to these services - XXX First cut, best effort + for service in services: + pass # TODO push event to service |