Mercurial > libervia-web
diff libervia/server/server.py @ 1516:a3ca1bab6eb1
server, restricted bridge: add new methods and signals to prepare calls implementation:
rel 422
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 01 Jun 2023 20:44:57 +0200 |
parents | 16228994ca3b |
children |
line wrap: on
line diff
--- a/libervia/server/server.py Mon May 22 11:57:49 2023 +0200 +++ b/libervia/server/server.py Thu Jun 01 20:44:57 2023 +0200 @@ -573,6 +573,18 @@ self.bridge.register_signal( "message_new", partial(self.on_signal, "message_new") ) + self.bridge.register_signal( + "call_accepted", partial(self.on_signal, "call_accepted"), "plugin" + ) + self.bridge.register_signal( + "call_ended", partial(self.on_signal, "call_ended"), "plugin" + ) + self.bridge.register_signal( + "ice_candidates_new", partial(self.on_signal, "ice_candidates_new"), "plugin" + ) + self.bridge.register_signal( + "action_new", self.action_new_handler, + ) # libervia applications handling self.bridge.register_signal( @@ -694,6 +706,22 @@ getattr(self.bridge, method_name)(*args, **kwargs) return d + def action_new_handler( + self, + action_data_s: str, + action_id: str, + security_limit: int, + profile: str + ) -> None: + if security_limit > C.SECURITY_LIMIT: + log.debug( + f"ignoring action {action_id} due to security limit" + ) + else: + self.on_signal( + "action_new", action_data_s, action_id, security_limit, profile + ) + def on_signal(self, signal_name, *args): profile = args[-1] if not profile: