Bei den Fenstern klappt es. Da habe ich auch nicht so viele Ebenen.
Bei den Energiezählern habe ich aber 3 Ebenen ( Hauptzähler, Unterzähler 1, …) da geht es nicht.
Ich wollte auch „Ordnung“ haben und nicht alles unter „Functions“ gequetscht. Genaugenommen ist es ja auch keine Funktion.
NEWS
Best posts made by MeisterSchatten
-
RE: [gelöst]Unterkategorien mit ID-Selector ansprechen
Latest posts made by MeisterSchatten
-
RE: [geloest] Fehler SQL-Adapter nach Proxmox 7to8
@codierknecht
Sehe ich auch so, aber hab es jetzt anders gelöst:
Der Hostname habe ich gefunden. Der ist zwar gleich geblieben (über die Fritzbox kontrolliert) und somit weiß ich immer noch nicht, wo die Änderung herkam. Aber meine quick & Dirty-Lösung war jetzt, dem Host „ f1_56_73_73_c3_2d.fritz.box“ Rechte zuzuweisen.Danke für eure Hilfe!
-
RE: [geloest] Fehler SQL-Adapter nach Proxmox 7to8
@meister-mopper
Sorry, da habe ich mich unklar ausgedrückt:xxx steht für: ddc01-iobroker.fritz.box
Ermittelt mit:Select User,Host FROM mysql.user;
War zu faul das hier auf dem Handy abzutippen
So wie ich mich kenne, habe ich den Namen vor langer Zeit irgendwo selber vergeben, nur leider habe ich keine Ahnung mehr, wo das war.
-
RE: [geloest] Fehler SQL-Adapter nach Proxmox 7to8
@meisterschatten
Ich habe es jetzt etwas eingrenzen können:
Die Fehlermeldung kommt vom MySQL-Server. Die Verbindung dahin steht also, aber der Zugriff wird verweigert.
Grund: Der Zugriff ist nur von einem Clienten mit Namen xxx gestattet, aber eben nicht von „f1_56_73_73_c3_2d“. -
RE: [geloest] Fehler SQL-Adapter nach Proxmox 7to8
@arteck
Auf einem LXC Containter, parallel zum LXC auf dem IOBroker läuft.
-
[geloest] Fehler SQL-Adapter nach Proxmox 7to8
Guten Morgen zusammen,
gestern Abend überkam mich dann doch ein Schwung Mut und ich habe das seit langem überfällige Update von Proxmox 7 auf 8 durchgefüht.
Bis auf ein Problem läuft auch alles wie geschmiert.Problem:
Der SQL Adapter liefert folgende Fehlermeldung:
"Error: Host 'f1_56_73_73_c3_2d.fritz.box' is not allowed to connect to this MySQL server"Auf den SQL-Server kann ich von einem anderen Rechner aus zugreifen und Abfragen ausführen, über die Shell geht der Zugriff auch.
Die vermeintliche MAC-Adresse f1_56_73_73_c3_2d kenne ich nicht und kann sie nicht zuordnen.Config:
IntelNuc
|---PVE
|-Iobroker (LXC)
|-MySQL-Server (LXC)Die LXCs habe ich nach dem Proxmox Update wieder neu gestartet und auch einmal geupdatet (hoffentlich richtig - bin kein Linux-crack).
Hat evtl. wer einen Ansatz wo ich suchen muss?
-
RE: [gelöst]Unterkategorien mit ID-Selector ansprechen
@paul53 said in Unterkategorien in Kategorien mit ID-Selector ansprechen:
Die Einheit muss im per Blockly ausgewerteten Datenpunkt "statistics.0.save.sumDelta.linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol.day" stehen.
Ist bei mir leider nicht der Fall. Hatte die linkeddevices im Verdacht, aber dort sind Einheiten drin. Nur in den Wertem vom statistics-Adapter nicht. Finde dafür auch keine Einstellung.
-
RE: [gelöst]Unterkategorien mit ID-Selector ansprechen
@paul53
Wunderbar, so klappt es!Jetzt habe ich noch zwei Verständnisprobleme:
-
Der Objektname scheint bei mir leer zu sein - kann ich den selber definieren (z.B. mit einem anderen Skript)?
-
Die Einheit scheint durch linkeddevices nicht an das verlinkte Objekt übergeben worden sein. Kann man das irgendwo einstellen, oder muss ich mir die Einheit aus dem Ursprungsobjekt holen?
Edit aktuelle Einstellung verlinkte Objekte:
PS: Was ist denn hier die "Währung" für gute/sehr hilfreiche Beiträge?
-
-
RE: [gelöst]Unterkategorien mit ID-Selector ansprechen
@paul53 said in Unterkategorien in Kategorien mit ID-Selector ansprechen:
@meisterschatten sagte: [object Object]meter_00
Die Datenpunktnamen sind mehrsprachig.
Aus deinem ersten Post entnehme ich, dass die DP-Namen alle gleich sind: "Tageswert".EDIT: Mit mehrsprachigem Namen versuche es mal so:
Was möchtest du als Nachricht ausgeben?
Die "==" befinden sich in der Datenpunkt-ID - nicht im Namen!OK, ID<>Namen, das habe ich übersehen. Wie bekomme ich denn die ID?
-
RE: [gelöst]Unterkategorien mit ID-Selector ansprechen
@paul53
Vielen Dank Paul!
Ja der Objektname ist mehrsprachig, wie ich auch gerade festgestellt habe.
Ich habe es zwar zwischenzeitlich selbst gelöst, aber deine Lösung mit "de" finde ich sicherer, als bei mir mit Auswahl nach Index.Hier noch meine Lösung:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="/qaN*}S,4Qhh}Dx!KhP*">telegramText</variable> <variable id="3ZO)cPrY1Use;ShbtMJ1">Nachrichtentext</variable> <variable id=";N8^1gRx_@Aa5kL6[*eO">i</variable> <variable id="Q#9rHor5!ZZ4!,mL@YD{">Objectname</variable> <variable id="[m1(zyS^FG5%]RKc$r/Q">n_</variable> </variables> <block type="comment" id="nEp+r#CjhA!8~fP$4kUE" x="-1337" y="-4513"> <field name="COMMENT">Senden aller aktuellen Tagesverbrauchswerte an Telegram-Bot</field> <next> <block type="variables_set" id="O!~P;s0F8e%~j?wcjZQV"> <field name="VAR" id="/qaN*}S,4Qhh}Dx!KhP*">telegramText</field> <value name="VALUE"> <block type="text" id="*5Ki5kPJ-hQ(|m=iHTw]"> <field name="TEXT">Stromgestern</field> </block> </value> <next> <block type="on" id="^UswhH6fw_$gSUoS1Xqx"> <field name="OID">telegram.0.communicate.request</field> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id=")R(r8N2xyM}?/HIv,:k!"> <value name="IF0"> <block type="logic_compare" id="!!3lc.kMJ!MGOs[j+7mR"> <field name="OP">GT</field> <value name="A"> <block type="text_indexOf" id="#Qs+ACeVeoBqVu-2yp9~"> <field name="END">FIRST</field> <value name="VALUE"> <block type="convert_tostring" id="4`_kC@Dyg~.$(F!qQ@w8"> <value name="VALUE"> <block type="get_value" id="lhbt_QK$WSXv^vav._/c"> <field name="ATTR">val</field> <field name="OID">telegram.0.communicate.request</field> </block> </value> </block> </value> <value name="FIND"> <shadow type="text" id="s2-+](q-8WO(?7][4A(i"> <field name="TEXT">abc</field> </shadow> <block type="variables_get" id="J}G!9gw:pOsY9_F7(2!b"> <field name="VAR" id="/qaN*}S,4Qhh}Dx!KhP*">telegramText</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="[7E){e[Ath2f;SG?xjA/"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="xgU.]_agzkK^kA3u@ms(" disabled="true"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="2#S{8q*z[;pC~::~5L.q"> <field name="TEXT">test</field> </shadow> <block type="convert_tostring" id="4dsuJo$`Ql`m^rCY^9u-"> <value name="VALUE"> <block type="text" id="o}9t:W;#sBzi*5(]*KWU"> <field name="TEXT">Stromgestern</field> </block> </value> </block> </value> <next> <block type="comment" id="~.#K~D%BUox8E-pqyh?3"> <field name="COMMENT">Verbrauchswerte aktuelle Zählerstände sammeln</field> <next> <block type="text_append" id="B29v4,$onBh:7|/qAmj!"> <field name="VAR" id="3ZO)cPrY1Use;ShbtMJ1">Nachrichtentext</field> <value name="TEXT"> <shadow type="text" id="%9IFh,_[w)0Znl9Yn:Dv"> <field name="TEXT"></field> </shadow> <block type="text_join" id="r)9=7|IxW~1j|*aplNtm"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="HUeSx:~leb^Yzd,cs[$["> <field name="TEXT">------- Hauptzähler -------</field> </block> </value> <value name="ADD1"> <block type="text_newline" id="ea?YZMp~JSEm%]T#;t;B"> <field name="Type">\n</field> </block> </value> </block> </value> <next> <block type="controls_forEach" id="B_9uX!SZ`I#3f#5w;Y@|"> <field name="VAR" id=";N8^1gRx_@Aa5kL6[*eO">i</field> <value name="LIST"> <block type="selector" id="=hweWaw/N.R7Gh]V+d.Q"> <field name="TEXT">*(List_Meter=meter_00_cons_daily)</field> </block> </value> <statement name="DO"> <block type="comment" id="e!~%@hHk/d7GsiauP)h%"> <field name="COMMENT">Verbrauchswerte im Nachrichtentext verketten</field> <next> <block type="variables_set" id="]/E%[5#Jq;oDsymAx2MN"> <field name="VAR" id="Q#9rHor5!ZZ4!,mL@YD{">Objectname</field> <value name="VALUE"> <block type="convert_tostring" id="IS*d^)/c}}3jQ-QDR@|r"> <value name="VALUE"> <block type="lists_getIndex" id="8vLv_CfKKy6^R#qFsy]v"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="get_value_var" id="g%SkC,ft}cmHyROv(/f0"> <field name="ATTR">common.name</field> <value name="OID"> <shadow type="field_oid" id="rVrs,^yLOcDbd}%*pd$1"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="h1Y[:vxRijE.YlAWPQpu"> <field name="VAR" id=";N8^1gRx_@Aa5kL6[*eO">i</field> </block> </value> </block> </value> <value name="AT"> <block type="math_number" id="z||Bm=;k0p4u^Kcc4Bz~"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> <next> <block type="debug" id="gdohwz)57(uvo~10=E$="> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="2#S{8q*z[;pC~::~5L.q"> <field name="TEXT">test</field> </shadow> <block type="text_join" id=":9~.R~9xi1]2O[2+Rohy"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="-dh/AW;U3cl*@d(rZWuK"> <field name="VAR" id="Q#9rHor5!ZZ4!,mL@YD{">Objectname</field> </block> </value> <value name="ADD1"> <block type="text" id="a:`YTf984uH)Bj/8R/wt"> <field name="TEXT">meter_00</field> </block> </value> </block> </value> <next> <block type="variables_set" id="0m_yT7o$1jra0qBVZ4WN"> <field name="VAR" id="[m1(zyS^FG5%]RKc$r/Q">n_</field> <value name="VALUE"> <block type="text_indexOf" id="Jz#M56N8pL?GMh`3.Y44"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="O?S@|nD,)l`e?0Lv%W`H"> <field name="VAR" id="Q#9rHor5!ZZ4!,mL@YD{">Objectname</field> </block> </value> <value name="FIND"> <shadow type="text" id="[ve/id#fbF86Bz-1(D%5"> <field name="TEXT">==</field> </shadow> </value> </block> </value> <next> <block type="text_append" id="8Dtb(5PbHn9;M$PxgfCh"> <field name="VAR" id="3ZO)cPrY1Use;ShbtMJ1">Nachrichtentext</field> <value name="TEXT"> <shadow type="text" id="%9IFh,_[w)0Znl9Yn:Dv"> <field name="TEXT"></field> </shadow> <block type="text_join" id="rl)-ua=s:Ax;I]sn#Bpx"> <mutation items="8"></mutation> <value name="ADD0"> <block type="text_newline" id="L3-RX.dM}fTqB#x:Ayn*"> <field name="Type">\n</field> </block> </value> <value name="ADD1"> <block type="text" id="Z.=Ri5[^Tg?C|D`y:]?D"> <field name="TEXT">--------------</field> </block> </value> <value name="ADD2"> <block type="text_getSubstring" id=".AG9W-3uHrOsT3ca-+3G"> <mutation at1="true" at2="false"></mutation> <field name="WHERE1">FROM_START</field> <field name="WHERE2">LAST</field> <value name="STRING"> <block type="variables_get" id="eBW^_V!+xC[(K`2X{{~)"> <field name="VAR" id="Q#9rHor5!ZZ4!,mL@YD{">Objectname</field> </block> </value> <value name="AT1"> <block type="variables_get" id="}GBn?G^e0L[q]?$z((?l"> <field name="VAR" id="[m1(zyS^FG5%]RKc$r/Q">n_</field> </block> </value> </block> </value> <value name="ADD3"> <block type="text" id="(?rY8mY`@-DptNb0%Qh%"> <field name="TEXT"> : </field> </block> </value> <value name="ADD4"> <block type="math_rndfixed" id="q.#Bn0OAY$fRV$^F0t1w"> <field name="n">1</field> <value name="x"> <shadow type="math_number" id="Se6uPr:*{TW7|684JBU_"> <field name="NUM">3.1234</field> </shadow> <block type="get_value_var" id="auDbYno,TTDpkC~*f;p9"> <field name="ATTR">val</field> <value name="OID"> <shadow type="field_oid" id="rVrs,^yLOcDbd}%*pd$1"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="U~VY|b#`N)MC=nU8R(tg"> <field name="VAR" id=";N8^1gRx_@Aa5kL6[*eO">i</field> </block> </value> </block> </value> </block> </value> <value name="ADD5"> <block type="text" id="y(G5)Z+5@_w(~4)FJXA,"> <field name="TEXT"> </field> </block> </value> <value name="ADD6"> <block type="get_value_var" id="L$]4x,6bh0:QT7Z=(u6-"> <field name="ATTR">common.unit</field> <value name="OID"> <shadow type="field_oid" id="rVrs,^yLOcDbd}%*pd$1"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="zGpo9{wHg_udpwEs$jOU"> <field name="VAR" id=";N8^1gRx_@Aa5kL6[*eO">i</field> </block> </value> </block> </value> <value name="ADD7"> <block type="text_newline" id="ng~fDWNVax{+^AcJ1xd."> <field name="Type">\n</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <next> <block type="debug" id="POq_S6.=i)!/i#9f|j=A"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="2#S{8q*z[;pC~::~5L.q"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="`UNVO8Cs^rGLF#P8CM3T"> <field name="VAR" id="3ZO)cPrY1Use;ShbtMJ1">Nachrichtentext</field> </block> </value> <next> <block type="comment" id="R8)C|e5R4-E^hw2_3(YJ"> <field name="COMMENT">Telegramm Nachricht </field> <next> <block type="telegram" id="EMIP!a[rarr#6`mXn1z("> <field name="INSTANCE"></field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <field name="ESCAPING">FALSE</field> <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field> <value name="MESSAGE"> <shadow type="text" id="Xl#pf^ttxsLfaOOsPgdg"> <field name="TEXT">/opt/iobroker/iobroker-data/echarts-temp-photo.jpg</field> </shadow> <block type="variables_get" id="4T8+]hO0:yE4y{,2NEu5"> <field name="VAR" id="3ZO)cPrY1Use;ShbtMJ1">Nachrichtentext</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </xml>
-
RE: [gelöst]Unterkategorien mit ID-Selector ansprechen
@paul53 Natürlich, "Wert" steht da nur noch aus meinen Tests.
Debug Output bei "Objektname" ist:17.11.2024, 14:08:11.236 [info ]: javascript.0 (9603) Stopping script script.js.Energie.Tagesverbraeuche_heute 17.11.2024, 14:08:11.238 [info ]: javascript.1 (9618) Stopping script script.js.Energie.Tagesverbraeuche_heute 17.11.2024, 14:08:11.326 [info ]: javascript.0 (9603) Start JavaScript script.js.Energie.Tagesverbraeuche_heute (Blockly) 17.11.2024, 14:08:11.335 [info ]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: subscribe: {"pattern":{"id":"telegram.0.communicate.request","change":"any","q":0},"name":"script.js.Energie.Tagesverbraeuche_heute"} 17.11.2024, 14:08:11.335 [info ]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: registered 1 subscription, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 17.11.2024, 14:09:35.303 [info ]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: getState(id=telegram.0.communicate.request, timerId=undefined) => {"val":"[Michael]Stromgestern","ack":true,"ts":1731848975301,"q":0,"from":"system.adapter.telegram.0","user":"system.user.admin","lc":1731842969177} 17.11.2024, 14:09:35.411 [info ]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: getObject(id=statistics.0.save.sumDelta.linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol.day, enumName=null) => {"common":{"type":"number","role":"value","name":{"en":"Daily value","de":"Tageswert","ru":"Ежедневная стоимость","pt":"Valor diário","nl":"Daily waarde","fr":"Valeur quotidienne","it":"Valore giornaliero","es":"Valor diario","pl":"Daily","uk":"Добова норма","zh-cn":"每日价值"},"write":false,"read":true,"custom":{"sql.1":{"enabled":true,"storageType":"","counter":false,"aliasId":"","debounceTime":500,"blockTime":0,"changesOnly":true,"changesRelogInterval":30,"changesMinDelta":0,"ignoreBelowNumber":"","disableSkippedValueLogging":false,"retention":0,"customRetentionDuration":365,"maxLength":0,"enableDebugLogs":true,"debounce":1000,"ignoreZero":true}}},"native":{"addr":"linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol"},"type":"state","_id":"statistics.0.save.sumDelta.linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol.day","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"from":"system.adapter.statistics.0","user":"system.user.admin","ts":1731101038184} 17.11.2024, 14:09:35.411 [info ]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: [object Object]meter_00 17.11.2024, 14:09:35.412 [info ]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: getObject(id=statistics.0.save.sumDelta.linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol.day, enumName=null) => {"common":{"type":"number","role":"value","name":{"en":"Daily value","de":"Tageswert","ru":"Ежедневная стоимость","pt":"Valor diário","nl":"Daily waarde","fr":"Valeur quotidienne","it":"Valore giornaliero","es":"Valor diario","pl":"Daily","uk":"Добова норма","zh-cn":"每日价值"},"write":false,"read":true,"custom":{"sql.1":{"enabled":true,"storageType":"","counter":false,"aliasId":"","debounceTime":500,"blockTime":0,"changesOnly":true,"changesRelogInterval":30,"changesMinDelta":0,"ignoreBelowNumber":"","disableSkippedValueLogging":false,"retention":0,"customRetentionDuration":365,"maxLength":0,"enableDebugLogs":true,"debounce":1000,"ignoreZero":true}}},"native":{"addr":"linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol"},"type":"state","_id":"statistics.0.save.sumDelta.linkeddevices.0.++HSS7.B.01KG.VK==DDC1+01KG.HZ=BF010.HZ=BF010&TotE_B_TotVol.day","acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"from":"system.adapter.statistics.0","user":"system.user.admin","ts":1731101038184} 17.11.2024, 14:09:35.413 [error]: javascript.0 (9603) script.js.Energie.Tagesverbraeuche_heute: TypeError: (intermediate value).common.name.indexOf is not a function 17.11.2024, 14:09:35.413 [error]: javascript.0 (9603) at Object.<anonymous> (script.js.Energie.Tagesverbraeuche_heute:24:50)