NEWS
[Aufruf] fullyBrowser Adapter
-
Darum sollt man eben schauen was der Skript wirklich ausliest.
-
Also:
Script 1 zum Auslesen des Akkustands und in einen Datenpunkt schreiben - funktioniert
var request = require('request'); var link = "http://192.168.8.XXX:2323/?cmd=deviceInfo&type=json&password=XXXX"; var state = "javascript.0.Allgemein.Akku_Tablet"/*Akku_Tablet*/; function fully() { request(link, function(error,response, body) { if(error) log('Fehler request: ' + error, 'error'); else { objects = JSON.parse(body); bat = objects.batteryLevel; setState(state, bat); log ("batteryLevel = " + bat); } }); } fully(); schedule('*/10 * * * *', fully);
Script 2 zum Laden aus diesem Datenpunkt - funktioniert
const idBatt = 'javascript.0.Allgemein.Akku_Tablet'; // Batterielevel in % const idPlug = 'sonoff.0.Ladestecker.POWER'; // Ladegerät ein const idVis = 'Vis.Batterieanzeige'; // Für Vis createState(idVis, 0, { type: 'number', min: 0, max: 7, role: 'level', states: { 0: 'leer', 1: '20 %', 2: '40 %', 3: '60 %', 4: '80 %', 5: 'voll', 6: 'Ladegerät' } }); var level = getState(idBatt).val; var plug = getState(idPlug).val; function batt() { var state = 5; // full 80 % if(level <= 79) state = 4; // 79 % if(level <= 60) state = 3; // 60 % if(level <= 40) state = 2; // 40 % if(level <= 30) state = 1; // 20 % if(level <= 22) state = 0; // empty 20 % if(plug) state = 6; // Ladegerät ein setState(idVis, state, true); if(level >= 80 && plug) setState(idPlug, false); if(level <= 30 && !plug) setState(idPlug, true); } batt(); // Skriptstart on(idBatt, function(dp) { level = dp.state.val; batt(); }); on(idPlug, function(dp) { plug = dp.state.val; batt(); });
Script 3 zum Auslesen und Laden aus dem Fully Adapter - funktioniert nicht:
const idBatt = 'fullybrowser.0.192_168_8_225.Info.batteryLevel'; // Batterielevel in % const idPlug = 'sonoff.0.Ladestecker.POWER'; // Ladegerät ein const idVis = 'Vis.Batterieanzeige'; // Für Vis createState(idVis, 0, { type: 'number', min: 0, max: 7, role: 'level', states: { 0: 'leer', 1: '20 %', 2: '40 %', 3: '60 %', 4: '80 %', 5: 'voll', 6: 'Ladegerät' } }); var level = getState(idBatt).val; var plug = getState(idPlug).val; function batt() { var state = 5; // full 80 % if(level <= 79) state = 4; // 79 % if(level <= 60) state = 3; // 60 % if(level <= 40) state = 2; // 40 % if(level <= 30) state = 1; // 20 % if(level <= 22) state = 0; // empty 20 % if(plug) state = 6; // Ladegerät ein setState(idVis, state, true); if(level >= 80 && plug) setState(idPlug, false); if(level <= 30 && !plug) setState(idPlug, true); } batt(); // Skriptstart on(idBatt, function(dp) { level = dp.state.val; batt(); }); on(idPlug, function(dp) { plug = dp.state.val; batt(); });
Script 2 und 3 Unterscheiden sich nur im abgefragten Datenpunkt in Zeile 1
-
Ich glaube bei Sonoff musst du auf POWER1 gehen damit er schaltet
-
Nö, schalten macht er ja korrekt.
Die beiden oberen Scripte funktionieren ja seit 2 Monaten.
Lediglich wenn ich den Akkustand aus dem Adapter hole anstatt direkt schaltet er so komisch das er bei 80% ausschaltet und dann anfängt alle paar Minuten kurz einzuschalten (ca. 30 Sekunden).
-
meine fresse machst du das komplizziert
aber egal
const idBatt = 'fullybrowser.0.192_168_8_225.Info.batteryLevel'; // Batterielevel in % const idPlug = 'sonoff.0.Ladestecker.POWER'; // Ladegerät ein const idVis = 'Vis.Batterieanzeige'; // Für Vis createState(idVis, 0, { type: 'number', min: 0, max: 7, role: 'level', states: { 0: 'leer', 1: '20 %', 2: '40 %', 3: '60 %', 4: '80 %', 5: 'voll', 6: 'Ladegerät' } }); var level = getState(idBatt).val; var plug = getState(idPlug).val; function batt() { var state = 5; // full 80 % if(level <= 79) state = 4; // 79 % if(level <= 60) state = 3; // 60 % if(level <= 40) state = 2; // 40 % if(level <= 30) state = 1; // 20 % if(level <= 22) state = 0; // empty 20 % if(plug) state = 6; // Ladegerät ein setState(idVis, state, true); if(level >= 80 && plug) { log('------------level ' + level + 'plug ' + plug); setState(idPlug, false); } if(level <= 30 && !plug) { log('------------level ' + level + 'plug ' + plug); setState(idPlug, true); } } batt(); // Skriptstart on(idBatt, function(dp) { level = dp.state.val; batt(); }); on(idPlug, function(dp) { plug = dp.state.val; batt(); });
lass mal laufen .. und schau was das Log sagt
-
Die Scripte waren so recht weit am Anfang als ich selbst versucht habe mir ein paar scripte zusammenzustellen.
Mangels Zeit kann ich das zwar heute auch noch nicht besser, aber es hat zumindest funktioniert.
Ich habe zwar mal versucht aus den beiden Scripten eines zu machen, aber das habe ich nie so richtig hinbekommen.
Andererseits hat es so funktioniert (ganz früher mit der Abfrage auf den PAW Adapter) und ich habe das dann einfach so belassen.
Zu deiner Lösung:
Aktuell bin ich auf 50% Akkustand. Ich lade jetzt manuell und werde mich dann melden wenn er bei den 80% ist wie er sich dann verhält.
Aber vorab schon mal herzlichsten Dank für deine Hilfe.
Ich denke mal wenn das Script läuft das das sowieso einige verwenden werden um eine passende Ladesteuerung zum Fully Adapter zu generieren.
-
bei 80% ausschaltet und dann anfängt alle paar Minuten kurz einzuschalten (ca. 30 Sekunden). `
Hast du schon die neueste Version des Adapters aus dem Git installiert? In der alten war genau der Fehler mit dem ein und ausschalten drin.
Nachtrag: Bei mir läuft es seit erscheinen der neuen Version perfekt. Schaltet ein und aus so wie es im Skript eingestellt ist.
const idBatt ='fullybrowser.0.10_122_60_62.Info.batteryLevel'; //Batterielevel in % const idPlug ='sonoff.0.Stube.POWER1';// Ladegerät ein const idVis ='Batterieanzeige'; //Für Vis createState(idVis, 0, { type: 'number', min: 0, max: 7, role: 'level', states: { 0: 'leer', 1: '20 %', 2: '40 %', 3: '60 %', 4: '80 %', 5: 'voll', 6: 'Ladegerät' } }); var level = getState(idBatt).val; var plug = getState(idPlug).val; function batt() { var state = 5; // full 80 % if(level <= 79) state = 4; // 79 % if(level <= 60) state = 3; // 60 % if(level <= 40) state = 2; // 40 % if(level <= 30) state = 1; // 20 % if(level <= 22) state = 0; // empty 20 % if(plug) state = 6; // Ladegerät ein setState(idVis, state, true); if(level >= 95 && plug) setState(idPlug, false); if(level <= 22 && !plug) setState(idPlug, true); } batt(); // Skriptstart on(idBatt, function(dp) { level = dp.state.val; batt(); }); on(idPlug, function(dp) { plug = dp.state.val; batt(); });
-
Ich bin auf Version 0.0.10
Das scheint die Aktuelle zu sein.
Die vorherigen Fehler mit der kurzzeitigen 0°C Eintragung sind ja weg. Nur eben jetzt bei mir diese seltsame Schaltverhalten bei vollem Akku.
-
Von github?
Ich hab die 0.0.9 von github geladen und seit dem gibt es diesen von dir beschriebenen fehler nicht mehr!
Mal komplett gelöscht den Adapter und neu installiert von github ?
-
Die 0.0.9 hatte doch den Fehler mit der kurzen 0% Eintragung.
Aktuell liegt doch schon der Nachfolger 0.0.10 auf Github.
-
Dann nimm mal das Skript mit dem Log, Dan siehst Du was los ist.
-
die 0.0.10 ist aktuell und auf git als auch auf npm
-
Das Script mit dem Log ist aktiv.
Akku ist erst bei 77%
Jetzt mal abwarten…..
-
spaaaaaaaaaaaaaaaaaaaaaaaaaaanuuuuuuuuuuuuuuuuuuuuuuuuuuuung
-
Und? Sag schnell
Ich muss den Grill an machen [emoji85][emoji6]
-
:?: :?: :?:
Ok,
Akku ist bei 80%
Wo schreibt er das Log hin?
Im ioBroker log sehe ich nichts obwohl er wieder munter schaltet.
Edit:
Bei 80% aus
- bei 79% an
Warum macht er das mit dem alten Script nicht?
-
Das Log sollte er doch ins Log vom iobroker schreiben, hätte ich angenommen.
-
Dachte ich eigentlich auch und habe es dort erwartet.
Aber da steht nichts.
Ich habe jetzt erst mal wieder die alte Version am Laufen und werde mich morgen weiter um das seltsame Verhalten kümmern.
Ich vermute mal das das mit meinem zweiten Script zusammenhängt in dem ich den Datenpunkt nur alle 10 Minuten schreibe.
-
im log muss eine oder mehrere Zeilen stehen die mit````
------------leveldas sieht man doch sofort
-
Da ist eben gar nichts:
! ````
host.haus 2018-12-31 19:00:00.029 info instance system.adapter.dwd.0 started with pid 32052
pushover.0 2018-12-31 18:59:56.817 info Send pushover notification: {"message":"Wohnzimmerfenster zu","title":"ioBroker","priority":"0"}
fritzdect.0 2018-12-31 18:59:56.810 info HGROUP ID: 9D:72:75-900 identified for command (mode) : 0
fritzdect.0 2018-12-31 18:59:56.807 info HGROUP ID: 9D:72:75-900 identified for command (targettemp) : 22
fritzdect.0 2018-12-31 18:59:34.108 info HGROUP ID: 9D:72:75-900 identified for command (mode) : 0
pushover.0 2018-12-31 18:59:34.106 info Send pushover notification: {"message":"Wohnzimmerfenster offen","title":"ioBroker","priority":"0"}
fritzdect.0 2018-12-31 18:59:34.098 info HGROUP ID: 9D:72:75-900 identified for command (targettemp) : 12
fritzdect.0 2018-12-31 18:59:34.097 info HGROUP ID: 9D:72:75-900 identified for command (mode) : 0
fritzdect.0 2018-12-31 18:59:34.087 info HGROUP ID: 9D:72:75-900 identified for command (targettemp) : 12
host.haus 2018-12-31 18:56:02.220 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:55:03.168 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:55:00.101 info instance system.adapter.dwd.0 started with pid 32035
host.haus 2018-12-31 18:55:00.029 info instance system.adapter.tvspielfilm.0 started with pid 32030
host.haus 2018-12-31 18:54:13.410 info instance system.adapter.daswetter.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:54:03.550 info instance system.adapter.tankerkoenig.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:54:00.049 info instance system.adapter.tankerkoenig.0 started with pid 32014
host.haus 2018-12-31 18:54:00.029 info instance system.adapter.daswetter.0 started with pid 32009
host.haus 2018-12-31 18:51:01.970 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:50:02.502 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:50:00.081 info instance system.adapter.tvspielfilm.0 started with pid 31991
host.haus 2018-12-31 18:50:00.060 info instance system.adapter.dwd.0 started with pid 31986
host.haus 2018-12-31 18:46:01.819 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:45:02.207 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:45:00.084 info instance system.adapter.dwd.0 started with pid 31970
host.haus 2018-12-31 18:45:00.035 info instance system.adapter.tvspielfilm.0 started with pid 31965
host.haus 2018-12-31 18:41:02.104 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:40:02.557 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:40:00.107 info instance system.adapter.tvspielfilm.0 started with pid 31946
host.haus 2018-12-31 18:40:00.037 info instance system.adapter.dwd.0 started with pid 31941
host.haus 2018-12-31 18:36:12.939 info instance system.adapter.daswetter.0 terminated with code 0 (OK)
daswetter.0 2018-12-31 18:36:06.637 error DasWetter.com reported an error: null or response 409
host.haus 2018-12-31 18:36:02.900 info instance system.adapter.tankerkoenig.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:36:01.833 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:36:00.048 info instance system.adapter.daswetter.0 started with pid 31924
host.haus 2018-12-31 18:36:00.023 info instance system.adapter.tankerkoenig.0 started with pid 31919
host.haus 2018-12-31 18:35:02.126 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:35:00.081 info instance system.adapter.dwd.0 started with pid 31903
host.haus 2018-12-31 18:35:00.023 info instance system.adapter.tvspielfilm.0 started with pid 31898
host.haus 2018-12-31 18:31:02.718 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:30:09.363 info instance system.adapter.ical.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:30:03.293 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:30:00.171 info instance system.adapter.ical.0 started with pid 31878
host.haus 2018-12-31 18:30:00.121 info instance system.adapter.tvspielfilm.0 started with pid 31871
host.haus 2018-12-31 18:30:00.042 info instance system.adapter.dwd.0 started with pid 31866
host.haus 2018-12-31 18:26:02.011 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:25:02.252 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:25:00.090 info instance system.adapter.dwd.0 started with pid 31848
host.haus 2018-12-31 18:25:00.025 info instance system.adapter.tvspielfilm.0 started with pid 31843
host.haus 2018-12-31 18:21:01.971 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:20:02.547 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:20:00.099 info instance system.adapter.tvspielfilm.0 started with pid 31825
host.haus 2018-12-31 18:20:00.034 info instance system.adapter.dwd.0 started with pid 31820
host.haus 2018-12-31 18:18:13.063 info instance system.adapter.daswetter.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:18:03.348 info instance system.adapter.tankerkoenig.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:18:00.040 info instance system.adapter.tankerkoenig.0 started with pid 31803
host.haus 2018-12-31 18:18:00.021 info instance system.adapter.daswetter.0 started with pid 31798
host.haus 2018-12-31 18:16:01.854 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:15:02.252 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:15:00.098 info instance system.adapter.dwd.0 started with pid 31778
host.haus 2018-12-31 18:15:00.039 info instance system.adapter.tvspielfilm.0 started with pid 31773
host.haus 2018-12-31 18:11:02.064 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:10:02.504 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:10:00.123 info instance system.adapter.tvspielfilm.0 started with pid 31756
host.haus 2018-12-31 18:10:00.037 info instance system.adapter.dwd.0 started with pid 31751
host.haus 2018-12-31 18:06:01.873 info instance system.adapter.tvspielfilm.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:05:02.085 info instance system.adapter.dwd.0 terminated with code 0 (OK)
host.haus 2018-12-31 18:05:00.055 info instance system.adapter.dwd.0 started with pid 31733