An error occurred while loading the file. Please try again.
-
roman.koehler authoredac0ef116
/*
{
answer:"special",
triggers:{zone-scene:[{group:1,scene:1,name:[{de_DE:'dingsa'}]},{group:0,scene:2},{zone:0,scene:3}],
device:[{id:0,name:[{de_DE:'dingsa'}]}], // device click events
sensor-event:[{id:'.0',value:'inactive',name:[{de_DE:'dingsa'}]}], // akm event
device-event:[{id:'eventXY',name:[{de_DE:'dingsa'}]}]}, // sensor event
actions:{ zone-action:[{scene:1,group:1,name:[{de_DE:'dingsa'}]},{group:0,scene:2},{zone:0,scene:3}]
device-action:[{scene:1,name:[{de_DE:'dingsa'}]},
{outputValue:1,name:[{de_DE:'dingsa'}]}]
},
conditions:{
sensor-event:[{}]}
}*/
var lWarn = {
logln : function(o) {
}
};
var lInfo = {
logln : function(o) {
}
};
var LOGFILE_NAME = "sr-config.log";
lWarn = new Logger(LOGFILE_NAME);
lInfo = new Logger(LOGFILE_NAME)
Property.setSavedProperty = function(path, value) {
Property.setProperty(path, value);
Property.setFlag(path, 'ARCHIVE', true);
}
try {
if (raisedEvent.name == 'system-addon-scene-responder.iterateSpecialDevices') {
lInfo.logln('fetch for gtin ' + raisedEvent.parameter.gtin);
var h = new HTTP({
'debug' : 0
}, {});
var code = h.get("http://illuminant-wizard.aizo.net/specialDevices.php?gtin=" + raisedEvent.parameter.gtin);
if (code.status.valueOf() === 200) {
lInfo.logln(code.body);
var DataObject = JSON.parse(code.body);
if (DataObject.answer != 'nospecial') {
if (DataObject.actions != null) {
if (DataObject.actions['zone-action'] != null) {
for (var iIndex = 0; iIndex < DataObject.actions['zone-action'].length; iIndex++) {
var oDataObject = DataObject.actions['zone-action'][iIndex];
for ( var sKey in oDataObject.name) {
Property.setSavedProperty('specialDevices/' + raisedEvent.parameter.gtin + '/actions/zoneAction/' + iIndex + '/name/' + sKey, oDataObject.name[sKey]);
}
Property.setSavedProperty('specialDevices/' + raisedEvent.parameter.gtin + '/actions/zoneAction/' + iIndex + '/scene', oDataObject.scene);
if (oDataObject.zone != null)
Property.setSavedProperty('specialDevices/' + raisedEvent.parameter.gtin + '/actions/zoneAction/' + iIndex + '/zone', oDataObject.zone);
if (oDataObject.group != null)
Property.setSavedProperty('specialDevices/' + raisedEvent.parameter.gtin + '/actions/zoneAction/' + iIndex + '/group', oDataObject.group);
}
}
if (DataObject.actions['device-action'] != null) {
for (var iIndex = 0; iIndex < DataObject.actions['device-action'].length; iIndex++) {
var oDataObject = DataObject.actions['device-action'][iIndex];
lInfo.logln('action ' + JSON.stringify(oDataObject));
for ( var sKey in oDataObject.name) {
Property.setSavedProperty('specialDevices/' + raisedEvent.parameter.gtin + '/actions/deviceActions/' + iIndex + '/name/' + sKey, oDataObject.name[sKey]);
}
if (oDataObject.scene != null)
Property.setSavedProperty('specialDevices/' + raisedEvent.parameter.gtin + '/actions/deviceActions/' + iIndex + '/scene', oDataObject.scene);
if (oDataObject.outputValue != null)