finde den Fehler nicht

Support für die Android App HomeStatus Display Pro
accountlars
Beiträge: 29
Registriert: Mo Mär 30, 2015 1:44 am

finde den Fehler nicht

Beitragvon accountlars » Fr Dez 22, 2017 10:46 pm

Ich habe folgendes eingegeben, aber es wird ein Fehler angezeigt, was mache ich falsch; möchte 2 Variablen in einem Feld eingeben.
Anzeige Watt und Stromverbrauch von einer Steck-Mess-Dose.

var G9 = dom.GetObject("hs_display2_view0:G9");
var watt1 = dom.GetObject("BidCos-RF.LEQ0535344:2.POWER").Value().ToString(1);
var kwh1 = dom.GetObject("BidCos-RF.LEQ0535344:2.ENERGY_COUNTER").Value().ToString(1);
var string = " {img:/mnt/sdcard/Download/png/48/normal/Homeserver_48.png}{fontSize:13}
{align:left}{backgroundColor: #F781D8}{color:#FF0000}
{text:"+ watt1 +" W" <br> "+ kwh1 + " kwh" }";
G9.State(string);


Danke für baldige Hilfe
Zuletzt geändert von accountlars am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

HomematicMani
Beiträge: 22
Registriert: Do Dez 08, 2016 1:42 pm

Re: finde den Fehler nicht

Beitragvon HomematicMani » So Dez 24, 2017 11:58 am

Hallo,

es sind zu viele Anführungszeichen ;-)
so gehts:
{text:"+ watt1 +" W<br> "+ kwh1 + " kwh }";

dein Code zum vergleich:
{text:"+ watt1 +" W" <br> "+ kwh1 + " kwh" }";

lg

Mani
Zuletzt geändert von HomematicMani am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

HomematicMani
Beiträge: 22
Registriert: Do Dez 08, 2016 1:42 pm

Re: finde den Fehler nicht

Beitragvon HomematicMani » So Dez 24, 2017 2:15 pm

nur ganz nebenbei, der Stromverbrauch der Mess-Steckdosen wird in Wh ausgegeben, nicht in kwh sonst ist das Verbrauchsergebniss sehr erschreckend :)
Zuletzt geändert von HomematicMani am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

accountlars
Beiträge: 29
Registriert: Mo Mär 30, 2015 1:44 am

Re: finde den Fehler nicht

Beitragvon accountlars » Mo Dez 25, 2017 9:59 pm

vielen Dank für die schnelle Antwort, leider wird mir noch immer ein Fehler im Skript angezeigt:

Error 1 at row 5 col 33 near ^);

