public async Task <string> Trickle(TrickleCandidateReceivedDto candidateReceived)
        {
            var request = new TrickleRequest();

            if (candidateReceived.Completed)
            {
                request.Candidate = new TrickleCompleted {
                    Completed = true
                }
            }
            ;
            else
            {
                request.Candidate = new TrickleCandidate
                {
                    Candidate     = candidateReceived.Candidate,
                    SdpMLineIndex = candidateReceived.SdpMLineIndex,
                    SdpMid        = candidateReceived.SdpMid
                }
            };
            request.HandleId = candidateReceived.HandleId ?? (await MakeUser()).HandleId;
            _logger.Trace($"Janus Trickle request: {JsonConvert.SerializeObject(request)}");

            var res = await SendJanusRequest <AckResponse>(request, true);

            return(res.Janus);
        }
        public async Task <HubResponse> Trickle(TrickleCandidateReceivedDto iceCandidate)
        {
            _logger.Trace($"Trickle request {iceCandidate}");
            try
            {
                var res = await _janus.Trickle(iceCandidate);

                return(new HubSuccessResponse(res));
            }
            catch (Exception ex)
            {
                return(new HubErrorResponse(1, ex.Message));
            }
        }