public SignalingClient(ISignalingSocketService signalingSocketService,
     IForegroundChannel foregroundChannel,
     IVoipChannel voipChannel)
 {
     _signalingSocketService = signalingSocketService;
     _voipChannel = voipChannel;
     _foregroundChannel = foregroundChannel;
     ServerChannelInvoker = new ChannelInvoker(this);
 }
 public void WaitForRegistration()
 {
     Task.Run(async () =>
     {
         var reader = new StreamReader(TcpClient.GetStream());
         var clientChannelProxy = new ChannelInvoker(this);
         var message = await reader.ReadLineAsync();
         if (!clientChannelProxy.ProcessRequest(message).Invoked)
         {
             OnInvalidRequest(InvalidMessage.For(message));
         }
     });
 }
 public RegisteredClient()
 {
     ClientReadProxy = new ChannelInvoker(this);
 }
 /// <summary>
 /// Invokes the method from the message on the handler object and sends back the return value
 /// </summary>
 public static async void HandleRequest(AppServiceRequest request, object handler, string message)
 {
     var invoker = new ChannelInvoker(handler);
     var result = invoker.ProcessRequest(message);
     await SendResponse(request, result);
 }
 public ChatterBoxConsoleClient()
 {
     ServerReadProxy = new ChannelInvoker(this);
 }