NEWS
[Aufruf] fullyBrowser Adapter
-
Hat jemand eine Idee? `
Passwort hast du im Fully auf deinem Device angegeben und auch im Adapter (ioBroker) eingetragen?LG, mxa `
Ja, das habe ich natürlich gemacht. Mehrfach…
sagmal wofür schreiben wir Wiki oder Doku
Auch die Doku habe ich vorher durchgelesen und den Browser extakt so eingestellt
-
was passiert wenn du die Adresse im Browser eingibst..
-
Also, was ich jetzt herausgefunden habe….
Ich habe jetzt das PW testweise auf ein Hochsicherheitspasswort geändert: 12345
und siehe da, es geht. ich habe es dann wieder zurück auf ein Passwort bestehend aus Buchstaben, Zahlen und Sonderzeichen geändert.
Und dann geht es wieder nicht mehr. Dieses Spiel habe ich jetzt zur sicherheit mehrere Male getestet. Sobald ich ein sicheres Passwort gewählt habe, geht es nicht mehr.
Über den normalen Browser gings mit meinem ursprünglichen Passwort.
-
Hi Arti,
womit setzt du / würdest du Helligkeit auf 0 setzen? Über den Adapter geht es ja nicht (bei mir, is nix in den Objekten dazu). Mit dem PAW-Adapter? Den hatte ich jetzt nicht mehr in Nutzung wegen deinem neuen Adapter.
Danke und Grüße, Thorsten `
na klar geht das … wenn das nicht gehtn würde.. hätte ich den Adapter nicht geschrieben.. ich brauch die Funktion
Ich bekomme das im BLockly nicht hin.
Das script schreibt den Befehl zwar in den Datenpunkt aber schickt ihn nicht weiter zum Fullytablet.
Muss ich da noch was anderes ausführen oder anderen Befehl für nehmen?
Gruss
edit
Fehler selber gefunden wenn ich "steuere" nehme geht es.
Schönen Sonntag euch noch.
Gruss Danyel
-
So wie es scheint ist das Problem mit dem Ladezustand behoben.
Aber ich habe jetzt ein Problem mit meinem Ladescript.
Das Gerät lädt auf 80% und schaltet sich ab.
Dann fängt es an alle 3-4 Minuten den Ladestecker kurz ein und sofort wieder auszuschalten.
Hat jemand eine Idee woran das jetzt liegen könnte?
Mit der vorherigen Lösung hat er das nicht gemacht.
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(); });
-
Schalt mal ein debug in die Zeile "if(level >= 80 && plug) setState(idPlug, false);"
-
Ok, und wie mache ich das?
-
Kann ich auch nicht sagen, mach es mal in Blocky und schau dann wie das JS dann aussieht.
-
Ja, aber das Script läuft ja normalerweise.
Im Originalzustand hole ich direkt aus Fully (separates Script) den Akkuwert und schreibe den dann in einen Datenpunkt.
Diesen Datenpunkt frage ich dann mit dem Script ab und es lädt zwischen 20 und 80%.
Erst wenn ich den Datenpunkt dann auf den Datenpunkt vom Adapter lege gibt es das seltsame Verhalten.
-
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.