Exemple #1
0
        static void Main(string[] args)
        {
            temp1 = new Guid(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Demo.Devices.Temp1"]);
            light1 = new Guid(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Demo.Devices.Light1"]);
            light2 = new Guid(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Demo.Devices.Light2"]);
            client = new Client(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Demo.ServiceUri"]);

            Console.WriteLine("[Device] " + temp1.ToString() + " Registered = " + client.DeviceRegister(temp1).ToString());
            Console.WriteLine("[Device] " + light1.ToString() + " Registered = " + client.DeviceRegister(light1).ToString());
            Console.WriteLine("[Device] " + light2.ToString() + " Registered = " + client.DeviceRegister(light2).ToString());
            port = new SerialPort(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Demo.SerialPort"],
                Convert.ToInt32(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Demo.SerialBaud"]));
            port.Open();
            Console.WriteLine("[Serial] Open");
            Thread thread = new Thread(new ThreadStart(Read));
            thread.Start();
            Console.ReadLine();
            running = false;
            port.Close();
            thread.Join();
            client.Close();
        }
Exemple #2
0
 public void TryConnect()
 {
     try
     {
         //make sure client is connected
         if (client == null || !client.IsOpen)
         {
             client = new Client(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Computer.ServiceUri"]);
             client.DeviceUpdated += new DeviceUpdateHandler(client_DeviceUpdated);
             client.DeviceDeregistered += new DeviceDeregisteredHandler(client_DeviceDeregistered);
             client.DataReceived += new DataReceptionHandler(client_DataReceived);
         }
     }
     catch
     {
         if (client != null) client.Close();
         client = null;
         return;
     }
     try
     {
         //make sure device is registered
         Guid device_guid = new Guid(System.Configuration.ConfigurationManager.AppSettings["Reactivity.Nodes.Computer.Device"]);
         if (!client.DeviceIsRegistered(device_guid))
         {
             if (device_timer.Enabled)
                 device_timer.Stop();
             device = null;
             if (!client.DeviceRegister(device_guid))
                 return;
             device = client.DeviceGet(device_guid);
             if (device == null) return;
             Util.DeviceConfigurationAdapter adapter = Util.DeviceConfigurationAdapter.CreateAdapter(device.Configuration);
             if (adapter.Settings.ContainsKey("Interval"))
                 device_timer.Interval = Convert.ToDouble(adapter.Settings["Interval"]);
             device_timer.Start();
         }
     }
     catch { TryReset(); }
 }