Beispiel #1
0
        public override void RunInterface(string pluginName)
        {
            pName = pluginName;
            Log   = new General.OSAELog(pName);
            Log.Info("Running Interface!");

            OSAEObjectType objt = OSAEObjectTypeManager.ObjectTypeLoad("RADIO THERMOSTAT DEVICE");

            OSAEObjectTypeManager.ObjectTypeUpdate(objt.Name, objt.Name, "Radio Thermostat Device", pName, "RADIO THERMOSTAT DEVICE", objt.Owner, objt.SysType, objt.Container, objt.HideRedundant);
            OSAEObjectCollection devices = OSAEObjectManager.GetObjectsByType("RADIO THERMOSTAT DEVICE");

            foreach (OSAEObject obj in devices)
            {
                ThermostatLib.SystemInfo si = ThermostatLib.SystemInfo.Load(obj.Address);
                Log.Info("---------------------------------");
                Log.Info("Device Name: " + ThermostatLib.SystemInfo.LoadSystemName(obj.Address));
                Log.Info("API Version: " + si.ApiVersion.ToString());
                Log.Info("Firmware Version: " + si.FirmwareVersion);
                Log.Info("UUID: " + si.UUID);
                Log.Info("WLAN Version: " + si.WlanFirmwareVersion);
                Log.Info("Model: " + ThermostatLib.SystemInfo.LoadModelName(obj.Address));
                Log.Info("Operating Mode: " + ThermostatLib.SystemInfo.LoadOperatingMode(obj.Address));

                ThermostatLib.Services services = ThermostatLib.Services.Load(obj.Address);
                string service = "";
                foreach (ThermostatLib.HttpdHandler handler in services.Handlers)
                {
                    service  = "";
                    service += handler.Url + " (";
                    if (handler.AllowsGet && handler.AllowsPost)
                    {
                        service += "GET, POST";
                    }
                    else
                    {
                        if (handler.AllowsGet)
                        {
                            service += "GET";
                        }
                        if (handler.AllowsPost)
                        {
                            service += "POST";
                        }
                    }
                    service += ")";
                    Log.Info("Service: " + service);
                }
            }
            Clock          = new System.Timers.Timer();
            Clock.Interval = Int32.Parse(OSAEObjectPropertyManager.GetObjectPropertyValue(pName, "Poll Interval").Value) * 60000;
            Clock.Start();
            Clock.Elapsed += new ElapsedEventHandler(Timer_Tick);
        }
Beispiel #2
0
        public void RunInterface(string pluginName)
        {
            osae.AddToLog("Running Interface!", true);
            pName = pluginName;
            osae.ObjectTypeUpdate("RADIO THERMOSTAT DEVICE", "RADIO THERMOSTAT DEVICE", "Radio Thermostat Device", pName, "RADIO THERMOSTAT DEVICE", 0, 0, 0, 1);

            List <OSAEObject> devices = osae.GetObjectsByType("Radio Thermostat Device");

            foreach (OSAEObject obj in devices)
            {
                ThermostatLib.SystemInfo si = ThermostatLib.SystemInfo.Load(obj.Address);
                osae.AddToLog("---------------------------------", true);
                osae.AddToLog("Device Name: " + ThermostatLib.SystemInfo.LoadSystemName(obj.Address), true);
                osae.AddToLog("API Version: " + si.ApiVersion.ToString(), true);
                osae.AddToLog("Firmware Version: " + si.FirmwareVersion, true);
                osae.AddToLog("UUID: " + si.UUID, true);
                osae.AddToLog("WLAN Version: " + si.WlanFirmwareVersion, true);
                osae.AddToLog("Model: " + ThermostatLib.SystemInfo.LoadModelName(obj.Address), true);
                osae.AddToLog("Operating Mode: " + ThermostatLib.SystemInfo.LoadOperatingMode(obj.Address), true);

                ThermostatLib.Services services = ThermostatLib.Services.Load(obj.Address);
                string service = "";
                foreach (ThermostatLib.HttpdHandler handler in services.Handlers)
                {
                    service  = "";
                    service += handler.Url + " (";
                    if (handler.AllowsGet && handler.AllowsPost)
                    {
                        service += "GET, POST";
                    }
                    else
                    {
                        if (handler.AllowsGet)
                        {
                            service += "GET";
                        }
                        if (handler.AllowsPost)
                        {
                            service += "POST";
                        }
                    }
                    service += ")";
                    osae.AddToLog("Service: " + service, true);
                }
            }

            Clock          = new System.Timers.Timer();
            Clock.Interval = Int32.Parse(osae.GetObjectPropertyValue(pName, "Poll Interval").Value) * 60000;
            Clock.Start();
            Clock.Elapsed += new ElapsedEventHandler(Timer_Tick);
        }