Parse following code failed:
var H10 = dom.GetObject("hs_display2_view0:H10");
var watt1 = dom.GetObject("BidCos-RF.LEQ0535344:2.POWER").Value().ToString(1);
var kwh1 = dom.GetObject("BidCos-RF.LEQ0535344:2.ENERGY_COUNTER").Value().ToString(1);
var string = "{img:/mnt/sdcard/Download/png/24/normal/Homeserver_24.png}{color:#FFFF00}
{backgroundColor:#F0E6E6}{fontSize:default}{align:left}{text:"+ watt1 +" W<br> "+ kwh1 + " wh }";
H10.State(stringH10);

Woran liegt es?
Zuletzt geändert von accountlars am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

HomematicMani
Beiträge: 22
Registriert: Do Dez 08, 2016 1:42 pm

Re: finde den Fehler nicht

Beitragvon HomematicMani » Di Dez 26, 2017 9:08 am

Hallo, gib mal testhalber bei fontsize einen wert an (statt default)

lg

Mani
Zuletzt geändert von HomematicMani am Di Dez 26, 2017 9:15 am, insgesamt 1-mal geändert.

HomematicMani
Beiträge: 22
Registriert: Do Dez 08, 2016 1:42 pm

Re: finde den Fehler nicht

Beitragvon HomematicMani » Di Dez 26, 2017 9:14 am

H10.State(stringH10);

das H10 nach dem string muss weg, denn der "H10.state" beziehts sich auf die var "string" und eine "stringH10" kommt in dem Script nicht vor.

lg Mani
Zuletzt geändert von HomematicMani am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

accountlars
Beiträge: 29
Registriert: Mo Mär 30, 2015 1:44 am

Re: finde den Fehler nicht

Beitragvon accountlars » Mi Dez 27, 2017 12:00 am

HomematicMani hat geschrieben:H10.State(stringH10);

das H10 nach dem string muss weg, denn der "H10.state" beziehts sich auf die var "string" und eine "stringH10" kommt in dem Script nicht vor.

lg Mani


Vielen lieben Dank, es lag an dem "H10"
Zuletzt geändert von accountlars am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

accountlars
Beiträge: 29
Registriert: Mo Mär 30, 2015 1:44 am

Re: finde den Fehler nicht

Beitragvon accountlars » Mi Dez 27, 2017 12:10 am

Die Anzeige ist nun super, doch werden die Daten nicht automatisch aktualisiert.
was muss denn da noch eingestellt werden?



var H10 = dom.GetObject("hs_display2_view0:H10");
var watt1 = dom.GetObject("BidCos-RF.LEQ0535344:2.POWER").Value().ToString(1);
var kwh1 = dom.GetObject("BidCos-RF.LEQ0535344:2.ENERGY_COUNTER").Value().ToString(1);
var string = "{img:/mnt/sdcard/Download/png/48/normal/Homeserver_48.png}{color:#000000}
{backgroundColor:#74DF00}{fontSize:16}{align:left}{text:"+ watt1 +" W<br> "+ kwh1 + " }";
H10.State(string);
Zuletzt geändert von accountlars am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

HomematicMani
Beiträge: 22
Registriert: Do Dez 08, 2016 1:42 pm

Re: finde den Fehler nicht

Beitragvon HomematicMani » Mi Dez 27, 2017 7:31 am

Du brauchst vor dem Script noch ein Programm das bei änderung das Spript ausführt:
Den Messwertkanal als Gerät und bei änderung im Bereich >= 0 das script ausführen

hier gibt es auch viele hilfreiche Tips zur Homematic
https://homematic-forum.de/forum/viewto ... 22801//url

ich habe das Skript etwas erweitert:

in Zeile 4 kannst du deinen Strompreis eintragen
in Zeile 5 wird von Wh in kwh umgerechnet


var H10 = dom.GetObject("hs_display2_view0:H10");
var zahl = dom.GetObject("BidCos-RF.LEQ0535344:2.ENERGY_COUNTER").Value();
var watt1 = dom.GetObject("BidCos-RF.LEQ0535344:2.POWER").Value().ToString(1);
var preis = ((zahl / 1000)*0.26418).ToString(2);
var kw = (zahl / 1000).ToString(3);
dom.GetObject("Steckdose_Strompreis").State(preis);
dom.GetObject("Steckdose_KW").State(kw);
var string = "{img:electricity1_128.png}{fontSize:default}{align:left}{backgroundColor:#F781D8}{color:#FF0000}
{text:"+ preis +" Kosten<br>"+ kw +" kw<br>"+watt1+" Leistung}";
H10.State(string);
Gruß

Mani
Dateianhänge
Bild2.jpg
Bild2.jpg (47.26 KiB) 5363 mal betrachtet
Zuletzt geändert von HomematicMani am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''

accountlars
Beiträge: 29
Registriert: Mo Mär 30, 2015 1:44 am

Re: finde den Fehler nicht

Beitragvon accountlars » Sa Dez 30, 2017 9:58 pm

das ist genau das, was ich gesucht habe. Leider funktioniert es nicht, es wird nichts angezeigt, kann da noch ein Fehler sein?

var H10 = dom.GetObject("hs_display2_view0:H10");
var zahl = dom.GetObject("BidCos-RF.LEQ0535344:2.ENERGY_COUNTER").Value();
var watt1 = dom.GetObject("BidCos-RF.LEQ0535344:2.POWER").Value().ToString(1);
var preis = ((zahl / 1000)*0.26418).ToString(2);
var kw = (zahl / 1000).ToString(3);
dom.GetObject("Steckdose_Strompreis").State(preis);
dom.GetObject("Steckdose_KW").State(kw);
var string = "{img:/mnt/sdcard/Download/png/48/normal/Homeserver_48.png}
{color:#000000}{backgroundColor:#74DF00}{fontSize:14}{align:left}
{text:"+ preis +" Kosten<br>"+ kw +" kw<br>"+watt1+" Leistung}";
H10.State(string);



HomematicMani hat geschrieben:Du brauchst vor dem Script noch ein Programm das bei änderung das Spript ausführt:
Den Messwertkanal als Gerät und bei änderung im Bereich >= 0 das script ausführen

hier gibt es auch viele hilfreiche Tips zur Homematic
https://homematic-forum.de/forum/viewto ... 22801//url

ich habe das Skript etwas erweitert:

in Zeile 4 kannst du deinen Strompreis eintragen
in Zeile 5 wird von Wh in kwh umgerechnet


var H10 = dom.GetObject("hs_display2_view0:H10");
var zahl = dom.GetObject("BidCos-RF.LEQ0535344:2.ENERGY_COUNTER").Value();
var watt1 = dom.GetObject("BidCos-RF.LEQ0535344:2.POWER").Value().ToString(1);
var preis = ((zahl / 1000)*0.26418).ToString(2);
var kw = (zahl / 1000).ToString(3);
dom.GetObject("Steckdose_Strompreis").State(preis);
dom.GetObject("Steckdose_KW").State(kw);
var string = "{img:electricity1_128.png}{fontSize:default}{align:left}{backgroundColor:#F781D8}{color:#FF0000}
{text:"+ preis +" Kosten<br>"+ kw +" kw<br>"+watt1+" Leistung}";
H10.State(string);
Gruß

Mani
Zuletzt geändert von accountlars am Do Jan 01, 1970 12:00 am, insgesamt 0-mal geändert.
Grund: ''


Zurück zu „HomeStatus Pro“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste

cron