From d802aa30ae69d51a2151b9a688531f2a4e44b0ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Damir=20Jeli=C4=87?= Date: Wed, 21 Nov 2018 19:17:57 +0100 Subject: [PATCH] server: Send a hsignal when a new room key is received. --- matrix/server.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/matrix/server.py b/matrix/server.py index bff5536..d4e2d22 100644 --- a/matrix/server.py +++ b/matrix/server.py @@ -52,6 +52,7 @@ from nio import ( LoginError, JoinedMembersResponse, JoinedMembersError, + RoomKeyEvent ) from . import globals as G @@ -964,6 +965,20 @@ class MatrixServer(object): self._handle_room_info(response) + for event in response.to_device_events: + if not isinstance(event, RoomKeyEvent): + continue + + message = { + "sender": event.sender, + "sender_key": event.sender_key, + "room_id": event.room_id, + "session_id": event.session_id, + "algorithm": event.algorithm, + "server": self.name, + } + W.hook_hsignal_send("matrix_room_key_received", message) + # Full sync response handle everything. if isinstance(response, SyncResponse): if self.client.should_upload_keys: