comparison 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
comparison
equal deleted inserted replaced
1515:73c848c2f41e 1516:a3ca1bab6eb1
571 "ps_event_raw", partial(LiberviaPage.on_node_event, self), "plugin" 571 "ps_event_raw", partial(LiberviaPage.on_node_event, self), "plugin"
572 ) 572 )
573 self.bridge.register_signal( 573 self.bridge.register_signal(
574 "message_new", partial(self.on_signal, "message_new") 574 "message_new", partial(self.on_signal, "message_new")
575 ) 575 )
576 self.bridge.register_signal(
577 "call_accepted", partial(self.on_signal, "call_accepted"), "plugin"
578 )
579 self.bridge.register_signal(
580 "call_ended", partial(self.on_signal, "call_ended"), "plugin"
581 )
582 self.bridge.register_signal(
583 "ice_candidates_new", partial(self.on_signal, "ice_candidates_new"), "plugin"
584 )
585 self.bridge.register_signal(
586 "action_new", self.action_new_handler,
587 )
576 588
577 # libervia applications handling 589 # libervia applications handling
578 self.bridge.register_signal( 590 self.bridge.register_signal(
579 "application_started", self.application_started_handler, "plugin" 591 "application_started", self.application_started_handler, "plugin"
580 ) 592 )
691 703
692 kwargs["callback"] = _callback 704 kwargs["callback"] = _callback
693 kwargs["errback"] = _errback 705 kwargs["errback"] = _errback
694 getattr(self.bridge, method_name)(*args, **kwargs) 706 getattr(self.bridge, method_name)(*args, **kwargs)
695 return d 707 return d
708
709 def action_new_handler(
710 self,
711 action_data_s: str,
712 action_id: str,
713 security_limit: int,
714 profile: str
715 ) -> None:
716 if security_limit > C.SECURITY_LIMIT:
717 log.debug(
718 f"ignoring action {action_id} due to security limit"
719 )
720 else:
721 self.on_signal(
722 "action_new", action_data_s, action_id, security_limit, profile
723 )
696 724
697 def on_signal(self, signal_name, *args): 725 def on_signal(self, signal_name, *args):
698 profile = args[-1] 726 profile = args[-1]
699 if not profile: 727 if not profile:
700 log.error(f"got signal without profile: {signal_name}, {args}") 728 log.error(f"got signal without profile: {signal_name}, {args}")