{
  "ACTIVE_CURRENT": {
    "title": {
      "en": "Current",
      "fi": "Virta"
    },
    "description": {
      "en": "Electric current consumption in amperes.",
      "fi": "Sähkövirran kulutus ampeereina."
    },
    "ui": {
      "primary": "activeCurrent",
      "category": "power"
    },
    "state": {
      "activeCurrent": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "A",
          "fi": "A"
        },
        "title": {
          "en": "Current",
          "fi": "Virta"
        }
      }
    }
  },
  "ACTIVE_POWER": {
    "title": {
      "en": "Power",
      "fi": "Teho"
    },
    "description": {
      "en": "Current power consumption in watts.",
      "fi": "Hetkellinen tehonkulutus watteina."
    },
    "ui": {
      "primary": "activePower",
      "category": "power"
    },
    "state": {
      "activePower": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "W",
          "fi": "W"
        },
        "title": {
          "en": "Power",
          "fi": "Teho"
        }
      }
    }
  },
  "AIRCON": {
    "title": {
      "en": "Air conditioner",
      "fi": "Ilmastointilaite"
    },
    "description": {
      "en": "Air conditioner or heat pump controls and status.",
      "fi": "Ilmastointilaitteen tai lämpöpumpun ohjaus ja tila."
    },
    "icon": "airPump",
    "ui": {
      "primary": "mode",
      "category": "control"
    },
    "state": {
      "mode": {
        "type": "enum",
        "enum": [
          "auto",
          "dry",
          "cool",
          "heat",
          "lowheat"
        ],
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Mode",
          "fi": "Tila"
        }
      },
      "fan": {
        "type": "enum",
        "enum": [
          "auto",
          "min",
          "norm",
          "max"
        ],
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Fan speed",
          "fi": "Puhallinnopeus"
        }
      },
      "hswing": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Horizontal swing",
          "fi": "Vaakasuuntainen heilunta"
        }
      },
      "lastCommand": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Last command time",
          "fi": "Viimeisin komento"
        }
      }
    }
  },
  "ALERT": {
    "title": {
      "en": "Alert",
      "fi": "Hälytys"
    },
    "description": {
      "en": "Device can show or trigger an alert, such as flashing a light.",
      "fi": "Laite voi näyttää tai käynnistää hälytyksen, esimerkiksi vilkuttamalla valoa."
    },
    "ui": {
      "primary": "flash",
      "category": "alarm"
    },
    "state": {
      "high_priority": {
        "title": {
          "en": "High priority",
          "fi": "Korkea prioriteetti"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      },
      "alert_type": {
        "title": {
          "en": "Alert type",
          "fi": "Hälytystyyppi"
        },
        "type": "string",
        "gettable": false,
        "settable": true
      },
      "flash": {
        "title": {
          "en": "Flash indicator",
          "fi": "Vilkuta merkkivaloa"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      }
    }
  },
  "ANALOG_VALUE": {
    "title": {
      "en": "Analog value",
      "fi": "Analoginen arvo"
    },
    "description": {
      "en": "Generic analog value reported by the device.",
      "fi": "Laitteen ilmoittama yleinen analoginen arvo."
    },
    "icon": "devices",
    "ui": {
      "primary": "value",
      "category": "sensor"
    },
    "state": {
      "value": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Value",
          "fi": "Arvo"
        }
      }
    }
  },
  "BACNET": {
    "title": {
      "en": "BACnet",
      "fi": "BACnet"
    },
    "description": {
      "en": "BACnet device or point exposed through the hub.",
      "fi": "Hubin kautta käytettävä BACnet-laite tai -piste."
    },
    "ui": {
      "category": "connectivity",
      "hidden": true
    },
    "status": {
      "bacnetIds": {
        "title": {
          "en": "BACnet objects",
          "fi": "BACnet-objektit"
        },
        "description": {
          "en": "BACnet object identifiers and point metadata exposed by the hub.",
          "fi": "Hubin kautta näkyvät BACnet-objektien tunnisteet ja pistetiedot."
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      },
      "bacnetEnabled": {
        "title": {
          "en": "BACnet enabled",
          "fi": "BACnet käytössä"
        },
        "type": "boolean",
        "gettable": true,
        "settable": true
      },
      "deviceId": {
        "title": {
          "en": "Device id",
          "fi": "Laitteen tunniste"
        },
        "type": "string",
        "gettable": true,
        "settable": true
      },
      "port": {
        "title": {
          "en": "Port",
          "fi": "Portti"
        },
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 0,
        "minimum": 0
      },
      "broadcast": {
        "title": {
          "en": "Broadcast discovery",
          "fi": "Broadcast-haku"
        },
        "type": "boolean",
        "gettable": true,
        "settable": true
      }
    }
  },
  "BASS": {
    "title": {
      "en": "Bass",
      "fi": "Basso"
    },
    "description": {
      "en": "Bass adjustment for a media renderer.",
      "fi": "Medialaitteen bassosäätö."
    },
    "ui": {
      "primary": "rcData.bass",
      "category": "media"
    },
    "state": {
      "rcData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "bass": {
            "type": "number",
            "gettable": true,
            "settable": true,
            "decimals": 0,
            "minimum": -10,
            "maximum": 10,
            "title": {
              "en": "Bass",
              "fi": "Basso"
            }
          }
        },
        "title": {
          "en": "Rendering control data",
          "fi": "Toiston säätötiedot"
        }
      }
    }
  },
  "BATTERY_C": {
    "title": {
      "en": "Battery charging",
      "fi": "Akun lataus"
    },
    "description": {
      "en": "Battery charging state reported by the device.",
      "fi": "Laitteen ilmoittama akun lataustila."
    },
    "ui": {
      "primary": "chargingStatus",
      "category": "power"
    },
    "state": {
      "chargingStatus": {
        "type": "enum",
        "enum": [
          0,
          1,
          2
        ],
        "gettable": false,
        "settable": false,
        "ui": {
          "labels": {
            "0": {
              "en": "Idle",
              "fi": "Valmiustila"
            },
            "1": {
              "en": "Charging",
              "fi": "Latautuu"
            },
            "2": {
              "en": "Full",
              "fi": "Täysi"
            }
          }
        },
        "title": {
          "en": "Charging status",
          "fi": "Lataustila"
        }
      }
    }
  },
  "BATTERY_U": {
    "title": {
      "en": "Battery monitor",
      "fi": "Pariston tila"
    },
    "description": {
      "en": "Battery level and low-battery status reported by the device.",
      "fi": "Laitteen ilmoittama pariston taso ja alhaisen pariston tila."
    },
    "ui": {
      "primary": "batteryLow",
      "category": "power",
      "hidden": true
    },
    "state": {
      "batteryLow": {
        "type": "boolean",
        "gettable": false,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Low",
              "fi": "Matala"
            },
            "false": {
              "en": "OK",
              "fi": "OK"
            }
          },
          "severity": "warning"
        },
        "title": {
          "en": "Low battery",
          "fi": "Paristo vähissä"
        }
      },
      "batteryV": {
        "title": {
          "en": "Battery voltage",
          "fi": "Pariston jännite"
        },
        "type": "number",
        "gettable": false,
        "settable": false,
        "required": false,
        "decimals": 2,
        "unit": {
          "en": "V",
          "fi": "V"
        }
      }
    }
  },
  "BRIGHTNESS": {
    "title": {
      "en": "Brightness",
      "fi": "Kirkkaus"
    },
    "description": {
      "en": "Brightness level for a light or dimmable device.",
      "fi": "Valon tai himmennettävän laitteen kirkkaustaso."
    },
    "ui": {
      "primary": "brightness",
      "category": "control"
    },
    "state": {
      "brightness": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 2,
        "minimum": 0,
        "maximum": 1,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "scale": 100,
          "format": "percent"
        },
        "title": {
          "en": "Brightness",
          "fi": "Kirkkaus"
        }
      }
    }
  },
  "CLEAR_ALERT": {
    "title": {
      "en": "Clear alert",
      "fi": "Kuittaa hälytys"
    },
    "description": {
      "en": "Clear an alert that the device does not cancel automatically.",
      "fi": "Kuittaa hälytys, jota laite ei poista automaattisesti."
    },
    "ui": {
      "primary": "clearAlert",
      "category": "alarm"
    },
    "state": {
      "clearAlert": {
        "title": {
          "en": "Clear alert",
          "fi": "Kuittaa hälytys"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      },
      "alarmId": {
        "title": {
          "en": "Alarm id",
          "fi": "Hälytyksen tunniste"
        },
        "type": "string",
        "gettable": false,
        "settable": true
      }
    }
  },
  "CO": {
    "title": {
      "en": "Carbon monoxide",
      "fi": "Häkä"
    },
    "description": {
      "en": "Carbon monoxide concentration in parts per million.",
      "fi": "Häkäpitoisuus miljoonasosina."
    },
    "icon": "coSensor",
    "ui": {
      "primary": "coDetected",
      "category": "alarm"
    },
    "state": {
      "coDetected": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Detected",
              "fi": "Havaittu"
            },
            "false": {
              "en": "Clear",
              "fi": "Ei hälytystä"
            }
          },
          "severity": "alarm"
        },
        "title": {
          "en": "Carbon monoxide detected",
          "fi": "Häkä havaittu"
        }
      },
      "coAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Last carbon monoxide time",
          "fi": "Viimeisin häkähavainto"
        }
      },
      "coStartAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Carbon monoxide start time",
          "fi": "Häkähavainnon alkamisaika"
        }
      }
    }
  },
  "CO2": {
    "title": {
      "en": "Carbon dioxide",
      "fi": "Hiilidioksidi"
    },
    "description": {
      "en": "Carbon dioxide concentration in parts per million.",
      "fi": "Hiilidioksidipitoisuus miljoonasosina."
    },
    "ui": {
      "primary": "co2Ppm",
      "category": "sensor",
      "hidden": true
    },
    "state": {
      "co2Ppm": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "ppm",
          "fi": "ppm"
        },
        "title": {
          "en": "Carbon dioxide",
          "fi": "Hiilidioksidi"
        }
      }
    }
  },
  "COLOR_HS": {
    "title": {
      "en": "Hue and saturation",
      "fi": "Sävy ja kylläisyys"
    },
    "description": {
      "en": "Color control using hue and saturation.",
      "fi": "Värin ohjaus sävyn ja kylläisyyden avulla."
    },
    "ui": {
      "primary": "hue",
      "category": "control"
    },
    "state": {
      "hue": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 6.28318531,
        "unit": {
          "en": "rad",
          "fi": "rad"
        },
        "title": {
          "en": "Hue",
          "fi": "Sävy"
        }
      },
      "saturation": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 1,
        "ui": {
          "format": "percent",
          "scale": 100
        },
        "title": {
          "en": "Saturation",
          "fi": "Kylläisyys"
        }
      },
      "colorMode": {
        "type": "enum",
        "enum": [
          "hs",
          "ct"
        ],
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Color mode",
          "fi": "Väritila"
        }
      }
    }
  },
  "COLOR_LOOP": {
    "title": {
      "en": "Color loop",
      "fi": "Värikierto"
    },
    "description": {
      "en": "Animated color loop support for lights.",
      "fi": "Valojen animoitu värikiertotoiminto."
    },
    "ui": {
      "primary": "start",
      "category": "control"
    },
    "state": {
      "start": {
        "title": {
          "en": "Color loop active",
          "fi": "Värikierto käytössä"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "Start",
              "fi": "Käynnistä"
            },
            "false": {
              "en": "Stop",
              "fi": "Pysäytä"
            }
          }
        }
      }
    }
  },
  "COLOR_RGB": {
    "title": {
      "en": "RGB color",
      "fi": "RGB-väri"
    },
    "description": {
      "en": "Color control using red, green, and blue values.",
      "fi": "Värin ohjaus punaisen, vihreän ja sinisen arvoilla."
    },
    "ui": {
      "category": "control"
    }
  },
  "COLOR_TEMP": {
    "title": {
      "en": "Color temperature",
      "fi": "Värilämpötila"
    },
    "description": {
      "en": "White color temperature control in kelvins.",
      "fi": "Valkoisen valon värilämpötilan ohjaus kelvineinä."
    },
    "ui": {
      "primary": "temperature",
      "category": "control"
    },
    "state": {
      "temperature": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 1000000,
        "unit": {
          "en": "K",
          "fi": "K"
        },
        "title": {
          "en": "Temperature",
          "fi": "Lämpötila"
        }
      },
      "minTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "K",
          "fi": "K"
        },
        "title": {
          "en": "Minimum temperature",
          "fi": "Vähimmäislämpötila"
        }
      },
      "maxTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "K",
          "fi": "K"
        },
        "title": {
          "en": "Maximum temperature",
          "fi": "Enimmäislämpötila"
        }
      }
    }
  },
  "COLOR_XY": {
    "title": {
      "en": "XY color",
      "fi": "XY-väri"
    },
    "description": {
      "en": "Color control using CIE XY color coordinates.",
      "fi": "Värin ohjaus CIE XY -värikoordinaateilla."
    },
    "ui": {
      "category": "control"
    },
    "status": {
      "xySupported": {
        "title": {
          "en": "XY color supported",
          "fi": "XY-väri tuettu"
        },
        "type": "boolean",
        "gettable": true,
        "settable": false
      },
      "x": {
        "title": {
          "en": "X coordinate",
          "fi": "X-koordinaatti"
        },
        "type": "number",
        "gettable": false,
        "settable": true,
        "minimum": 0,
        "maximum": 65279
      },
      "y": {
        "title": {
          "en": "Y coordinate",
          "fi": "Y-koordinaatti"
        },
        "type": "number",
        "gettable": false,
        "settable": true,
        "minimum": 0,
        "maximum": 65279
      }
    }
  },
  "CONFIGURABLE": {
    "title": {
      "en": "Configurable",
      "fi": "Määritettävä"
    },
    "description": {
      "en": "Device-specific settings are available.",
      "fi": "Laitteelle on saatavilla laitekohtaisia asetuksia."
    },
    "ui": {
      "category": "info",
      "hidden": true
    },
    "status": {
      "template": {
        "title": {
          "en": "Configuration template",
          "fi": "Asetusten malli"
        },
        "description": {
          "en": "Available device-specific configuration fields and validation rules.",
          "fi": "Saatavilla olevat laitekohtaiset asetuskentät ja validointisäännöt."
        },
        "type": "object",
        "gettable": true,
        "settable": false
      },
      "parameters": {
        "title": {
          "en": "Configuration values",
          "fi": "Asetusarvot"
        },
        "description": {
          "en": "Current device-specific configuration values.",
          "fi": "Nykyiset laitekohtaiset asetusarvot."
        },
        "type": "object",
        "gettable": true,
        "settable": true
      }
    }
  },
  "CONTACT": {
    "title": {
      "en": "Door/window sensor",
      "fi": "Ovi- tai ikkunatunnistin"
    },
    "description": {
      "en": "Door or window contact sensor state.",
      "fi": "Oven tai ikkunan kosketintunnistimen tila."
    },
    "icon": "contactSensorDoor",
    "ui": {
      "primary": "open",
      "category": "sensor"
    },
    "state": {
      "open": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Open",
              "fi": "Auki"
            },
            "false": {
              "en": "Closed",
              "fi": "Kiinni"
            }
          }
        },
        "title": {
          "en": "Open",
          "fi": "Auki"
        }
      },
      "lastChange": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Last change",
          "fi": "Viimeisin muutos"
        }
      }
    }
  },
  "CONTROL_LIGHT": {
    "title": {
      "en": "Light control",
      "fi": "Valon ohjaus"
    },
    "description": {
      "en": "Device can control a light.",
      "fi": "Laite voi ohjata valoa."
    },
    "icon": "onOff",
    "ui": {
      "primary": "isOn",
      "category": "control",
      "hidden": true
    },
    "state": {
      "isOn": {
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        },
        "type": "boolean",
        "gettable": true,
        "settable": true
      },
      "brightness": {
        "title": {
          "en": "Brightness",
          "fi": "Kirkkaus"
        },
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 1,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "format": "percent",
          "scale": 100
        }
      },
      "hue": {
        "title": {
          "en": "Hue",
          "fi": "Sävy"
        },
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 6.28318531,
        "unit": {
          "en": "rad",
          "fi": "rad"
        }
      },
      "saturation": {
        "title": {
          "en": "Saturation",
          "fi": "Kylläisyys"
        },
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 1,
        "ui": {
          "format": "percent",
          "scale": 100
        }
      },
      "temperature": {
        "title": {
          "en": "Color temperature",
          "fi": "Värilämpötila"
        },
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 1000000,
        "unit": {
          "en": "K",
          "fi": "K"
        }
      },
      "colorMode": {
        "title": {
          "en": "Color mode",
          "fi": "Väritila"
        },
        "type": "enum",
        "enum": [
          "hs",
          "ct"
        ],
        "gettable": true,
        "settable": true
      },
      "transitionMsec": {
        "title": {
          "en": "Transition time",
          "fi": "Siirtymäaika"
        },
        "type": "number",
        "gettable": false,
        "settable": true,
        "minimum": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "duration"
        }
      }
    }
  },
  "CONTROL_MODE": {
    "title": {
      "en": "Control mode",
      "fi": "Ohjaustila"
    },
    "description": {
      "en": "Selectable operating mode for the device.",
      "fi": "Laitteen valittava toimintatila."
    },
    "ui": {
      "primary": "mode",
      "category": "control"
    },
    "state": {
      "mode": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Mode",
          "fi": "Tila"
        }
      }
    }
  },
  "CONTROL_POWER": {
    "title": {
      "en": "Power control",
      "fi": "Virran ohjaus"
    },
    "description": {
      "en": "Device can control power output.",
      "fi": "Laite voi ohjata virransyöttöä."
    },
    "ui": {
      "primary": "isOn",
      "category": "control",
      "hidden": true
    },
    "state": {
      "isOn": {
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        },
        "type": "boolean",
        "gettable": true,
        "settable": true
      },
      "lastChange": {
        "title": {
          "en": "Last change",
          "fi": "Viimeisin muutos"
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        }
      },
      "brightness": {
        "title": {
          "en": "Brightness",
          "fi": "Kirkkaus"
        },
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 1,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "format": "percent",
          "scale": 100
        }
      }
    }
  },
  "CONTROL_PRESET": {
    "title": {
      "en": "Control preset",
      "fi": "Esiasetus"
    },
    "description": {
      "en": "Selectable preset for the device.",
      "fi": "Laitteen valittava esiasetus."
    },
    "ui": {
      "primary": "preset",
      "category": "control"
    },
    "state": {
      "preset": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Preset",
          "fi": "Esiasetus"
        }
      }
    }
  },
  "CONTROL_REL_HUMIDITY": {
    "title": {
      "en": "Humidity control",
      "fi": "Kosteuden ohjaus"
    },
    "description": {
      "en": "Device can control relative humidity.",
      "fi": "Laite voi ohjata suhteellista ilmankosteutta."
    },
    "ui": {
      "category": "control"
    }
  },
  "CONTROL_TEMPERATURE": {
    "title": {
      "en": "Target temperature",
      "fi": "Tavoitelämpötila"
    },
    "description": {
      "en": "Target temperature for heating or cooling control.",
      "fi": "Lämmityksen tai jäähdytyksen tavoitelämpötila."
    },
    "ui": {
      "primary": "targetTemp",
      "category": "control"
    },
    "state": {
      "targetTemp": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Target temperature",
          "fi": "Tavoitelämpötila"
        }
      },
      "heatingDemand": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "minimum": 0,
        "maximum": 1,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "scale": 100,
          "format": "percent"
        },
        "title": {
          "en": "Heating demand",
          "fi": "Lämmitystarve"
        }
      }
    }
  },
  "DETERIORATION": {
    "title": {
      "en": "Deterioration detection",
      "fi": "Voinnin heikkeneminen"
    },
    "description": {
      "en": "Healthcare sensor indication for patient deterioration.",
      "fi": "Hyvinvointianturin ilmoitus voinnin heikkenemisestä."
    },
    "ui": {
      "primary": "deterioration",
      "category": "alarm"
    },
    "state": {
      "deterioration": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Detected",
              "fi": "Havaittu"
            },
            "false": {
              "en": "OK",
              "fi": "OK"
            }
          },
          "severity": "warning"
        },
        "title": {
          "en": "Deterioration detected",
          "fi": "Voinnin heikkeneminen havaittu"
        }
      }
    }
  },
  "DEVICE": {
    "title": {
      "en": "Device presence",
      "fi": "Laitteen yhteys"
    },
    "description": {
      "en": "Device connectivity status and last seen time.",
      "fi": "Laitteen yhteystila ja viimeisin havaintoaika."
    },
    "ui": {
      "primary": "reachable",
      "category": "connectivity",
      "hidden": true
    },
    "state": {
      "lastSeen": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Last seen",
          "fi": "Viimeksi nähty"
        }
      },
      "reachable": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Reachable",
          "fi": "Tavoitettavissa"
        }
      }
    }
  },
  "DEVICE_HEALTH": {
    "title": {
      "en": "Device health",
      "fi": "Laitteen kunto"
    },
    "description": {
      "en": "Device can report health or diagnostic status.",
      "fi": "Laite voi ilmoittaa kunto- tai diagnostiikkatilan."
    },
    "ui": {
      "primary": "operational",
      "category": "status"
    },
    "status": {
      "operational": {
        "title": {
          "en": "Operational",
          "fi": "Toimintakunnossa"
        },
        "type": "boolean",
        "gettable": true,
        "settable": false
      },
      "errors": {
        "title": {
          "en": "Errors",
          "fi": "Virheet"
        },
        "type": "string[]",
        "gettable": true,
        "settable": false
      },
      "warnings": {
        "title": {
          "en": "Warnings",
          "fi": "Varoitukset"
        },
        "type": "string[]",
        "gettable": true,
        "settable": false
      },
      "loads": {
        "title": {
          "en": "Load measurements",
          "fi": "Kuormitusmittaukset"
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    }
  },
  "DIMMER": {
    "title": {
      "en": "Dimmer",
      "fi": "Himmennin"
    },
    "description": {
      "en": "Dimmer level or dimmer control state.",
      "fi": "Himmentimen taso tai ohjaustila."
    },
    "icon": "dimmerSwitch",
    "ui": {
      "primary": "onoff",
      "category": "control"
    },
    "state": {
      "step": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Dimmer step",
          "fi": "Himmennyksen askel"
        }
      },
      "onoff": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "On",
              "fi": "Päällä"
            },
            "false": {
              "en": "Off",
              "fi": "Pois päältä"
            }
          }
        },
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        }
      },
      "transitionMsec": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "duration"
        },
        "title": {
          "en": "Transition time",
          "fi": "Siirtymäaika"
        }
      }
    }
  },
  "DIMMER_CONTROL": {
    "title": {
      "en": "Dimmer control",
      "fi": "Himmennysohjain"
    },
    "description": {
      "en": "Legacy dimmer control capability.",
      "fi": "Vanha himmennysohjauksen ominaisuus."
    },
    "ui": {
      "primary": "step",
      "category": "control",
      "hidden": true
    },
    "state": {
      "step": {
        "title": {
          "en": "Dimmer step",
          "fi": "Himmennyksen askel"
        },
        "type": "number",
        "gettable": false,
        "settable": false
      },
      "onoff": {
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        },
        "type": "boolean",
        "gettable": false,
        "settable": false
      },
      "transitionMsec": {
        "title": {
          "en": "Transition time",
          "fi": "Siirtymäaika"
        },
        "type": "number",
        "gettable": false,
        "settable": false,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "duration"
        }
      },
      "isOn": {
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        },
        "type": "boolean",
        "gettable": false,
        "settable": false
      }
    }
  },
  "EXT_THERMOMETER": {
    "title": {
      "en": "External thermometer",
      "fi": "Ulkoinen lämpömittari"
    },
    "description": {
      "en": "Device needs an external temperature measurement.",
      "fi": "Laite tarvitsee ulkoisen lämpötilamittauksen."
    },
    "ui": {
      "primary": "temperature",
      "category": "info"
    },
    "status": {
      "thermometer": {
        "title": {
          "en": "Thermometer device",
          "fi": "Lämpömittarilaite"
        },
        "type": "string",
        "gettable": true,
        "settable": true
      }
    },
    "state": {
      "temperature": {
        "title": {
          "en": "Temperature",
          "fi": "Lämpötila"
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        }
      }
    }
  },
  "FAN_MODE": {
    "title": {
      "en": "Fan mode",
      "fi": "Puhallintila"
    },
    "description": {
      "en": "Selectable fan speed or fan operating mode.",
      "fi": "Valittava puhaltimen nopeus tai toimintatila."
    },
    "ui": {
      "primary": "fanMode",
      "category": "control"
    },
    "state": {
      "fanMode": {
        "type": "enum",
        "enum": [
          0,
          1,
          2,
          3,
          4,
          5,
          6
        ],
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "0": {
              "en": "Off",
              "fi": "Pois päältä"
            },
            "1": {
              "en": "Min",
              "fi": "Minimi"
            },
            "2": {
              "en": "Low",
              "fi": "Matala"
            },
            "3": {
              "en": "Normal",
              "fi": "Normaali"
            },
            "4": {
              "en": "High",
              "fi": "Korkea"
            },
            "5": {
              "en": "Max",
              "fi": "Maksimi"
            },
            "6": {
              "en": "Auto",
              "fi": "Automaattinen"
            }
          }
        },
        "title": {
          "en": "Fan mode",
          "fi": "Puhallintila"
        }
      }
    }
  },
  "FLOOR_TEMP": {
    "title": {
      "en": "Floor temperature",
      "fi": "Lattian lämpötila"
    },
    "description": {
      "en": "Floor temperature in degrees Celsius.",
      "fi": "Lattian lämpötila Celsius-asteina."
    },
    "ui": {
      "primary": "floorTemp",
      "category": "sensor"
    },
    "state": {
      "floorTemp": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Floor temperature",
          "fi": "Lattian lämpötila"
        }
      }
    }
  },
  "FLOW": {
    "title": {
      "en": "Flow",
      "fi": "Virtaus"
    },
    "description": {
      "en": "Fluid flow rate reported by the device.",
      "fi": "Laitteen ilmoittama nesteen virtausnopeus."
    },
    "ui": {
      "primary": "flow",
      "category": "sensor"
    },
    "state": {
      "flow": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "l/h",
          "fi": "l/h"
        },
        "title": {
          "en": "Flow rate",
          "fi": "Virtausnopeus"
        }
      }
    }
  },
  "FLOW_TEMPERATURE": {
    "title": {
      "en": "Flow temperature",
      "fi": "Virtauslämpötila"
    },
    "description": {
      "en": "Water flow temperature in degrees Celsius.",
      "fi": "Veden virtauslämpötila Celsius-asteina."
    },
    "ui": {
      "primary": "flowTemp",
      "category": "sensor"
    },
    "state": {
      "flowTemp": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Flow temperature",
          "fi": "Virtauslämpötila"
        }
      }
    }
  },
  "FLOW_VOLUME": {
    "title": {
      "en": "Flow volume",
      "fi": "Virtaustilavuus"
    },
    "description": {
      "en": "Total measured fluid volume.",
      "fi": "Mitattu kokonaisnestetilavuus."
    },
    "ui": {
      "primary": "flowVolume",
      "category": "sensor",
      "hidden": true
    },
    "state": {
      "flowVolume": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "l",
          "fi": "l"
        },
        "title": {
          "en": "Flow volume",
          "fi": "Virtaustilavuus"
        }
      }
    }
  },
  "FOSCAM_API": {
    "title": {
      "en": "Foscam API",
      "fi": "Foscam-rajapinta"
    },
    "description": {
      "en": "Foscam camera API support.",
      "fi": "Foscam-kamerarajapinnan tuki."
    },
    "ui": {
      "category": "connectivity",
      "hidden": true
    },
    "status": {
      "username": {
        "title": {
          "en": "Username",
          "fi": "Käyttäjätunnus"
        },
        "type": "string",
        "gettable": true,
        "settable": true
      },
      "ip": {
        "title": {
          "en": "IP address",
          "fi": "IP-osoite"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "media_port": {
        "title": {
          "en": "Media port",
          "fi": "Mediaportti"
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "minimum": 0
      },
      "model_number": {
        "title": {
          "en": "Model number",
          "fi": "Mallinumero"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "sw_version": {
        "title": {
          "en": "Software version",
          "fi": "Ohjelmistoversio"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "fw_version": {
        "title": {
          "en": "Firmware version",
          "fi": "Laiteohjelmiston versio"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "credentialStatus": {
        "title": {
          "en": "Credential status",
          "fi": "Kirjautumistietojen tila"
        },
        "type": "enum",
        "enum": [
          "OK",
          "INSUFFICIENT",
          "DEFAULT",
          "ERROR"
        ],
        "gettable": true,
        "settable": false
      },
      "medias": {
        "title": {
          "en": "Media profiles",
          "fi": "Mediaprofiilit"
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    }
  },
  "GENERATE_ALERT": {
    "title": {
      "en": "Generate alert",
      "fi": "Luo hälytys"
    },
    "description": {
      "en": "Device can generate an alert event.",
      "fi": "Laite voi luoda hälytystapahtuman."
    },
    "ui": {
      "primary": "alert",
      "category": "alarm"
    },
    "state": {
      "alert": {
        "type": "boolean",
        "gettable": false,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Active",
              "fi": "Aktiivinen"
            },
            "false": {
              "en": "Clear",
              "fi": "Ei hälytystä"
            }
          },
          "severity": "alarm"
        },
        "title": {
          "en": "Alert active",
          "fi": "Hälytys aktiivinen"
        }
      },
      "alertAt": {
        "type": "number",
        "gettable": false,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Alert time",
          "fi": "Hälytysaika"
        }
      },
      "alertStartAt": {
        "type": "number",
        "gettable": false,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Alert start time",
          "fi": "Hälytyksen alkamisaika"
        }
      }
    }
  },
  "G_ALARM": {
    "title": {
      "en": "Generic alarm",
      "fi": "Yleinen hälytys"
    },
    "description": {
      "en": "Generic alarm state and alarm event details.",
      "fi": "Yleinen hälytystila ja halytystapahtuman tiedot."
    },
    "ui": {
      "primary": "gAlarm",
      "category": "alarm"
    },
    "state": {
      "gAlarm": {
        "type": "boolean",
        "gettable": false,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Active",
              "fi": "Aktiivinen"
            },
            "false": {
              "en": "Clear",
              "fi": "Ei hälytystä"
            }
          },
          "severity": "alarm"
        },
        "title": {
          "en": "Alarm active",
          "fi": "Hälytys aktiivinen"
        }
      },
      "gAlarmId": {
        "type": "string",
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Alarm id",
          "fi": "Hälytyksen tunniste"
        }
      },
      "gAlarmAt": {
        "type": "number",
        "gettable": false,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Alarm time",
          "fi": "Hälytysaika"
        }
      },
      "gAlarmCode": {
        "type": "string",
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Alarm code",
          "fi": "Hälytyskoodi"
        }
      },
      "gAlarmMsg": {
        "type": "string",
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Alarm message",
          "fi": "Hälytysviesti"
        }
      }
    }
  },
  "HEXC_PRIMARY_TEMPERATURES": {
    "title": {
      "en": "Heat exchanger primary temperatures",
      "fi": "Lämmönvaihtimen ensiöpuolen lämpötilat"
    },
    "description": {
      "en": "Temperatures on the energy provider side of a heat exchanger.",
      "fi": "Lämmönvaihtimen energiantoimittajan puolen lämpötilat."
    },
    "ui": {
      "primary": "hexcPrimaryInTemperature",
      "category": "sensor"
    },
    "state": {
      "hexcPrimaryInTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "minimum": -273.15,
        "maximum": 5600,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Primary inlet temperature",
          "fi": "Ensiöpuolen tulolämpötila"
        }
      },
      "hexcPrimaryOutTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "minimum": -273.15,
        "maximum": 5600,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Primary outlet temperature",
          "fi": "Ensiöpuolen lähtölämpötila"
        }
      }
    }
  },
  "HEXC_SECONDARY_TEMPERATURES": {
    "title": {
      "en": "Heat exchanger secondary temperatures",
      "fi": "Lämmönvaihtimen toisiopuolen lämpötilat"
    },
    "description": {
      "en": "Temperatures on the building side of a heat exchanger.",
      "fi": "Lämmönvaihtimen kiinteistön puolen lämpötilat."
    },
    "ui": {
      "primary": "hexcSecondaryInTemperature",
      "category": "sensor"
    },
    "state": {
      "hexcSecondaryInTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "minimum": -273.15,
        "maximum": 5600,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Secondary inlet temperature",
          "fi": "Toisiopuolen tulolämpötila"
        }
      },
      "hexcSecondaryOutTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "minimum": -273.15,
        "maximum": 5600,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Secondary outlet temperature",
          "fi": "Toisiopuolen lähtölämpötila"
        }
      }
    }
  },
  "HIGH_TEMP": {
    "title": {
      "en": "High temperature alarm",
      "fi": "Korkean lämpötilan hälytys"
    },
    "description": {
      "en": "Indicates that the measured temperature is too high.",
      "fi": "Ilmoittaa, että mitattu lämpötila on liian korkea."
    },
    "ui": {
      "primary": "highTemp",
      "category": "alarm"
    },
    "state": {
      "highTemp": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "High",
              "fi": "Korkea"
            },
            "false": {
              "en": "Normal",
              "fi": "Normaali"
            }
          },
          "severity": "warning"
        },
        "title": {
          "en": "High temperature",
          "fi": "Korkea lämpötila"
        }
      },
      "highTempAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "High temperature time",
          "fi": "Korkean lämpötilan aika"
        }
      }
    }
  },
  "HOME_SWITCH": {
    "title": {
      "en": "Home/Away switch",
      "fi": "Kotona/poissa-kytkin"
    },
    "description": {
      "en": "Home/Away mode switch for remote controls and wall switches.",
      "fi": "Koti-/poissa-tilan kytkin kauko-ohjaimille ja seinäkytkimille."
    },
    "ui": {
      "primary": "homeSwitchMode",
      "category": "control"
    },
    "state": {
      "homeSwitchMode": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Home/Away mode",
          "fi": "Kotona/poissa-tila"
        }
      }
    }
  },
  "HUE_SWITCH": {
    "title": {
      "en": "Hue switch",
      "fi": "Hue-kytkin"
    },
    "description": {
      "en": "Philips Hue switch specific capability.",
      "fi": "Philips Hue -kytkimen laitekohtainen ominaisuus."
    },
    "ui": {
      "primary": "button",
      "category": "control"
    },
    "status": {
      "buttons": {
        "title": {
          "en": "Buttons",
          "fi": "Painikkeet"
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    },
    "state": {
      "button": {
        "title": {
          "en": "Button",
          "fi": "Painike"
        },
        "type": "number",
        "gettable": false,
        "settable": false,
        "minimum": 1,
        "maximum": 4
      },
      "modifiers": {
        "title": {
          "en": "Button modifiers",
          "fi": "Painikkeen lisämääreet"
        },
        "type": "string[]",
        "enum": [
          "longpress",
          "stop",
          "full_on",
          "toggle"
        ],
        "gettable": false,
        "settable": false
      }
    }
  },
  "HUMIDITY": {
    "title": {
      "en": "Humidity",
      "fi": "Ilmankosteus"
    },
    "description": {
      "en": "Relative humidity in percent.",
      "fi": "Suhteellinen ilmankosteus prosentteina."
    },
    "icon": "humiditySensor",
    "ui": {
      "primary": "humidity",
      "category": "sensor"
    },
    "state": {
      "humidity": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "title": {
          "en": "Humidity",
          "fi": "Ilmankosteus"
        }
      }
    }
  },
  "HYPOTERMIA": {
    "title": {
      "en": "Hypothermia detection",
      "fi": "Alilämpöisyyden tunnistus"
    },
    "description": {
      "en": "Healthcare sensor indication for hypothermia.",
      "fi": "Hyvinvointianturin ilmoitus alilämpöisyydestä."
    },
    "ui": {
      "primary": "lowTemp",
      "category": "alarm"
    },
    "state": {
      "lowTemp": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Low",
              "fi": "Matala"
            },
            "false": {
              "en": "Normal",
              "fi": "Normaali"
            }
          },
          "severity": "warning"
        },
        "title": {
          "en": "Low temperature",
          "fi": "Matala lämpötila"
        }
      },
      "lowTempAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Low temperature time",
          "fi": "Matalan lämpötilan aika"
        }
      }
    }
  },
  "IAS_ACE": {
    "title": {
      "en": "Alarm keypad",
      "fi": "Hälytysnäppäimistö"
    },
    "description": {
      "en": "Zigbee IAS ACE alarm keypad commands.",
      "fi": "Zigbee IAS ACE -hälytysnäppäimistön komennot."
    },
    "icon": "keyfob",
    "ui": {
      "primary": "command",
      "category": "control"
    },
    "state": {
      "command": {
        "type": "enum",
        "enum": [
          "disarm",
          "arm_day",
          "arm_night",
          "arm_away",
          "emergency",
          "panic",
          "fire"
        ],
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Command",
          "fi": "Komento"
        }
      }
    }
  },
  "IDENTIFY": {
    "title": {
      "en": "Identify device",
      "fi": "Tunnista laite"
    },
    "description": {
      "en": "Device can identify itself, for example by blinking or sounding.",
      "fi": "Laite voi tunnistaa itsensä esimerkiksi vilkkumalla tai äänellä."
    },
    "ui": {
      "primary": "stop",
      "category": "control"
    },
    "state": {
      "stop": {
        "title": {
          "en": "Stop identifying",
          "fi": "Lopeta tunnistus"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      }
    }
  },
  "IKEA_ONOFF_SWITCH": {
    "title": {
      "en": "IKEA on/off switch",
      "fi": "IKEA on/off -kytkin"
    },
    "description": {
      "en": "IKEA on/off switch specific capability.",
      "fi": "IKEA on/off -kytkimen laitekohtainen ominaisuus."
    },
    "ui": {
      "primary": "button",
      "category": "control"
    },
    "status": {
      "buttons": {
        "title": {
          "en": "Buttons",
          "fi": "Painikkeet"
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    },
    "state": {
      "button": {
        "title": {
          "en": "Button",
          "fi": "Painike"
        },
        "type": "number",
        "gettable": false,
        "settable": false,
        "minimum": 1,
        "maximum": 2
      },
      "modifiers": {
        "title": {
          "en": "Button modifiers",
          "fi": "Painikkeen lisämääreet"
        },
        "type": "string[]",
        "enum": [
          "longpress",
          "stop"
        ],
        "gettable": false,
        "settable": false
      }
    }
  },
  "IKEA_RC": {
    "title": {
      "en": "IKEA remote control",
      "fi": "IKEA-kauko-ohjain"
    },
    "description": {
      "en": "IKEA remote control specific capability.",
      "fi": "IKEA-kauko-ohjaimen laitekohtainen ominaisuus."
    },
    "ui": {
      "primary": "button",
      "category": "control"
    },
    "status": {
      "buttons": {
        "title": {
          "en": "Buttons",
          "fi": "Painikkeet"
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    },
    "state": {
      "button": {
        "title": {
          "en": "Button",
          "fi": "Painike"
        },
        "type": "number",
        "gettable": false,
        "settable": false,
        "minimum": 1,
        "maximum": 6
      },
      "modifiers": {
        "title": {
          "en": "Button modifiers",
          "fi": "Painikkeen lisämääreet"
        },
        "type": "string[]",
        "enum": [
          "longpress",
          "stop",
          "full_on",
          "toggle"
        ],
        "gettable": false,
        "settable": false
      }
    }
  },
  "KNX_AWAY_SWITCH": {
    "title": {
      "en": "KNX away switch",
      "fi": "KNX poissa -kytkin"
    },
    "description": {
      "en": "KNX Home/Away switch, for example via MQTT.",
      "fi": "KNX-koti-/poissa-kytkin, esimerkiksi MQTT:n kautta."
    },
    "ui": {
      "primary": "isOn",
      "category": "control"
    },
    "state": {
      "isOn": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "Away",
              "fi": "Poissa"
            },
            "false": {
              "en": "Home",
              "fi": "Kotona"
            }
          }
        },
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        }
      }
    }
  },
  "LIFT": {
    "title": {
      "en": "Lift position",
      "fi": "Nostoasento"
    },
    "description": {
      "en": "Curtain, blind, or covering lift position.",
      "fi": "Verhon, kaihtimen tai peitteen nostoasento."
    },
    "ui": {
      "primary": "liftPct",
      "category": "control"
    },
    "state": {
      "liftPct": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 100,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "title": {
          "en": "Lift position",
          "fi": "Nostoasento"
        }
      }
    }
  },
  "LIVE_FEED": {
    "title": {
      "en": "Live feed",
      "fi": "Suora kuva"
    },
    "description": {
      "en": "Camera live feed state and connection information.",
      "fi": "Kameran suoran kuvan tila ja yhteystiedot."
    },
    "ui": {
      "primary": "connectionState",
      "category": "media"
    },
    "state": {
      "media": {
        "type": "string",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Media profile",
          "fi": "Mediaprofiili"
        }
      },
      "isOn": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        }
      },
      "viewerCount": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "minimum": 0,
        "title": {
          "en": "Viewer count",
          "fi": "Katsojien määrä"
        }
      },
      "connectionState": {
        "type": "enum",
        "enum": [
          "OK",
          "DEGRADED",
          "LOST"
        ],
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Connection state",
          "fi": "Yhteyden tila"
        }
      }
    }
  },
  "LOUDNESS": {
    "title": {
      "en": "Loudness",
      "fi": "Loudness-korostus"
    },
    "description": {
      "en": "Loudness adjustment for a media renderer.",
      "fi": "Medialaitteen loudness-korostuksen säätö."
    },
    "ui": {
      "primary": "rcData.loudness",
      "category": "media"
    },
    "state": {
      "rcData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "loudness": {
            "type": "boolean",
            "gettable": true,
            "settable": true,
            "title": {
              "en": "Loudness",
              "fi": "Loudness-korostus"
            }
          }
        },
        "title": {
          "en": "Rendering control data",
          "fi": "Toiston säätötiedot"
        }
      }
    }
  },
  "LOW_TEMP": {
    "title": {
      "en": "Low temperature alarm",
      "fi": "Matalan lämpötilan hälytys"
    },
    "description": {
      "en": "Indicates that the measured temperature is too low.",
      "fi": "Ilmoittaa, että mitattu lämpötila on liian matala."
    },
    "ui": {
      "primary": "lowTemp",
      "category": "alarm"
    },
    "state": {
      "lowTemp": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Low",
              "fi": "Matala"
            },
            "false": {
              "en": "Normal",
              "fi": "Normaali"
            }
          },
          "severity": "warning"
        },
        "title": {
          "en": "Low temperature",
          "fi": "Matala lämpötila"
        }
      },
      "lowTempAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Low temperature time",
          "fi": "Matalan lämpötilan aika"
        }
      }
    }
  },
  "LUX": {
    "title": {
      "en": "Light level",
      "fi": "Valoisuus"
    },
    "description": {
      "en": "Ambient light level reported by the sensor.",
      "fi": "Anturin ilmoittama ympäristön valoisuuden taso."
    },
    "icon": "dimmer",
    "ui": {
      "primary": "lux",
      "category": "sensor"
    },
    "state": {
      "lux": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "lux",
          "fi": "lux"
        },
        "title": {
          "en": "Light level",
          "fi": "Valoisuustaso"
        }
      }
    }
  },
  "MEASURE_POWER": {
    "title": {
      "en": "Energy",
      "fi": "Energia"
    },
    "description": {
      "en": "Consumed energy in kilowatt-hours.",
      "fi": "Kulutettu energia kilowattitunteina."
    },
    "ui": {
      "primary": "totalPower",
      "category": "power"
    },
    "state": {
      "totalPower": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "kWh",
          "fi": "kWh"
        },
        "title": {
          "en": "Total energy",
          "fi": "Kokonaisenergia"
        }
      },
      "powerToday": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "kWh",
          "fi": "kWh"
        },
        "title": {
          "en": "Energy today",
          "fi": "Energia tänään"
        }
      },
      "powerYesterday": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "kWh",
          "fi": "kWh"
        },
        "title": {
          "en": "Energy yesterday",
          "fi": "Energia eilen"
        }
      }
    }
  },
  "MOISTURE": {
    "title": {
      "en": "Moisture",
      "fi": "Kosteus"
    },
    "description": {
      "en": "Moisture or water leak sensing state.",
      "fi": "Kosteuden tai vesivuodon tunnistustila."
    },
    "icon": "floodSensor",
    "ui": {
      "primary": "moisture",
      "category": "alarm"
    },
    "state": {
      "moisture": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Detected",
              "fi": "Havaittu"
            },
            "false": {
              "en": "Dry",
              "fi": "Kuiva"
            }
          },
          "severity": "alarm"
        },
        "title": {
          "en": "Moisture detected",
          "fi": "Kosteus havaittu"
        }
      },
      "moistureAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Moisture time",
          "fi": "Kosteushavainnon aika"
        }
      }
    }
  },
  "MOTION": {
    "title": {
      "en": "Motion",
      "fi": "Liike"
    },
    "description": {
      "en": "Motion sensing state.",
      "fi": "Liikkeentunnistuksen tila."
    },
    "icon": "motionDetector",
    "ui": {
      "primary": "motion",
      "category": "sensor"
    },
    "state": {
      "motion": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Motion",
              "fi": "Liikettä"
            },
            "false": {
              "en": "No motion",
              "fi": "Ei liikettä"
            }
          },
          "severity": "info"
        },
        "title": {
          "en": "Motion detected",
          "fi": "Liike havaittu"
        }
      },
      "lastMotion": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Last motion time",
          "fi": "Viimeisin liike"
        }
      }
    }
  },
  "MUTE": {
    "title": {
      "en": "Mute",
      "fi": "Vaiennus"
    },
    "description": {
      "en": "Mute control for a media renderer.",
      "fi": "Medialaitteen vaiennuksen ohjaus."
    },
    "ui": {
      "primary": "rcData.mute",
      "category": "media"
    },
    "state": {
      "rcData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "mute": {
            "type": "boolean",
            "gettable": true,
            "settable": true,
            "title": {
              "en": "Mute",
              "fi": "Vaiennus"
            }
          }
        },
        "title": {
          "en": "Rendering control data",
          "fi": "Toiston säätötiedot"
        }
      }
    }
  },
  "NEXT": {
    "title": {
      "en": "Next",
      "fi": "Seuraava"
    },
    "description": {
      "en": "Move to the next media item.",
      "fi": "Siirry seuraavaan mediasisältöön."
    },
    "ui": {
      "primary": "next",
      "category": "media"
    },
    "state": {
      "next": {
        "title": {
          "en": "Next item",
          "fi": "Seuraava kohde"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      }
    }
  },
  "ONVIF_API": {
    "title": {
      "en": "ONVIF API",
      "fi": "ONVIF-rajapinta"
    },
    "description": {
      "en": "ONVIF camera API support.",
      "fi": "ONVIF-kamerarajapinnan tuki."
    },
    "ui": {
      "category": "connectivity",
      "hidden": true
    },
    "status": {
      "username": {
        "title": {
          "en": "Username",
          "fi": "Käyttäjätunnus"
        },
        "type": "string",
        "gettable": true,
        "settable": true
      },
      "cameraId": {
        "title": {
          "en": "Camera id",
          "fi": "Kameran tunniste"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "medias": {
        "title": {
          "en": "Media profiles",
          "fi": "Mediaprofiilit"
        },
        "description": {
          "en": "Available ONVIF media profiles with token, resolution, bitrate and framerate metadata.",
          "fi": "Saatavilla olevat ONVIF-mediaprofiilit, joissa on tunniste, resoluutio, bittinopeus ja kuvataajuus."
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      },
      "credentialStatus": {
        "title": {
          "en": "Credential status",
          "fi": "Kirjautumistietojen tila"
        },
        "type": "enum",
        "enum": [
          "OK",
          "INSUFFICIENT",
          "DEFAULT",
          "ERROR"
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "OK": {
              "en": "OK",
              "fi": "OK"
            },
            "INSUFFICIENT": {
              "en": "Insufficient rights",
              "fi": "Riittämättömät oikeudet"
            },
            "DEFAULT": {
              "en": "Default credentials",
              "fi": "Oletuskirjautumistiedot"
            },
            "ERROR": {
              "en": "Credential error",
              "fi": "Kirjautumistietojen virhe"
            }
          }
        }
      }
    }
  },
  "ON_OFF": {
    "title": {
      "en": "On/off",
      "fi": "Päälle/pois"
    },
    "description": {
      "en": "Device can be switched on and off.",
      "fi": "Laite voidaan kytkeä päälle ja pois."
    },
    "ui": {
      "primary": "isOn",
      "category": "control"
    },
    "state": {
      "isOn": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "On",
              "fi": "Päällä"
            },
            "false": {
              "en": "Off",
              "fi": "Pois päältä"
            }
          }
        },
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        }
      }
    }
  },
  "PASSIVITY": {
    "title": {
      "en": "Passivity detection",
      "fi": "Passiivisuuden tunnistus"
    },
    "description": {
      "en": "Healthcare sensor indication for passivity.",
      "fi": "Hyvinvointianturin ilmoitus passiivisuudesta."
    },
    "ui": {
      "primary": "passive",
      "category": "sensor"
    },
    "state": {
      "passive": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Passive",
              "fi": "Passiivinen"
            },
            "false": {
              "en": "Active",
              "fi": "Aktiivinen"
            }
          }
        },
        "title": {
          "en": "Passivity detected",
          "fi": "Passiivisuus havaittu"
        }
      },
      "passiveAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Passivity time",
          "fi": "Passiivisuuden aika"
        }
      }
    }
  },
  "PAUSE": {
    "title": {
      "en": "Pause",
      "fi": "Tauko"
    },
    "description": {
      "en": "Pause media playback.",
      "fi": "Keskeytä median toisto."
    },
    "ui": {
      "primary": "isOn",
      "category": "media"
    },
    "state": {
      "isOn": {
        "title": {
          "en": "Playback active",
          "fi": "Toisto käynnissä"
        },
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "Playing",
              "fi": "Toistaa"
            },
            "false": {
              "en": "Paused",
              "fi": "Tauolla"
            }
          }
        }
      }
    }
  },
  "PHONE_MAKE_CALL": {
    "title": {
      "en": "Make phone call",
      "fi": "Soita puhelu"
    },
    "description": {
      "en": "Start a phone call from the hub.",
      "fi": "Aloita puhelu hubista."
    },
    "ui": {
      "primary": "callToNumber",
      "category": "media"
    },
    "state": {
      "callToNumber": {
        "type": "string",
        "gettable": false,
        "settable": true,
        "title": {
          "en": "Number to call",
          "fi": "Soitettava numero"
        }
      }
    }
  },
  "PHONE_RECEIVE_CALL": {
    "title": {
      "en": "Receive phone call",
      "fi": "Vastaanota puhelu"
    },
    "description": {
      "en": "Receive or answer an incoming phone call.",
      "fi": "Vastaanota tai vastaa saapuvaan puheluun."
    },
    "ui": {
      "primary": "callState",
      "category": "media"
    },
    "state": {
      "callState": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Call state",
          "fi": "Puhelun tila"
        }
      },
      "callFromNumber": {
        "type": "string",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Caller number",
          "fi": "Soittajan numero"
        }
      }
    }
  },
  "PIR_MOVE": {
    "title": {
      "en": "PIR/movement mode",
      "fi": "PIR-/liiketila"
    },
    "description": {
      "en": "Selectable PIR or movement detection mode.",
      "fi": "Valittava PIR- tai liiketunnistuksen tila."
    },
    "ui": {
      "primary": "usePir",
      "category": "sensor"
    },
    "state": {
      "usePir": {
        "title": {
          "en": "Use PIR detection",
          "fi": "Käytä PIR-tunnistusta"
        },
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "PIR",
              "fi": "PIR"
            },
            "false": {
              "en": "Movement",
              "fi": "Liike"
            }
          }
        }
      }
    }
  },
  "PLAY": {
    "title": {
      "en": "Play",
      "fi": "Toista"
    },
    "description": {
      "en": "Media playback state and play controls.",
      "fi": "Median toiston tila ja toisto-ohjaus."
    },
    "ui": {
      "primary": "avtData.state",
      "category": "media",
      "hidden": true
    },
    "state": {
      "avtData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "state": {
            "type": "enum",
            "enum": [
              "PLAYING",
              "TRANSITIONING",
              "PAUSED_PLAYBACK",
              "STOPPED"
            ],
            "gettable": true,
            "settable": false,
            "title": {
              "en": "Playback state",
              "fi": "Toiston tila"
            }
          },
          "playMode": {
            "type": "enum",
            "enum": [
              "NORMAL",
              "REPEAT_ALL",
              "SHUFFLE_NOREPEAT",
              "SHUFFLE"
            ],
            "gettable": true,
            "settable": true,
            "title": {
              "en": "Play mode",
              "fi": "Toistotila"
            }
          },
          "numberOfTracks": {
            "type": "number",
            "gettable": true,
            "settable": false,
            "decimals": 0,
            "minimum": 0,
            "title": {
              "en": "Track count",
              "fi": "Kappaleiden määrä"
            }
          },
          "currentTrack": {
            "type": "number",
            "gettable": true,
            "settable": false,
            "decimals": 0,
            "minimum": 0,
            "title": {
              "en": "Current track",
              "fi": "Nykyinen kappale"
            }
          },
          "currentTrackDuration": {
            "type": "string",
            "gettable": true,
            "settable": false,
            "title": {
              "en": "Track duration",
              "fi": "Kappaleen kesto"
            }
          },
          "currentTrackMetadata": {
            "type": "object",
            "gettable": true,
            "settable": false,
            "title": {
              "en": "Track metadata",
              "fi": "Kappaleen metatiedot"
            }
          }
        },
        "title": {
          "en": "Playback metadata",
          "fi": "Toiston metatiedot"
        }
      },
      "rcData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "volume": {
            "title": {
              "en": "Volume",
              "fi": "Äänenvoimakkuus"
            },
            "type": "number",
            "gettable": true,
            "settable": true,
            "decimals": 0,
            "minimum": 0,
            "maximum": 100,
            "unit": {
              "en": "%",
              "fi": "%"
            },
            "ui": {
              "scale": 100
            }
          },
          "mute": {
            "title": {
              "en": "Mute",
              "fi": "Vaiennus"
            },
            "type": "boolean",
            "gettable": true,
            "settable": true
          },
          "bass": {
            "title": {
              "en": "Bass",
              "fi": "Basso"
            },
            "type": "number",
            "gettable": true,
            "settable": true,
            "decimals": 0,
            "minimum": -10,
            "maximum": 10
          },
          "treble": {
            "title": {
              "en": "Treble",
              "fi": "Diskantti"
            },
            "type": "number",
            "gettable": true,
            "settable": true,
            "decimals": 0,
            "minimum": -10,
            "maximum": 10
          },
          "loudness": {
            "title": {
              "en": "Loudness",
              "fi": "Loudness-korostus"
            },
            "type": "boolean",
            "gettable": true,
            "settable": true
          }
        },
        "title": {
          "en": "Rendering control data",
          "fi": "Toiston säätötiedot"
        }
      }
    }
  },
  "PLAY_MUTE": {
    "title": {
      "en": "Playback mute",
      "fi": "Toiston vaiennus"
    },
    "description": {
      "en": "Mute control for playback audio.",
      "fi": "Toistoäänen vaiennuksen ohjaus."
    },
    "icon": "volumeX",
    "ui": {
      "primary": "playMute",
      "category": "media"
    },
    "state": {
      "playMute": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Playback muted",
          "fi": "Toisto vaiennettu"
        }
      }
    }
  },
  "PLAY_TONE": {
    "title": {
      "en": "Play tone",
      "fi": "Toista merkkiääni"
    },
    "description": {
      "en": "Play a named sound file, such as a ring tone.",
      "fi": "Toista nimetty äänitiedosto, kuten soittoääni."
    },
    "icon": "bellRing",
    "ui": {
      "primary": "playTone",
      "category": "media"
    },
    "state": {
      "playTone": {
        "type": "string",
        "gettable": false,
        "settable": true,
        "title": {
          "en": "Tone to play",
          "fi": "Toistettava merkkiääni"
        }
      }
    }
  },
  "PLAY_VOLUME": {
    "title": {
      "en": "Playback volume",
      "fi": "Toiston äänenvoimakkuus"
    },
    "description": {
      "en": "Playback volume level.",
      "fi": "Toiston äänenvoimakkuuden taso."
    },
    "icon": "speaker",
    "ui": {
      "primary": "playVolume",
      "category": "media"
    },
    "state": {
      "playVolume": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 0,
        "minimum": 0,
        "maximum": 100,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "scale": 100
        },
        "title": {
          "en": "Playback volume",
          "fi": "Toiston äänenvoimakkuus"
        }
      }
    }
  },
  "POWER_SAVE": {
    "title": {
      "en": "Power saving mode",
      "fi": "Virransäästötila"
    },
    "description": {
      "en": "Device-specific power saving state reported by the device.",
      "fi": "Laitteen ilmoittama laitekohtainen virransäästötila."
    },
    "icon": "measurePower",
    "ui": {
      "primary": "powerSave",
      "category": "power"
    },
    "state": {
      "powerSave": {
        "title": {
          "en": "Power saving mode",
          "fi": "Virransäästötila"
        },
        "description": {
          "en": "Current power saving state. Pending means external power was disconnected; temporarily off means power saving is suspended for a periodic connection.",
          "fi": "Nykyinen virransäästötila. Odottaa tarkoittaa, että ulkoinen virta on katkaistu; tilapäisesti pois tarkoittaa, että virransäästö on keskeytetty määräaikaisen yhteyden ajaksi."
        },
        "type": "enum",
        "enum": [
          0,
          1,
          2,
          3
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "0": {
              "en": "Normal",
              "fi": "Normaali"
            },
            "1": {
              "en": "Pending",
              "fi": "Odottaa"
            },
            "2": {
              "en": "In effect",
              "fi": "Käytössä"
            },
            "3": {
              "en": "Temporarily off",
              "fi": "Tilapäisesti pois"
            }
          }
        }
      },
      "powerSaveAt": {
        "title": {
          "en": "Last changed",
          "fi": "Viimeksi muutettu"
        },
        "description": {
          "en": "Timestamp for when the power saving state last changed.",
          "fi": "Aikaleima, jolloin virransäästötila viimeksi muuttui."
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        }
      }
    }
  },
  "POWER_SOURCE": {
    "title": {
      "en": "Power source",
      "fi": "Virtalähde"
    },
    "description": {
      "en": "Active power source reported by the device.",
      "fi": "Laitteen ilmoittama käytössä oleva virtalähde."
    },
    "icon": "activePower",
    "ui": {
      "primary": "powerSource",
      "category": "power"
    },
    "state": {
      "powerSource": {
        "title": {
          "en": "Power source",
          "fi": "Virtalähde"
        },
        "type": "enum",
        "enum": [
          1,
          2
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "1": {
              "en": "Mains power",
              "fi": "Verkkovirta"
            },
            "2": {
              "en": "Battery power",
              "fi": "Akkuvirta"
            }
          }
        }
      },
      "powerSourceAt": {
        "title": {
          "en": "Last changed",
          "fi": "Viimeksi muutettu"
        },
        "description": {
          "en": "Timestamp for when the active power source last changed.",
          "fi": "Aikaleima, jolloin käytössä oleva virtalähde viimeksi muuttui."
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        }
      }
    }
  },
  "PRESSURE": {
    "title": {
      "en": "Air pressure",
      "fi": "Ilmanpaine"
    },
    "description": {
      "en": "Air pressure reported by the device.",
      "fi": "Laitteen ilmoittama ilmanpaine."
    },
    "ui": {
      "primary": "pressure",
      "category": "sensor"
    },
    "state": {
      "pressure": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "Pa",
          "fi": "Pa"
        },
        "title": {
          "en": "Air pressure",
          "fi": "Ilmanpaine"
        }
      }
    }
  },
  "PREVIOUS": {
    "title": {
      "en": "Previous",
      "fi": "Edellinen"
    },
    "description": {
      "en": "Move to the previous media item.",
      "fi": "Siirry edelliseen mediasisältöön."
    },
    "ui": {
      "primary": "previous",
      "category": "media"
    },
    "state": {
      "previous": {
        "title": {
          "en": "Previous item",
          "fi": "Edellinen kohde"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      }
    }
  },
  "PROXIMITY": {
    "title": {
      "en": "Proximity",
      "fi": "Läheisyys"
    },
    "description": {
      "en": "Whether the device is near the hub.",
      "fi": "Onko laite hubin lähellä."
    },
    "ui": {
      "primary": "near",
      "category": "sensor"
    },
    "state": {
      "near": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Near",
              "fi": "Lähellä"
            },
            "false": {
              "en": "Far",
              "fi": "Kaukana"
            }
          },
          "severity": "info"
        },
        "title": {
          "en": "Near hub",
          "fi": "Hubin lähellä"
        }
      },
      "nearAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Proximity time",
          "fi": "Läheisyyden aika"
        }
      }
    }
  },
  "PUSH_NOTIFICATION": {
    "title": {
      "en": "Push notification",
      "fi": "Push-ilmoitus"
    },
    "description": {
      "en": "Device can receive push notifications from the cloud.",
      "fi": "Laite voi vastaanottaa push-ilmoituksia pilvestä."
    },
    "ui": {
      "primary": "sendNotification",
      "category": "connectivity"
    },
    "state": {
      "sendNotification": {
        "title": {
          "en": "Send notification",
          "fi": "Lähetä ilmoitus"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      },
      "msg": {
        "title": {
          "en": "Message text",
          "fi": "Viestin teksti"
        },
        "type": "string",
        "gettable": false,
        "settable": true
      },
      "msgId": {
        "title": {
          "en": "Message id",
          "fi": "Viestin tunniste"
        },
        "type": "string",
        "gettable": false,
        "settable": true
      },
      "sms": {
        "title": {
          "en": "Send also as SMS",
          "fi": "Lähetä myös tekstiviestinä"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      }
    }
  },
  "RAW_MESSAGE": {
    "title": {
      "en": "Raw message",
      "fi": "Raakaviesti"
    },
    "description": {
      "en": "Original raw message received from the device.",
      "fi": "Laitteelta vastaanotettu alkuperäinen raakaviesti."
    },
    "ui": {
      "primary": "datagram",
      "category": "info"
    },
    "state": {
      "datagram": {
        "type": "number[]",
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Raw datagram",
          "fi": "Raakadatagrammi"
        }
      }
    }
  },
  "RC_DIMMER": {
    "title": {
      "en": "Remote dimmer",
      "fi": "Kauko-ohjattava himmennin"
    },
    "description": {
      "en": "Remote control with dimming capability.",
      "fi": "Himmennykseen pystyvä kauko-ohjain."
    },
    "ui": {
      "primary": "button",
      "category": "control"
    },
    "status": {
      "buttons": {
        "title": {
          "en": "Buttons",
          "fi": "Painikkeet"
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    },
    "state": {
      "button": {
        "title": {
          "en": "Button",
          "fi": "Painike"
        },
        "type": "number",
        "gettable": false,
        "settable": false
      },
      "modifiers": {
        "title": {
          "en": "Button modifiers",
          "fi": "Painikkeen lisämääreet"
        },
        "type": "string[]",
        "enum": [
          "longpress",
          "stop",
          "full_on",
          "toggle"
        ],
        "gettable": false,
        "settable": false
      },
      "isOn": {
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        },
        "type": "boolean",
        "gettable": false,
        "settable": false
      },
      "step": {
        "title": {
          "en": "Dimmer step",
          "fi": "Himmennyksen askel"
        },
        "type": "number",
        "gettable": false,
        "settable": false
      },
      "onoff": {
        "title": {
          "en": "On/off command",
          "fi": "Päälle/pois-komento"
        },
        "type": "boolean",
        "gettable": false,
        "settable": false
      },
      "transitionMsec": {
        "title": {
          "en": "Transition time",
          "fi": "Siirtymäaika"
        },
        "type": "number",
        "gettable": false,
        "settable": false,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "duration"
        }
      }
    }
  },
  "READ_SMS": {
    "title": {
      "en": "Receive SMS",
      "fi": "Vastaanota tekstiviesti"
    },
    "description": {
      "en": "Hub can receive SMS messages.",
      "fi": "Hubi voi vastaanottaa tekstiviestejä."
    },
    "ui": {
      "category": "connectivity"
    }
  },
  "RECORD_AUDIO": {
    "title": {
      "en": "Record audio",
      "fi": "Tallenna ääntä"
    },
    "description": {
      "en": "Camera audio recording support.",
      "fi": "Kameran äänitallennuksen tuki."
    },
    "ui": {
      "primary": "audioParams",
      "category": "media"
    },
    "status": {
      "audioParams": {
        "title": {
          "en": "Audio parameters",
          "fi": "Ääniparametrit"
        },
        "description": {
          "en": "Audio payload, encoding and format metadata for camera media profiles.",
          "fi": "Kameran mediaprofiilien äänen payload-, koodaus- ja formaattitiedot."
        },
        "type": "object[]",
        "gettable": true,
        "settable": false
      }
    }
  },
  "RECORD_VIDEO": {
    "title": {
      "en": "Record video",
      "fi": "Tallenna videota"
    },
    "description": {
      "en": "Camera video recording support.",
      "fi": "Kameran videotallennuksen tuki."
    },
    "ui": {
      "primary": "recording",
      "category": "media",
      "hidden": true
    },
    "state": {
      "recording": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Recording",
          "fi": "Tallennus"
        }
      }
    }
  },
  "REC_MUTE": {
    "title": {
      "en": "Recording mute",
      "fi": "Tallennuksen vaiennus"
    },
    "description": {
      "en": "Mute control for recording or capture audio.",
      "fi": "Tallennus- tai kaappausäänen vaiennuksen ohjaus."
    },
    "icon": "micOff",
    "ui": {
      "primary": "recMute",
      "category": "media"
    },
    "state": {
      "recMute": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Recording muted",
          "fi": "Tallennus vaiennettu"
        }
      }
    }
  },
  "REC_VOLUME": {
    "title": {
      "en": "Recording volume",
      "fi": "Tallennuksen äänenvoimakkuus"
    },
    "description": {
      "en": "Recording or capture volume level.",
      "fi": "Tallennuksen tai kaappauksen äänenvoimakkuuden taso."
    },
    "icon": "applianceMicro",
    "ui": {
      "primary": "recVolume",
      "category": "media"
    },
    "state": {
      "recVolume": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 0,
        "minimum": 0,
        "maximum": 100,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "scale": 100
        },
        "title": {
          "en": "Recording volume",
          "fi": "Tallennuksen äänenvoimakkuus"
        }
      }
    }
  },
  "REMOTE_CONTROL": {
    "title": {
      "en": "Remote control",
      "fi": "Kauko-ohjain"
    },
    "description": {
      "en": "Remote control button events.",
      "fi": "Kauko-ohjaimen painiketapahtumat."
    },
    "ui": {
      "primary": "button",
      "category": "control"
    },
    "state": {
      "button": {
        "type": "number",
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Button",
          "fi": "Painike"
        }
      },
      "modifiers": {
        "type": "string[]",
        "enum": [
          "longpress",
          "stop",
          "full_on",
          "toggle"
        ],
        "gettable": false,
        "settable": false,
        "title": {
          "en": "Button modifiers",
          "fi": "Painikkeen lisämääreet"
        }
      }
    }
  },
  "ROAMING": {
    "title": {
      "en": "Roaming device",
      "fi": "Roaming-laite"
    },
    "description": {
      "en": "Device keeps the same identity when paired to another hub.",
      "fi": "Laite säilyttää saman tunnisteen, kun se liitetään toiseen hubiin."
    },
    "ui": {
      "primary": "autoPaired",
      "category": "connectivity"
    },
    "state": {
      "autoPaired": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Paired",
              "fi": "Paritettu"
            },
            "false": {
              "en": "Unpaired",
              "fi": "Ei paritettu"
            }
          }
        },
        "title": {
          "en": "Automatically paired",
          "fi": "Automaattisesti paritettu"
        }
      }
    }
  },
  "RSSI": {
    "title": {
      "en": "Signal strength",
      "fi": "Signaalin voimakkuus"
    },
    "description": {
      "en": "Received signal strength indicator for radio communication.",
      "fi": "Radioviestinnän vastaanotetun signaalin voimakkuus."
    },
    "ui": {
      "primary": "rssi",
      "category": "connectivity"
    },
    "state": {
      "rssi": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Signal strength",
          "fi": "Signaalin voimakkuus"
        }
      }
    }
  },
  "RW_VALUE": {
    "title": {
      "en": "Read/write value",
      "fi": "Luettava ja kirjoitettava arvo"
    },
    "description": {
      "en": "Generic value that can be read from and written to the device.",
      "fi": "Yleinen arvo, jota voidaan lukea laitteelta ja kirjoittaa laitteelle."
    },
    "ui": {
      "primary": "value",
      "category": "control"
    },
    "state": {
      "value": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Value",
          "fi": "Arvo"
        }
      }
    }
  },
  "SEEK": {
    "title": {
      "en": "Seek",
      "fi": "Siirry kohtaan"
    },
    "description": {
      "en": "Seek within media playback.",
      "fi": "Siirry kohtaan median toistossa."
    },
    "ui": {
      "primary": "trackNumber",
      "category": "media"
    },
    "state": {
      "trackNumber": {
        "title": {
          "en": "Track number",
          "fi": "Kappalenumero"
        },
        "type": "number",
        "gettable": false,
        "settable": true,
        "decimals": 0,
        "minimum": 1
      }
    }
  },
  "SELF_MOTION": {
    "title": {
      "en": "Self motion",
      "fi": "Laitteen oma liike"
    },
    "description": {
      "en": "Device detects its own movement.",
      "fi": "Laite tunnistaa oman liikkeensä."
    },
    "ui": {
      "primary": "selfMotion",
      "category": "sensor"
    },
    "state": {
      "selfMotion": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Motion",
              "fi": "Liikettä"
            },
            "false": {
              "en": "Still",
              "fi": "Paikallaan"
            }
          },
          "severity": "info"
        },
        "title": {
          "en": "Self motion detected",
          "fi": "Laitteen oma liike havaittu"
        }
      },
      "lastSelfMotion": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Last self motion time",
          "fi": "Viimeisin oma liike"
        }
      }
    }
  },
  "SEND_SMS": {
    "title": {
      "en": "Send SMS",
      "fi": "Lähetä tekstiviesti"
    },
    "description": {
      "en": "Hub can send SMS messages.",
      "fi": "Hubi voi lähettää tekstiviestejä."
    },
    "ui": {
      "primary": "sendSms",
      "category": "connectivity"
    },
    "state": {
      "sendSms": {
        "title": {
          "en": "Send SMS",
          "fi": "Lähetä tekstiviesti"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      },
      "msg": {
        "title": {
          "en": "Message text",
          "fi": "Viestin teksti"
        },
        "type": "string",
        "gettable": false,
        "settable": true
      },
      "msgId": {
        "title": {
          "en": "Message id",
          "fi": "Viestin tunniste"
        },
        "type": "string",
        "gettable": false,
        "settable": true
      },
      "extraSms": {
        "title": {
          "en": "Additional recipients",
          "fi": "Lisävastaanottajat"
        },
        "type": "string[]",
        "gettable": false,
        "settable": true
      }
    }
  },
  "SETPOINT_TEMPERATURE": {
    "title": {
      "en": "Temperature setpoint",
      "fi": "Lämpötilan asetusarvo"
    },
    "description": {
      "en": "Temperature setpoint value and timestamp.",
      "fi": "Lämpötilan asetusarvo ja asetuksen ajankohta."
    },
    "ui": {
      "primary": "setpointTemp",
      "category": "control"
    },
    "state": {
      "setpointTemp": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Temperature setpoint",
          "fi": "Lämpötilan asetusarvo"
        }
      },
      "setpointTempAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Setpoint time",
          "fi": "Asetusarvon aika"
        }
      }
    }
  },
  "SHUTTER": {
    "title": {
      "en": "Covering control",
      "fi": "Verho-ohjaus"
    },
    "description": {
      "en": "Curtain, blind, shutter, or covering control.",
      "fi": "Verhon, kaihtimen, rullaoven tai muun peitteen ohjaus."
    },
    "ui": {
      "primary": "motorStatus",
      "category": "control"
    },
    "state": {
      "motorStatus": {
        "type": "enum",
        "enum": [
          -1,
          0,
          1
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "0": {
              "en": "Stopped",
              "fi": "Pysähtynyt"
            },
            "1": {
              "en": "Up",
              "fi": "Ylös"
            },
            "-1": {
              "en": "Down",
              "fi": "Alas"
            }
          }
        },
        "title": {
          "en": "Motor status",
          "fi": "Moottorin tila"
        }
      },
      "calibrating": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Calibrating",
          "fi": "Kalibrointi"
        }
      },
      "isOn": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        }
      }
    }
  },
  "SIGNAL": {
    "title": {
      "en": "Signal",
      "fi": "Signaali"
    },
    "description": {
      "en": "Generic signal value, for example a BACnet binary value.",
      "fi": "Yleinen signaaliarvo, esimerkiksi BACnet-binääriarvo."
    },
    "icon": "power",
    "ui": {
      "primary": "isOn",
      "category": "control"
    },
    "state": {
      "isOn": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "true": {
              "en": "On",
              "fi": "Päällä"
            },
            "false": {
              "en": "Off",
              "fi": "Pois päältä"
            }
          }
        },
        "title": {
          "en": "On/off state",
          "fi": "Päälle/pois-tila"
        }
      }
    }
  },
  "SIM_PIN": {
    "title": {
      "en": "SIM card",
      "fi": "SIM-kortti"
    },
    "description": {
      "en": "SIM card status and PIN/PUK/APN configuration.",
      "fi": "SIM-kortin tila sekä PIN-, PUK- ja APN-asetukset."
    },
    "ui": {
      "primary": "pin",
      "category": "connectivity"
    },
    "state": {
      "simStatus": {
        "type": "enum",
        "enum": [
          0,
          1,
          2,
          3,
          4,
          10,
          11
        ],
        "gettable": true,
        "settable": false,
        "title": {
          "en": "SIM status",
          "fi": "SIM-kortin tila"
        }
      },
      "pinAttempts": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "PIN attempts left",
          "fi": "PIN-yrityksiä jäljellä"
        }
      },
      "pukAttempts": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "PUK attempts left",
          "fi": "PUK-yrityksiä jäljellä"
        }
      },
      "pin": {
        "type": "string",
        "gettable": false,
        "settable": true,
        "title": {
          "en": "PIN code",
          "fi": "PIN-koodi"
        }
      },
      "puk": {
        "type": "string",
        "gettable": false,
        "settable": true,
        "title": {
          "en": "PUK code",
          "fi": "PUK-koodi"
        }
      },
      "apn": {
        "type": "string",
        "gettable": false,
        "settable": true,
        "title": {
          "en": "APN",
          "fi": "APN"
        }
      }
    }
  },
  "SIREN": {
    "title": {
      "en": "Siren",
      "fi": "Sireeni"
    },
    "description": {
      "en": "Siren or warning sound control.",
      "fi": "Sireenin tai varoitusäänen ohjaus."
    },
    "ui": {
      "primary": "sirenOn",
      "category": "alarm"
    },
    "state": {
      "sirenOn": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "On",
              "fi": "Päällä"
            },
            "false": {
              "en": "Off",
              "fi": "Pois päältä"
            }
          },
          "severity": "alarm"
        },
        "title": {
          "en": "Siren on",
          "fi": "Sireeni päällä"
        }
      },
      "sirenAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Siren time",
          "fi": "Sireenin aika"
        }
      },
      "sirenStartAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Siren start time",
          "fi": "Sireenin alkamisaika"
        }
      },
      "mutedForMs": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "duration"
        },
        "title": {
          "en": "Muted duration",
          "fi": "Vaiennuksen kesto"
        }
      }
    }
  },
  "SMOKE": {
    "title": {
      "en": "Smoke alarm",
      "fi": "Palovaroitin"
    },
    "description": {
      "en": "Smoke or fire alarm sensing state.",
      "fi": "Savu- tai palohälytyksen tunnistustila."
    },
    "ui": {
      "primary": "alert",
      "category": "alarm"
    },
    "state": {
      "alert": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Smoke",
              "fi": "Savua"
            },
            "false": {
              "en": "Clear",
              "fi": "Ei hälytystä"
            }
          },
          "severity": "alarm"
        },
        "title": {
          "en": "Alert active",
          "fi": "Hälytys aktiivinen"
        }
      },
      "alertAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Alert time",
          "fi": "Hälytysaika"
        }
      },
      "alertStartAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Alert start time",
          "fi": "Hälytyksen alkamisaika"
        }
      }
    }
  },
  "STARTUP_VALS": {
    "title": {
      "en": "Startup values",
      "fi": "Käynnistysarvot"
    },
    "description": {
      "en": "Device can restore previous settings after a power cycle.",
      "fi": "Laite voi palauttaa aiemmat asetukset virtakatkon jälkeen."
    },
    "ui": {
      "primary": "enable",
      "category": "control"
    },
    "state": {
      "enable": {
        "title": {
          "en": "Restore startup values",
          "fi": "Palauta käynnistysarvot"
        },
        "type": "boolean",
        "gettable": false,
        "settable": true
      }
    }
  },
  "STATE_MACHINE": {
    "title": {
      "en": "State machine",
      "fi": "Tilakone"
    },
    "description": {
      "en": "Device has multiple possible named states.",
      "fi": "Laitteella on useita mahdollisia nimettyjä tiloja."
    },
    "ui": {
      "primary": "currentState",
      "category": "control"
    },
    "state": {
      "currentState": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Current state",
          "fi": "Nykyinen tila"
        }
      },
      "currentStateAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Current state time",
          "fi": "Nykyisen tilan aika"
        }
      }
    }
  },
  "STOP": {
    "title": {
      "en": "Stop",
      "fi": "Pysäytä"
    },
    "description": {
      "en": "Stop media playback.",
      "fi": "Pysäytä median toisto."
    },
    "ui": {
      "primary": "state",
      "category": "media"
    },
    "state": {
      "state": {
        "title": {
          "en": "Playback state",
          "fi": "Toiston tila"
        },
        "type": "enum",
        "enum": [
          "PLAYING",
          "TRANSITIONING",
          "PAUSED_PLAYBACK",
          "STOPPED"
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "PLAYING": {
              "en": "Playing",
              "fi": "Toistaa"
            },
            "TRANSITIONING": {
              "en": "Transitioning",
              "fi": "Siirtymässä"
            },
            "PAUSED_PLAYBACK": {
              "en": "Paused",
              "fi": "Tauolla"
            },
            "STOPPED": {
              "en": "Stopped",
              "fi": "Pysähtynyt"
            }
          }
        }
      }
    }
  },
  "TEMPERATURE": {
    "title": {
      "en": "Temperature",
      "fi": "Lämpötila"
    },
    "description": {
      "en": "Temperature in degrees Celsius.",
      "fi": "Lämpötila Celsius-asteina."
    },
    "ui": {
      "primary": "temperature",
      "category": "sensor"
    },
    "state": {
      "temperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "required": true,
        "decimals": 2,
        "minimum": -273.15,
        "maximum": 5600,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Temperature",
          "fi": "Lämpötila"
        }
      }
    }
  },
  "TILT": {
    "title": {
      "en": "Tilt angle",
      "fi": "Kallistuskulma"
    },
    "description": {
      "en": "Curtain, blind, or covering tilt angle.",
      "fi": "Verhon, kaihtimen tai peitteen kallistuskulma."
    },
    "icon": "shadeStillDown",
    "ui": {
      "primary": "tiltPct",
      "category": "control"
    },
    "state": {
      "tiltPct": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "minimum": 0,
        "maximum": 100,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "title": {
          "en": "Tilt angle",
          "fi": "Kallistuskulma"
        }
      }
    }
  },
  "TRANSITION": {
    "title": {
      "en": "Transition time",
      "fi": "Siirtymäaika"
    },
    "description": {
      "en": "Transition time for executing a light state change.",
      "fi": "Valon tilamuutoksen suorittamiseen käytettävä siirtymäaika."
    },
    "ui": {
      "primary": "transitionMsec",
      "category": "control"
    },
    "state": {
      "transitionMsec": {
        "type": "number",
        "gettable": false,
        "settable": true,
        "minimum": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "duration"
        },
        "title": {
          "en": "Transition time",
          "fi": "Siirtymäaika"
        }
      }
    }
  },
  "TREBLE": {
    "title": {
      "en": "Treble",
      "fi": "Diskantti"
    },
    "description": {
      "en": "Treble adjustment for a media renderer.",
      "fi": "Medialaitteen diskanttisäätö."
    },
    "ui": {
      "primary": "rcData.treble",
      "category": "media"
    },
    "state": {
      "rcData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "treble": {
            "type": "number",
            "gettable": true,
            "settable": true,
            "decimals": 0,
            "minimum": -10,
            "maximum": 10,
            "title": {
              "en": "Treble",
              "fi": "Diskantti"
            }
          }
        },
        "title": {
          "en": "Rendering control data",
          "fi": "Toiston säätötiedot"
        }
      }
    }
  },
  "TWILIGHT": {
    "title": {
      "en": "Twilight",
      "fi": "Hämärä"
    },
    "description": {
      "en": "Whether the sensor detects darkness or twilight.",
      "fi": "Tunnistaako anturi hämärän tai pimeyden."
    },
    "icon": "twilightSensor",
    "ui": {
      "primary": "twilight",
      "category": "sensor"
    },
    "state": {
      "twilight": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Dark",
              "fi": "Pimeä"
            },
            "false": {
              "en": "Light",
              "fi": "Valoisaa"
            }
          },
          "severity": "info"
        },
        "title": {
          "en": "Twilight detected",
          "fi": "Hämärä havaittu"
        }
      },
      "twilightStart": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Twilight start time",
          "fi": "Hämärän alkamisaika"
        }
      },
      "twilightStop": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Twilight stop time",
          "fi": "Hämärän päättymisaika"
        }
      },
      "twilightThreshold": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "Lux",
          "fi": "Lux"
        },
        "title": {
          "en": "Twilight threshold",
          "fi": "Hämärän raja-arvo"
        }
      }
    }
  },
  "UPGRADE": {
    "title": {
      "en": "Firmware upgrade",
      "fi": "Laiteohjelmiston päivitys"
    },
    "description": {
      "en": "Device supports firmware upgrade.",
      "fi": "Laite tukee laiteohjelmiston päivitystä."
    },
    "ui": {
      "primary": "upgradeStatus",
      "category": "info",
      "hidden": true
    },
    "state": {
      "upgradeStatus": {
        "title": {
          "en": "Upgrade status",
          "fi": "Päivityksen tila"
        },
        "type": "enum",
        "enum": [
          "OK",
          "AVAILABLE",
          "ENQUEUED",
          "RUNNING",
          "BOOTING"
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "OK": {
              "en": "Up to date",
              "fi": "Ajan tasalla"
            },
            "AVAILABLE": {
              "en": "Available",
              "fi": "Saatavilla"
            },
            "ENQUEUED": {
              "en": "Queued",
              "fi": "Jonossa"
            },
            "RUNNING": {
              "en": "Running",
              "fi": "Käynnissä"
            },
            "BOOTING": {
              "en": "Booting",
              "fi": "Käynnistyy"
            }
          }
        }
      }
    }
  },
  "USER_PRESENCE": {
    "title": {
      "en": "User presence",
      "fi": "Käyttäjän läsnäolo"
    },
    "description": {
      "en": "Device can report user presence.",
      "fi": "Laite voi ilmoittaa käyttäjän läsnäolon."
    },
    "ui": {
      "primary": "reachable",
      "category": "sensor"
    },
    "state": {
      "reachable": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Reachable",
          "fi": "Tavoitettavissa"
        }
      }
    }
  },
  "VALVE": {
    "title": {
      "en": "Valve opening",
      "fi": "Venttiilin avaus"
    },
    "description": {
      "en": "Opening percentage for a controllable valve.",
      "fi": "Ohjattavan venttiilin avausprosentti."
    },
    "ui": {
      "primary": "openPct",
      "category": "control"
    },
    "state": {
      "openPct": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 2,
        "minimum": 0,
        "maximum": 1,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "ui": {
          "scale": 100,
          "format": "percent"
        },
        "title": {
          "en": "Opening",
          "fi": "Avaus"
        }
      },
      "openPctAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Opening time",
          "fi": "Avauksen aika"
        }
      }
    }
  },
  "VOC": {
    "title": {
      "en": "VOC concentration",
      "fi": "VOC-pitoisuus"
    },
    "description": {
      "en": "Volatile organic compound concentration.",
      "fi": "Haihtuvien orgaanisten yhdisteiden pitoisuus."
    },
    "ui": {
      "primary": "vocPpm",
      "category": "sensor"
    },
    "state": {
      "vocPpm": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "ppm",
          "fi": "ppm"
        },
        "title": {
          "en": "VOC concentration",
          "fi": "VOC-pitoisuus"
        }
      }
    }
  },
  "VOICE_CALL": {
    "title": {
      "en": "Voice call",
      "fi": "Äänipuhelu"
    },
    "description": {
      "en": "Voice call status and call timing information.",
      "fi": "Äänipuhelun tila ja ajoitustiedot."
    },
    "ui": {
      "primary": "callIncoming",
      "category": "media"
    },
    "state": {
      "callState": {
        "type": "enum",
        "enum": [
          1,
          2,
          3,
          4,
          5
        ],
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Call state",
          "fi": "Puhelun tila"
        }
      },
      "callToNumber": {
        "type": "string",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Number to call",
          "fi": "Soitettava numero"
        }
      },
      "callFromNumber": {
        "type": "string",
        "gettable": true,
        "settable": false,
        "title": {
          "en": "Caller number",
          "fi": "Soittajan numero"
        }
      },
      "callAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Call start time",
          "fi": "Puhelun alkamisaika"
        }
      },
      "callStopAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Call end time",
          "fi": "Puhelun päättymisaika"
        }
      },
      "callIncoming": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Incoming",
              "fi": "Saapuva"
            },
            "false": {
              "en": "Idle",
              "fi": "Valmiustila"
            }
          },
          "severity": "info"
        },
        "title": {
          "en": "Incoming call",
          "fi": "Saapuva puhelu"
        }
      }
    }
  },
  "VOICE_CALL_AUTOANSWER": {
    "title": {
      "en": "Automatic call answer",
      "fi": "Puhelun automaattivastaus"
    },
    "description": {
      "en": "Automatic voice call answering settings.",
      "fi": "Äänipuheluiden automaattisen vastaamisen asetukset."
    },
    "ui": {
      "primary": "callAutoAnswerUntil",
      "category": "media"
    },
    "state": {
      "callAutoAnswerFrom": {
        "type": "string[]",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Allowed callers",
          "fi": "Sallitut soittajat"
        }
      },
      "callAutoAnswerUntil": {
        "type": "number",
        "gettable": true,
        "settable": true,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Auto-answer until",
          "fi": "Automaattivastaus päättyy"
        }
      }
    }
  },
  "VOLUME": {
    "title": {
      "en": "Volume",
      "fi": "Äänenvoimakkuus"
    },
    "description": {
      "en": "Output volume level.",
      "fi": "Ulostulon äänenvoimakkuuden taso."
    },
    "icon": "stereoSpeakers",
    "ui": {
      "primary": "rcData.volume",
      "category": "media"
    },
    "state": {
      "rcData": {
        "type": "object",
        "gettable": true,
        "settable": true,
        "properties": {
          "volume": {
            "type": "number",
            "gettable": true,
            "settable": true,
            "decimals": 0,
            "minimum": 0,
            "maximum": 100,
            "unit": {
              "en": "%",
              "fi": "%"
            },
            "ui": {
              "scale": 100
            },
            "title": {
              "en": "Volume",
              "fi": "Äänenvoimakkuus"
            }
          }
        },
        "title": {
          "en": "Rendering control data",
          "fi": "Toiston säätötiedot"
        }
      }
    }
  },
  "VU": {
    "title": {
      "en": "Ventilation unit",
      "fi": "Ilmanvaihtokone"
    },
    "description": {
      "en": "Ventilation unit mode and indoor-air measurements.",
      "fi": "Ilmanvaihtokoneen tila ja sisäilman mittaukset."
    },
    "ui": {
      "primary": "mode",
      "category": "control"
    },
    "state": {
      "mode": {
        "type": "enum",
        "enum": [
          0,
          1,
          2,
          3,
          4
        ],
        "gettable": true,
        "settable": true,
        "ui": {
          "labels": {
            "0": {
              "en": "Stopped",
              "fi": "Pysähtynyt"
            },
            "1": {
              "en": "Traveling",
              "fi": "Matkoilla"
            },
            "2": {
              "en": "Away",
              "fi": "Poissa"
            },
            "3": {
              "en": "Home",
              "fi": "Kotona"
            },
            "4": {
              "en": "Boost",
              "fi": "Tehostus"
            }
          }
        },
        "title": {
          "en": "Mode",
          "fi": "Tila"
        }
      },
      "freshTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Outdoor air temperature",
          "fi": "Ulkoilman lämpötila"
        }
      },
      "supplyTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Supply air temperature",
          "fi": "Tuloilman lämpötila"
        }
      },
      "extractTemperature": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 2,
        "unit": {
          "en": "°C",
          "fi": "°C"
        },
        "title": {
          "en": "Extract air temperature",
          "fi": "Poistoilman lämpötila"
        }
      },
      "humidity": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "minimum": 0,
        "maximum": 100,
        "unit": {
          "en": "%",
          "fi": "%"
        },
        "title": {
          "en": "Humidity",
          "fi": "Ilmankosteus"
        }
      },
      "co2Ppm": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "ppm",
          "fi": "ppm"
        },
        "title": {
          "en": "Carbon dioxide",
          "fi": "Hiilidioksidi"
        }
      },
      "vocPpm": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "unit": {
          "en": "ppm",
          "fi": "ppm"
        },
        "title": {
          "en": "VOC concentration",
          "fi": "VOC-pitoisuus"
        }
      }
    }
  },
  "VU_FN_FIREPLACE": {
    "title": {
      "en": "Fireplace function",
      "fi": "Takkatoiminto"
    },
    "description": {
      "en": "Ventilation function that increases indoor air pressure while a fireplace is burning.",
      "fi": "Ilmanvaihdon toiminto, joka kasvattaa sisäilman painetta takan käytön aikana."
    },
    "ui": {
      "primary": "fn_fireplace",
      "category": "control"
    },
    "state": {
      "fn_fireplace": {
        "type": "boolean",
        "gettable": true,
        "settable": true,
        "title": {
          "en": "Fn_fireplace",
          "fi": "Fn_fireplace"
        }
      }
    }
  },
  "WEARABLE": {
    "title": {
      "en": "Wearable",
      "fi": "Puettava laite"
    },
    "description": {
      "en": "Whether a wearable device is currently worn.",
      "fi": "Onko puettava laite parhaillaan käytössä."
    },
    "ui": {
      "primary": "worn",
      "category": "sensor"
    },
    "state": {
      "worn": {
        "type": "boolean",
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "true": {
              "en": "Worn",
              "fi": "Käytössä"
            },
            "false": {
              "en": "Not worn",
              "fi": "Ei käytössä"
            }
          }
        },
        "title": {
          "en": "Worn",
          "fi": "Käytössä"
        }
      },
      "wornAt": {
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "unit": {
          "en": "ms",
          "fi": "ms"
        },
        "ui": {
          "format": "datetime"
        },
        "title": {
          "en": "Wear state time",
          "fi": "Käyttötilan aika"
        }
      }
    }
  },
  "ZGB": {
    "title": {
      "en": "Zigbee",
      "fi": "Zigbee"
    },
    "description": {
      "en": "Zigbee device capability.",
      "fi": "Zigbee-laitteen ominaisuus."
    },
    "ui": {
      "category": "connectivity",
      "hidden": true
    },
    "status": {
      "nodedesc": {
        "title": {
          "en": "Node descriptor",
          "fi": "Solmun kuvaus"
        },
        "type": "object",
        "gettable": true,
        "settable": false
      },
      "endpoints": {
        "title": {
          "en": "Endpoints",
          "fi": "Päätepisteet"
        },
        "type": "object",
        "gettable": true,
        "settable": false
      },
      "eui64": {
        "title": {
          "en": "EUI-64 address",
          "fi": "EUI-64-osoite"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "nwk_addr": {
        "title": {
          "en": "Network address",
          "fi": "Verkko-osoite"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      }
    }
  },
  "ZW": {
    "title": {
      "en": "Z-Wave",
      "fi": "Z-Wave"
    },
    "description": {
      "en": "Z-Wave device capability.",
      "fi": "Z-Wave-laitteen ominaisuus."
    },
    "ui": {
      "category": "connectivity",
      "hidden": true
    },
    "status": {
      "nodeId": {
        "title": {
          "en": "Node id",
          "fi": "Solmun tunniste"
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0,
        "minimum": 0
      },
      "status": {
        "title": {
          "en": "Node status",
          "fi": "Solmun tila"
        },
        "type": "enum",
        "enum": [
          0,
          1,
          2
        ],
        "gettable": true,
        "settable": false,
        "ui": {
          "labels": {
            "0": {
              "en": "OK",
              "fi": "OK"
            },
            "1": {
              "en": "Not responding",
              "fi": "Ei vastaa"
            },
            "2": {
              "en": "Unknown",
              "fi": "Tuntematon"
            }
          }
        }
      },
      "manufacturer_id": {
        "title": {
          "en": "Manufacturer id",
          "fi": "Valmistajan tunniste"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "product_id": {
        "title": {
          "en": "Product id",
          "fi": "Tuotteen tunniste"
        },
        "type": "string",
        "gettable": true,
        "settable": false
      },
      "securityKeys": {
        "title": {
          "en": "Security keys",
          "fi": "Turva-avaimet"
        },
        "type": "number",
        "gettable": true,
        "settable": false,
        "decimals": 0
      }
    }
  }
}
