Antworten
Dez 12, 2020 - 00:35
Mit was machst Du denn Geofencing, welchen Tool bzw. Betriebssystem des Geräts? Wäre es nicht einfacher ein NEO Variable im NEO Server direkt beim Betreten des Geofence zu setzten, als erst mal den Umweg über eine CCU Systemvariable zu gehen?
Dez 12, 2020 - 10:57
Hallo und danke, dass du dir das angesehen hast. In der Tat ist es eine Idee, die CCU zu umgehen. Ich nutze die App HM Pocket Control auf dem iphone. Dort kann ich zwar - zunächst für eine lokaleVerbindung - die IP des V5+ angeben und er findet dieses dann auch in der Tsst und zeigt die dort kopnfigurierten Geräte an. Auch das Geofencing erzeugt laut App planmäßig dann eine Variable, nennen wir sie mal ZuHause, aber leider finde ich diese nun nirgends auf dem System wieder, auch nicht beim Versuch, diese vom Gateway zu importieren.....
Dez 13, 2020 - 16:58
Hallo,
wie Du schon sagst, kann der Austausch von Variablenwerten zwischen der CCU3 und dem AM über ein HTTP Request via xml-api im AM Script erfolgen.
Mit dem script sysvar.cgi aus der XML-API wird eine einzelne Variable abgerufen.
Als Parameter wird die ID der Variable übergeben, z.B. http get Request --> http://ccu3-ip/addons/xmlapi/sysvar.cgi?ise_id=950.
Genauso kann mit dem Script statechange.cgi aus der XML-API der Wert einer Variable aus AM geändert bzw. aktualisiert werden.
http get request --> http://ccu3-ip/addons/xmlapi/statecha...
Im Blockeditor muss jetzt nur noch eine Bedingung definiert werden und als Aktion das Script aufgerufen werden.
wie Du schon sagst, kann der Austausch von Variablenwerten zwischen der CCU3 und dem AM über ein HTTP Request via xml-api im AM Script erfolgen.
var http = require('http');
callback = function(response) {
var str = '';
//another chunk of data has been received, so append it to `str`
response.on('data', function (chunk) {
str += chunk;
});
//the whole response has been received, so we just print it out here
response.on('end', function () {
console.log(str);
});
}
// Benutzt die XML-API der CCU3 und liefert mit dem sysvar.cgi Script
// die Variable zurück.
// WICHTIG der Parameter ise_Id benötig die ID der Variable und nicht den Namen
var options = {
host: 'ccu3-webui',
path: '/addons/xmlapi/sysvar.cgi?ise_id=950'
};
http.request(options, callback).end();
// Benutzt die XML-API der CCU3 und mit dem changestate.cgi.cgi Script
// kann ein neuer Wert gesetzt werden
// WICHTIG der Parameter ise_Id benötig die ID der Variable und nicht den Namen
options.path='/addons/xmlapi/statechange.cgi?ise_id=950&new_value=false'
http.request(options, callback).end();
Die Antwort sieht in etwas so aus:
Mit dem script sysvar.cgi aus der XML-API wird eine einzelne Variable abgerufen.
Als Parameter wird die ID der Variable übergeben, z.B. http get Request --> http://ccu3-ip/addons/xmlapi/sysvar.cgi?ise_id=950.
Genauso kann mit dem Script statechange.cgi aus der XML-API der Wert einer Variable aus AM geändert bzw. aktualisiert werden.
http get request --> http://ccu3-ip/addons/xmlapi/statecha...
Im Blockeditor muss jetzt nur noch eine Bedingung definiert werden und als Aktion das Script aufgerufen werden.
Neuen Kommentar hinzufügen