public void Run(IBackgroundTaskInstance taskInstance) { var defferal = taskInstance.GetDeferral(); var taskHelper = new TaskHelper(); var signalingTask = taskHelper.GetTask(nameof(SignalingTask)); var connOwner = new ConnectionOwner { OwnerId = signalingTask.TaskId.ToString() }; Hub.Instance.SignalingSocketService.ConnectToSignalingServer(connOwner); Hub.Instance.SignalingClient.Register(new Registration { Name = RegistrationSettings.Name, UserId = RegistrationSettings.UserId, Domain = RegistrationSettings.Domain, PushNotificationChannelURI = RegistrationSettings.PushNotificationChannelURI }); defferal.Complete(); }
public IAsyncOperation <ConnectionStatus> ConnectToSignalingServerAsync(ConnectionOwner connectionOwner) { return(InvokeHubChannelAsync <ISignalingSocketChannel, ConnectionStatus>(new ConnectionOwner { OwnerId = _taskHelper.GetTask(nameof(SignalingTask)).TaskId.ToString() })); }
public ConnectionStatus ConnectToSignalingServer(ConnectionOwner connectionOwner) { try { SignaledPeerData.Reset(); SignalingStatus.Reset(); SignaledRelayMessages.Reset(); var socket = new StreamSocket(); socket.EnableTransferOwnership(Guid.Parse(connectionOwner.OwnerId), SocketActivityConnectedStandbyAction.Wake); socket.ConnectAsync(new HostName(SignalingSettings.SignalingServerHost), SignalingSettings.SignalingServerPort, SocketProtectionLevel.PlainSocket) .AsTask() .Wait(); socket.TransferOwnership(SignalingSocketOperation.SignalingSocketId); return(new ConnectionStatus { IsConnected = true }); } catch (Exception exception) { Debug.Write("Failed to connect to signalling server: ex: " + exception.Message); return(new ConnectionStatus { IsConnected = false }); } }
public ConnectionStatus ConnectToSignalingServer(ConnectionOwner connectionOwner) { SignaledPeerData.Reset(); SignalingStatus.Reset(); SignaledRelayMessages.Reset(); _streamSocket = new StreamSocket(); _streamSocket.ConnectAsync(new HostName(SignalingSettings.SignalingServerHost), SignalingSettings.SignalingServerPort, SocketProtectionLevel.PlainSocket) .AsTask() .Wait(); _isConnected = true; _signalingClient = _unityContainer.Resolve <SignalingClient>(); StartReading(); return(new ConnectionStatus { IsConnected = _isConnected }); }
public IAsyncOperation <ConnectionStatus> ConnectToSignalingServerAsync(ConnectionOwner connectionOwner) { return(Task.Run(async() => { try { SignaledPeerData.Reset(); SignalingStatus.Reset(); await SignaledInstantMessages.ResetAsync(); var socket = new StreamSocket(); socket.EnableTransferOwnership(Guid.Parse(connectionOwner.OwnerId), SocketActivityConnectedStandbyAction.Wake); var connectCancellationTokenSource = new CancellationTokenSource(2000); var connectAsync = socket.ConnectAsync(new HostName(SignalingSettings.SignalingServerHost), SignalingSettings.SignalingServerPort, SocketProtectionLevel.PlainSocket); var connectTask = connectAsync.AsTask(connectCancellationTokenSource.Token); await connectTask; socket.TransferOwnership(SignalingSocketOperation.SignalingSocketId); return new ConnectionStatus { IsConnected = true }; } catch (Exception exception) { Debug.WriteLine("Failed to connect to signalling server: ex: " + exception.Message); return new ConnectionStatus { IsConnected = false }; } }).AsAsyncOperation()); }
public NetworkConnection(string busName, string objectPath, ConnectionOwner owner) : base(busName, objectPath) { this.Owner = owner; //Workaround for bad signals from NM //BusObject.Removed += OnDeviceRemoved; }
public WiredConnection(string busName, string objectPath, ConnectionOwner owner) : base(busName, objectPath, owner) { }
public WirelessConnection (string busName, string objectPath, ConnectionOwner owner) : base (busName, objectPath, owner) { }