rework thermostat

This commit is contained in:
2018-04-06 23:00:41 +02:00
parent 9db2aebf09
commit 37acc620d5
9 changed files with 134 additions and 50 deletions

11
dist/Export.js vendored
View File

@ -16,8 +16,8 @@ function SwitchExport(itemId, label, stateTopic, stateFeedbackTopic, type) {
return { 'homekit': homekitOut, 'openhab': openhabOut };
}
exports.SwitchExport = SwitchExport;
function ThermostatExport(itemId, label, temperatureTopic, temperatureFeedbackTopic) {
return { 'homekit': ThermostatHomekitExport(itemId, label, temperatureTopic, temperatureFeedbackTopic), 'openhab': ThermostatOpenHAPExport(itemId, label, temperatureTopic, temperatureFeedbackTopic) };
function ThermostatExport(itemId, label, temperatureTopic, temperatureFeedbackTopic, presetTemperatureTopic, presetTemperatureFeedbackTopic) {
return { 'homekit': ThermostatHomekitExport(itemId, label, temperatureTopic, temperatureFeedbackTopic), 'openhab': ThermostatOpenHAPExport(itemId, label, temperatureTopic, temperatureFeedbackTopic, presetTemperatureTopic, presetTemperatureFeedbackTopic) };
}
exports.ThermostatExport = ThermostatExport;
function ContactExport(itemId, label, status) {
@ -117,8 +117,11 @@ function ContactOpenHABExport(id, label, status) {
// Switch windowLightKitchen {mqtt=">[localbroker:nodered/items/windowLightKitchen:command:*:default]", mqtt="<[localbroker:nodered/items/windowLightKitchen/feedback:state:default]"}
return `Contact ${id} "${label}" {mqtt="<[localbroker:${status}:state:default]"}`;
}
function ThermostatOpenHAPExport(id, label, setTemperature, statusTemperature) {
return `Number ${id} "${label}" {mqtt=">[localbroker:${setTemperature}:command:*:default],<[localbroker:${statusTemperature}:state:default]"}`;
function ThermostatOpenHAPExport(id, label, setTemperature, statusTemperature, presetTemperature, presetStatusTemperature) {
let o = [];
o.push(`Number ${id} "${label}" {mqtt=">[localbroker:${setTemperature}:command:*:default],<[localbroker:${statusTemperature}:state:default]"}`);
o.push(`Number Preset-${id} "Preset-${label}" {mqtt=">[localbroker:${presetTemperature}:command:*:default],<[localbroker:${presetStatusTemperature}:state:default]"}`);
return o;
}
function HueColorLightHomekitExport(id, label, stateTopic, stateFeedbackTopic, brightnessTopic, brightnessFeedbackTopic, hueTopic, hueFeedbackTopic, saturationTopic, saturationFeedbackTopic, colorTemperatureTopic, colorTemperatureFeedbackTopic) {
let o = {