""" WeatherSensorDevice represents a device that retrieves weather information from public APIs (e.g. Open-Meteo) using Zabbix HTTP agent items. """ type WeatherSensorDevice implements Host & Device { """Internal Zabbix ID of the device.""" hostid: ID! """ Per convention a uuid is used as hostname to identify devices if they do not have a unique hostname. """ host: String! """Classification of the device.""" deviceType: String """List of host groups this device belongs to.""" hostgroups: [HostGroup!] """Visible name of the device.""" name: String """Device configuration tags.""" tags: DeviceConfig """Host inventory data.""" inventory: Inventory """List of monitored items for this host.""" items: [ZabbixItem!] """State of the weather sensor device.""" state: WeatherSensorState } """ Represents the state of a weather sensor device. """ type WeatherSensorState implements DeviceState { """Operational data (telemetry).""" operational: OperationalDeviceData """Current business values (weather data).""" current: WeatherSensorValues } """ Aggregated weather information retrieved from the API. """ type WeatherSensorValues { """ Current temperature at the device location (in °C). """ temperature: Float """ Warnings or description of the street conditions (e.g. Ice, Rain, Clear). Derived from Open-Meteo weather codes. """ streetConditionWarnings: String }