From f366915c8470f0cc9c646a864fc121e2d056da49 Mon Sep 17 00:00:00 2001 From: braginini Date: Mon, 19 Apr 2021 14:21:56 +0200 Subject: [PATCH] chore: add a single message to signal server --- signal/signal.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/signal/signal.go b/signal/signal.go index 0569adf58..2d2fbbeeb 100644 --- a/signal/signal.go +++ b/signal/signal.go @@ -30,15 +30,20 @@ func NewServer() *SignalExchangeServer { } func (s *SignalExchangeServer) Connect(ctx context.Context, msg *proto.Message) (*proto.Message, error) { + + if _, found := s.registry.Peers[msg.Key]; found { + return nil, fmt.Errorf("unknown peer %s", msg.Key) + } + if dstPeer, found := s.registry.Peers[msg.RemoteKey]; found { //forward the message to the target peer err := dstPeer.Stream.Send(msg) if err != nil { - log.Errorf("error while forwarding message from peer [%s] to peer [%s]", p.Id, msg.RemoteKey) + log.Errorf("error while forwarding message from peer [%s] to peer [%s]", msg.Key, msg.RemoteKey) //todo respond to the sender? } } else { - log.Warnf("message from peer [%s] can't be forwarded to peer [%s] because destination peer is not connected", p.Id, msg.RemoteKey) + log.Warnf("message from peer [%s] can't be forwarded to peer [%s] because destination peer is not connected", msg.Key, msg.RemoteKey) //todo respond to the sender? } return &proto.Message{}, nil