Beispiel #1
0
        private void Start()
        {
            pairSocket = new PairSocket();
            pairSocket.OnClientDisconnect += OnDisconnected;
            pairSocket.OnMessage          += OnMessage;

            while (true)
            {
                var success = pairSocket.TryConnect("tcp://127.0.0.1:5001", 500);
                if (success)
                {
                    Console.Title = "Client: " + pairSocket.ConnectionId;

                    // Tokens podem ser adicioandos assim também
                    var msg = new Message(1, "Hello Server :)");
                    pairSocket.Send(msg);

                    pairSocket.Subscribe("connecteds", PubSubQueueLostType.LastMessage);
                    pairSocket.Publish("connecteds", new Message(0, "Chegando ae na area " + pairSocket.ConnectionId));
                    pairSocket.SetLastWill("offline", new Message(0, "Meti o pé " + pairSocket.ConnectionId));
                    // Sleep apenas para que o Console não fique com mensagens misturadas e atrapalhe o entendimento do exemplo
                    // Em um cenário real, não precisaria de qualquer tipo de delay
                    Thread.Sleep(500);

                    //pairSocket.Close();

                    //var _success = false;
                    //while(!_success)
                    //{
                    //    Thread.Sleep(10000);
                    //    success = pairSocket.TryReconnect();
                    //}

                    DoCommunication();
                }
                else
                {
                    Console.WriteLine("> Conexão não foi estabelecida, pressione qualquer tecla para tentar novamente");
                    Console.ReadKey();
                }
            }
        }