Exemplo n.º 1
0
        public void Handle(Connection connection, Data dato)
        {
            if (connection.Name == Connection.UNKNOWN)
            {
                DeveicePayloadFrameDecoded tmp = new DeveicePayloadFrameDecoded();
                tmp.Parse(dato.Payload.Message);
                connection.Name = tmp.DeviceId;
            }

            //si no tengo la conexion mapeada, la guardo
            if (!SingletonDeviceConnection.GetInstance().IsConnected(connection.Name))
            {
                SingletonDeviceConnection.GetInstance().AddDevice(connection);
            }

            Console.WriteLine("[{0}] connection owner: {1} ;  The data: {2} ", DateTime.Now, connection.Name, dato.ToString());
            switch (dato.OpCode)
            {
            case OpCodeConstants.REQ_SEND_STATUS_REPORT:     //viene el status de un dispositivo
                CommandREQStatusReport(connection, dato);
                break;

            case OpCodeConstants.RES_SEND_FAILURE_REPORT:     //viene una Alarma de falla de un dispositivo
                CommandREQFailureReport(connection, dato);
                break;

            default:
                break;
            }
        }
Exemplo n.º 2
0
 public void Logout(Connection clientConnection)
 {
     log.InfoFormat("Desconectando el Dispositivo {0}", clientConnection.Name);
     Console.WriteLine("Desconectando el Dispositivo {0}", clientConnection.Name);
     SingletonDeviceConnection.GetInstance().RemoveDevice(clientConnection.Name);
 }