Exemplo n.º 1
0
        private void ConnectToCloud()
        {
            Dispatcher.Invoke(() => AddLog($"Connecting to cable cloud at {Config.CloudAddress}:{Config.CloudPort}"));

            try
            {
                ConnectedSocket =
                    new MPLSSocket(Config.CloudAddress.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
                ConnectedSocket.Connect(new IPEndPoint(Config.CloudAddress, Config.CloudPort));
                ConnectedSocket.Send(Encoding.ASCII.GetBytes($"{ManagementActions.HELLO} {Config.HostName}"));

                Dispatcher.Invoke(() => AddLog($"Estabilished connection with cable cloud"));
                Task.Run(() => { Listen(); });
            }
            catch (Exception)
            {
                Dispatcher.Invoke(() => AddLog("Failed to connect to cable cloud", LogType.BrokenConnection));
            }
        }
Exemplo n.º 2
0
        private void ConnectToCloud()
        {
            AddLog($"Connecting to cable cloud at {Config.CloudAddress}:{Config.CloudPort}", LogType.Information);

            try
            {
                MPLSSocket socket = new MPLSSocket(Config.ManagementSystemAddress.AddressFamily, SocketType.Stream,
                                                   ProtocolType.Tcp);

                socket.Connect(new IPEndPoint(Config.CloudAddress, Config.CloudPort));

                socket.Send(Encoding.ASCII.GetBytes($"{ManagementActions.HELLO} {Config.NodeName}"));
                AddLog("Estabilished connection with cable cloud", LogType.Information);

                ConnectedSocket = socket;

                Task.Run(async() =>
                {
                    while (true)
                    {
                        var connectionGood = ConnectedSocket != null && ConnectedSocket.Connected;
                        if (connectionGood)
                        {
                            ConnectedSocket.Send(Encoding.ASCII.GetBytes("KEEPALIVE"));

                            await Task.Delay(5000);
                        }
                        else
                        {
                            AddLog("Connection to cable cloud broken!", LogType.Error);

                            break;
                        }
                    }
                });
            }
            catch (Exception)
            {
                AddLog("Failed to connect to cable cloud", LogType.Error);
            }
        }