Exemple #1
0
        private JsonObject GetControllerStatus()
        {
            var result = new JsonObject();

            result.SetNamedValue("Type", "HA4IoT.Status".ToJsonValue());
            result.SetNamedValue("Version", 1.ToJsonValue());

            var actuators = new JsonObject();

            foreach (var actuator in _controller.Actuators())
            {
                actuators.SetNamedValue(actuator.Id.Value, actuator.ExportStatusToJsonObject());
            }

            result.SetNamedValue("Actuators", actuators);

            var automations = new JsonObject();

            foreach (var automation in _controller.Automations())
            {
                automations.SetNamedValue(automation.Id.Value, automation.ExportStatusToJsonObject());
            }

            result.SetNamedValue("Automations", automations);

            var weatherStation = _controller.Device <IWeatherStation>();

            if (weatherStation != null)
            {
                result.SetNamedValue("WeatherStation", weatherStation.ExportStatusToJsonObject());
            }

            return(result);
        }