diff --git a/README.md b/README.md index 253bba6..21ebac1 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ The following devices are currently supported: | Gerät | API-Type | Status | |----------------------|---------------------|-----------------------------------------| | gatebox | gatebox | ✅ Tested | -| multisensor | multisensor | up to 4 sensors per device are supported | +| multisensor | multisensor | up to 8 sensors per device are supported | | tempSensor PRO | multisensor | ❓ beta, not tested with real Hardware | | tempSensorAC | multisensor | ❓ beta, not tested with real Hardware | | humiditySensor | multisensor | ❓ beta, not tested with real Hardware | diff --git a/lib/multisensor.js b/lib/multisensor.js index 28ef254..cb2ce05 100644 --- a/lib/multisensor.js +++ b/lib/multisensor.js @@ -125,7 +125,7 @@ const datapoints = { 'multisensor#multiSensor.sensors[0].id': { path: 'multiSensor.sensors.0.id', type: 'state', - common: { name: 'ID of internal sensor', type: 'string', role: 'text', read: true, write: false }, + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, }, 'multisensor#multiSensor.sensors[0].iconSet': { path: 'multiSensor.sensors.0.iconSet', @@ -191,7 +191,7 @@ const datapoints = { 'multisensor#multiSensor.sensors[1].id': { path: 'multiSensor.sensors.1.id', type: 'state', - common: { name: 'ID of internal sensor', type: 'string', role: 'text', read: true, write: false }, + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, }, 'multisensor#multiSensor.sensors[1].iconSet': { path: 'multiSensor.sensors.1.iconSet', @@ -257,7 +257,7 @@ const datapoints = { 'multisensor#multiSensor.sensors[2].id': { path: 'multiSensor.sensors.2.id', type: 'state', - common: { name: 'ID of internal sensor', type: 'string', role: 'text', read: true, write: false }, + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, }, 'multisensor#multiSensor.sensors[2].iconSet': { path: 'multiSensor.sensors.2.iconSet', @@ -323,7 +323,7 @@ const datapoints = { 'multisensor#multiSensor.sensors[3].id': { path: 'multiSensor.sensors.3.id', type: 'state', - common: { name: 'ID of internal sensor', type: 'string', role: 'text', read: true, write: false }, + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, }, 'multisensor#multiSensor.sensors[3].iconSet': { path: 'multiSensor.sensors.3.iconSet', @@ -335,6 +335,270 @@ const datapoints = { type: 'state', common: { name: 'Personalized name of the sensor', type: 'string', role: 'text', read: true, write: false }, }, + 'multisensor#multiSensor.sensors[4].elapsedTimeS': { + path: 'multiSensor.sensors.4.elapsedTimeS', + type: 'state', + common: { + name: 'Time in seconds that has elapsed since last valid measurement occurred, where -1 = Error, 0 = Fresh data', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[4].state': { + path: 'multiSensor.sensors.4.state', + type: 'state', + common: { + name: 'Status of sensor, where 1 = Measure in progress, 2 = Active Mode, 3 = Error', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[4].trend': { + path: 'multiSensor.sensors.4.trend', + type: 'state', + common: { + name: 'Trend of measured data, where 0 = no data, 1 = sidewave, 2 = Downward, 3 = Upward', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[4].value': { + path: 'multiSensor.sensors.4.value', + factor: 0.01, + type: 'state', + common: { + name: 'Value of measured data, where null = Error and Temperature in Celsius degrees.', + type: 'number', + role: 'value.temperature', + read: true, + write: false, + unit: '°C', + }, + }, + 'multisensor#multiSensor.sensors[4].type': { + path: 'multiSensor.sensors.4.type', + type: 'state', + common: { name: 'Type of measured value', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[4].id': { + path: 'multiSensor.sensors.4.id', + type: 'state', + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[4].iconSet': { + path: 'multiSensor.sensors.4.iconSet', + type: 'state', + common: { name: 'Type of icon', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[4].name': { + path: 'multiSensor.sensors.4.name', + type: 'state', + common: { name: 'Personalized name of the sensor', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[5].elapsedTimeS': { + path: 'multiSensor.sensors.5.elapsedTimeS', + type: 'state', + common: { + name: 'Time in seconds that has elapsed since last valid measurement occurred, where -1 = Error, 0 = Fresh data', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[5].state': { + path: 'multiSensor.sensors.5.state', + type: 'state', + common: { + name: 'Status of sensor, where 1 = Measure in progress, 2 = Active Mode, 3 = Error', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[5].trend': { + path: 'multiSensor.sensors.5.trend', + type: 'state', + common: { + name: 'Trend of measured data, where 0 = no data, 1 = sidewave, 2 = Downward, 3 = Upward', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[5].value': { + path: 'multiSensor.sensors.5.value', + factor: 0.01, + type: 'state', + common: { + name: 'Value of measured data, where null = Error and Temperature in Celsius degrees.', + type: 'number', + role: 'value.temperature', + read: true, + write: false, + unit: '°C', + }, + }, + 'multisensor#multiSensor.sensors[5].type': { + path: 'multiSensor.sensors.5.type', + type: 'state', + common: { name: 'Type of measured value', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[5].id': { + path: 'multiSensor.sensors.5.id', + type: 'state', + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[5].iconSet': { + path: 'multiSensor.sensors.5.iconSet', + type: 'state', + common: { name: 'Type of icon', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[5].name': { + path: 'multiSensor.sensors.5.name', + type: 'state', + common: { name: 'Personalized name of the sensor', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[6].elapsedTimeS': { + path: 'multiSensor.sensors.6.elapsedTimeS', + type: 'state', + common: { + name: 'Time in seconds that has elapsed since last valid measurement occurred, where -1 = Error, 0 = Fresh data', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[6].state': { + path: 'multiSensor.sensors.6.state', + type: 'state', + common: { + name: 'Status of sensor, where 1 = Measure in progress, 2 = Active Mode, 3 = Error', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[6].trend': { + path: 'multiSensor.sensors.6.trend', + type: 'state', + common: { + name: 'Trend of measured data, where 0 = no data, 1 = sidewave, 2 = Downward, 3 = Upward', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[6].value': { + path: 'multiSensor.sensors.6.value', + factor: 0.01, + type: 'state', + common: { + name: 'Value of measured data, where null = Error and Temperature in Celsius degrees.', + type: 'number', + role: 'value.temperature', + read: true, + write: false, + unit: '°C', + }, + }, + 'multisensor#multiSensor.sensors[6].type': { + path: 'multiSensor.sensors.6.type', + type: 'state', + common: { name: 'Type of measured value', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[6].id': { + path: 'multiSensor.sensors.6.id', + type: 'state', + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[6].iconSet': { + path: 'multiSensor.sensors.6.iconSet', + type: 'state', + common: { name: 'Type of icon', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[6].name': { + path: 'multiSensor.sensors.6.name', + type: 'state', + common: { name: 'Personalized name of the sensor', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[7].elapsedTimeS': { + path: 'multiSensor.sensors.7.elapsedTimeS', + type: 'state', + common: { + name: 'Time in seconds that has elapsed since last valid measurement occurred, where -1 = Error, 0 = Fresh data', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[7].state': { + path: 'multiSensor.sensors.7.state', + type: 'state', + common: { + name: 'Status of sensor, where 1 = Measure in progress, 2 = Active Mode, 3 = Error', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[7].trend': { + path: 'multiSensor.sensors.7.trend', + type: 'state', + common: { + name: 'Trend of measured data, where 0 = no data, 1 = sidewave, 2 = Downward, 3 = Upward', + type: 'number', + role: 'value', + read: true, + write: false, + }, + }, + 'multisensor#multiSensor.sensors[7].value': { + path: 'multiSensor.sensors.7.value', + factor: 0.01, + type: 'state', + common: { + name: 'Value of measured data, where null = Error and Temperature in Celsius degrees.', + type: 'number', + role: 'value.temperature', + read: true, + write: false, + unit: '°C', + }, + }, + 'multisensor#multiSensor.sensors[7].type': { + path: 'multiSensor.sensors.7.type', + type: 'state', + common: { name: 'Type of measured value', type: 'string', role: 'text', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[7].id': { + path: 'multiSensor.sensors.7.id', + type: 'state', + common: { name: 'ID of internal sensor', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[7].iconSet': { + path: 'multiSensor.sensors.7.iconSet', + type: 'state', + common: { name: 'Type of icon', type: 'number', role: 'value', read: true, write: false }, + }, + 'multisensor#multiSensor.sensors[7].name': { + path: 'multiSensor.sensors.7.name', + type: 'state', + common: { name: 'Personalized name of the sensor', type: 'string', role: 'text', read: true, write: false }, + }, }; /**