private async void IdentifySelfToVoiceConnection() { var identifyEvent = new SocketFrame { Type = EventNames.IDENTIFY, Operation = OperationCode.Identify.ToInt(), Payload = GetIdentityAsync() }; await _webMessageSocket.SendJsonObjectAsync(identifyEvent); }
// TODO: good chance the socket will be disposed when attempting to resume so yah public async Task ResumeAsync() { var token = await _authenticator.GetToken(); var resume = new GatewayResume { Token = token, SessionId = lastReady?.SessionId, LastSequenceNumberReceived = lastGatewayEvent?.SequenceNumber.Value ?? 0 }; await _webMessageSocket.SendJsonObjectAsync(token); }
private async void WebrtcManagerOnIpAndPortObtained(object sender, Tuple <string, ushort> e) { var info = new UdpProtocolInfo() { Address = e.Item1, Port = e.Item2, Codecs = new List <Codec>() { new Codec() { Name = "opus", payloadType = 120, Priority = 1000, Type = "audio", rtxPayloadType = 120, }, new Codec() { Name = "VP8", payloadType = 101, Priority = 1000, Type = "video", rtxPayloadType = 102, }, }.ToArray(), Mode = "xsalsa20_poly1305", //"_suffix" }; var payload = new SelectProtocol() { Protocol = "udp", Data = info, }; SocketFrame package = new SocketFrame() { Operation = (int)OperationCode.SelectProtocol, Payload = payload, Type = EventNames.SELECT_PROTOCOL, }; await _webMessageSocket.SendJsonObjectAsync(package); }