feat(measurements): accept indoor CO2, temperature and humidity

Room climate from a home automation system gets three types of its own:
INDOOR_CO2 (ppm), INDOOR_TEMPERATURE (celsius, shown in Fahrenheit for
imperial readers) and INDOOR_HUMIDITY (percent). They arrive through the
existing ingest token (measurements:write, source EXTERNAL), sit in the
environment cluster beside daylight, and the daily rollup carries their
mean, low and high like any spot reading. They never mix with the body
temperatures or with the outdoor environment channels.

The Home Assistant page documents the three types, a rest_command that
sends a room as one request, a single-room automation, and an
importable blueprint (docs/integrations/blueprints) that skips sensors
reporting unknown or non-numeric states, converts Fahrenheit, and
stamps readings to the minute so a retried push is refused rather than
written twice.
This commit is contained in:
Marc-André Bombeck committed 2026-10-21 20:26:15 +02:00
1 parent b76826a5f8
commit cc8ea3dfbb
32 files changed
+463 -9

No files matched your search

+30 -3
View File
@@ -4321,6 +4321,9 @@ paths:
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- AFIB_BURDEN
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
- in: query
name: from
schema:
@@ -26000,7 +26003,7 @@ components:
type: number
const: 2
leaves:
maxItems: 101
maxItems: 104
type: array
items:
type: string
@@ -26060,7 +26063,7 @@ components:
type: number
const: 2
leaves:
maxItems: 101
maxItems: 104
type: array
items:
type: string
@@ -26901,6 +26904,9 @@ components:
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- AFIB_BURDEN
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
value:
type: number
measuredAt:
@@ -28588,6 +28594,9 @@ components:
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- AFIB_BURDEN
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
biomarkerId:
type: string
minLength: 1
@@ -29087,7 +29096,7 @@ components:
type: number
const: 2
leaves:
maxItems: 101
maxItems: 104
type: array
items:
type: string
@@ -30264,6 +30273,9 @@ components:
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- AFIB_BURDEN
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
description: DB-stored measurement category. v1.4.23 added 7 Apple Health values (HRV, resting HR, active energy,
flights, walking/running distance, VO2 max, body temperature).
InsightsSettingsPutRequest:
@@ -39046,6 +39058,9 @@ components:
- STAND_HOURS
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
- AFIB_BURDEN
value:
type: number
@@ -39792,6 +39807,9 @@ components:
- STAND_HOURS
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
- AFIB_BURDEN
- type: "null"
biomarkerName:
@@ -42273,6 +42291,9 @@ components:
- STAND_HOURS
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
- AFIB_BURDEN
dateKey:
type: string
@@ -43457,6 +43478,9 @@ components:
- STAND_HOURS
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
- AFIB_BURDEN
- type: "null"
intervalDays:
@@ -43675,6 +43699,9 @@ components:
- STAND_HOURS
- MINDFUL_MINUTES
- STATE_OF_MIND_VALENCE
- INDOOR_CO2
- INDOOR_TEMPERATURE
- INDOOR_HUMIDITY
- AFIB_BURDEN
metricSlot:
type: