Exemple #1
0
 public bool UpdateDeviceStateCounters(short device_id, DeviceStateCountersQueue counters)
 {
     try
     {
         return(State == States.CONNECTED && SpineClient.Spine.UpdateDeviceStateCounters(device_id, counters));
     }
     catch (Exception e)
     {
         STrace.Exception(GetType().FullName, e);
         STrace.Debug(GetType().FullName, String.Format("SPINE_CLIENT_WRAP/ERROR: No se pudo actualizar las propiedades del dispositivo {0}", device_id));
         State       = States.DISCONNECTED;
         SpineClient = null;
     }
     return(false);
 }
Exemple #2
0
 public void MainLoop()
 {
     while (Running)
     {
         try
         {
             if (State == States.DISCONNECTED)
             {
                 Thread.Sleep(disconnected_comfort_timeout);
                 STrace.Debug(GetType().FullName, "SPINE_CLIENT_WRAP: Conectando al SPINE.");
                 SpineClient = new SpineClient(ServerUri, Description);
                 State       = States.CONNECTING;
                 if (SpineClient.Connect())
                 {
                     STrace.Debug(GetType().FullName, "SPINE_CLIENT_WRAP: CONECTADO.");
                     State = States.CONNECTED;
                     SpineClient.SpineCommand      += FireSpineCommand;
                     SpineClient.SpineStateChanged += FireSpineStateChange;
                 }
                 else
                 {
                     State = States.DISCONNECTED;
                     STrace.Debug(GetType().FullName, "SPINE_CLIENT_WRAP: FALLO LA CONEXION.");
                 }
             }
             else
             {
                 Thread.Sleep(connected_comfort_timeout);
                 STrace.Debug(GetType().FullName, "SPINE_CLIENT_WRAP: Disparo HEARTBEAT.");
                 if (SpineClient != null)
                 {
                     SpineClient.Spine.GatewayHeartbeat(Description);
                 }
             }
         }
         catch (Exception e)
         {
             STrace.Exception(GetType().FullName, e);
             STrace.Debug(GetType().FullName, "SPINE_CLIENT_WRAP: ERROR INICIANDO EL CLIENTE DE SPINE.");
             State       = States.DISCONNECTED;
             SpineClient = null;
         }
     }
 }
Exemple #3
0
 public DeviceState GetDeviceState(short device_id)
 {
     try
     {
         if (State == States.DISCONNECTED)
         {
             return(null);
         }
         return(SpineClient.Spine.GetDeviceState(device_id));
     }
     catch (Exception e)
     {
         STrace.Exception(GetType().FullName, e);
         STrace.Debug(GetType().FullName, String.Format("SPINE_CLIENT_WRAP/ERROR: No se pudo leer el estado del dispositivo {0}", device_id));
         State       = States.DISCONNECTED;
         SpineClient = null;
     }
     return(null);
 }