Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. vis editor object browser andere werte als werte in admin

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    UNSOLVED vis editor object browser andere werte als werte in admin

    This topic has been deleted. Only users with topic management privileges can see it.
    • Q
      Qlink @paul53 last edited by

      @paul53

      Es sind tatsächlich keine Zeitstempel vorhanden.

      Hier der Output von deinem Script:

      5c10e0a9-668f-4dc6-a99d-b8f48ac86aa9-image.png

      Wenn ich das richtig lese, sagt das aber eigentlich false und nicht null oder ?

      Ich hätte auch schon folgende Variante mit null probiert, geht aber leider auch nicht:

      f5af8dfe-07e3-4261-90e8-810c2182baa5-image.png

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Qlink last edited by paul53

        @Qlink sagte:

        Es sind tatsächlich keine Zeitstempel vorhanden.
        Hier der Output von deinem Script:

        Damit ist meine Vermutung bestätigt, dass kein Zustand existiert, wenn der Wert nicht true ist, die Datenpunkte also auch nicht triggern können. Vorschlag: Erstelle einen eigenen Datenpunkt vom Typ Werteliste, und verwende diesen in Vis:

        {
          "_id": "0_userdata.0.Stiebel.Status.Betriebsstatus",
          "type": "state",
          "common": {
            "name": "Stiebel Betriebsstatus",
            "role": "",
            "type": "number",
            "read": true,
            "write": true,
            "desc": "Manuell erzeugt",
            "def": 0,
            "min": 0,
            "max": 3,
            "states": {
              "0": "Aus",
              "1": "Heizen",
              "2": "Warmwasser",
              "3": "Kühlen"
            }
          },
          "native": {},
          "from": "system.adapter.admin.0",
          "user": "system.user.admin",
          "ts": 1596889021866,
          "acl": {
            "object": 1636,
            "state": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator"
          }
        }
        

        Die vier Werte können mit einem Blockly-Skript erzeugt werden:

        Blockly_temp.JPG

        Inhalt der Javascript-Funktion notExistsState(id):

        return !existsState(id);
        

        Alternativ kann auch ein eigener Datenpunkt vom Typ "string" zur Anzeige in Vis verwendet werden:

        Blockly_temp.JPG

        Q 1 Reply Last reply Reply Quote 1
        • Q
          Qlink @paul53 last edited by

          @paul53

          Sorry für die späte Rückmeldung. Urlaub und Arbeit haben mich die letzten Wochen etwas ausgelastet.

          Vielen Dank für deinen Input.

          Weißt du auch wie ich mit den Metro Tile Toggle Widgets in Vis den aktuellen Status mit den 4 Werten entsprechend anzeigen/darstellen kann ?

          Soweit ich das sehe kann das Metro Tile Toggle Widget ja "nur" true oder false auswerten, nicht aber die Werte 0 - 3 oder geht das auch ?

          960836f0-85a2-4aaf-80c0-dff68b413c42-image.png
          Beste Grüße

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @Qlink last edited by

            @Qlink sagte:

            Metro Tile Toggle Widgets

            Damit kenne ich mich nicht aus.

            Q 1 Reply Last reply Reply Quote 0
            • Q
              Qlink @paul53 last edited by

              @paul53

              Alles klar, ich denke ich habe eine Lösung gefunden.

              Habe versucht dein Blockly nachzubauen.
              Es reagiert auch, sobald z.B. Warmwasser auf true gesetzt wird, aber sobald Warmwasser wieder null hat, bleibt der Datenpunkt Betriebsstatus auf 2 (Warmwasser) und wird nicht auf 0 (Aus) gesetzt...

              Hier mein nachgebautes Script:

              07630c11-5132-4d13-8c68-c513a801d65d-image.png

              Hab ich wo was falsch verstanden oder übersehen ?

              Beste Grüße

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Qlink last edited by paul53

                @Qlink sagte:

                Hab ich wo was falsch verstanden oder übersehen ?

                Du hast als Vergleichswert die Datenpunkt-ID, vergleichst aber mit Name. Nimm zum Vergleich die Objekt ID aus "Trigger".

                @Qlink sagte in vis editor object browser andere werte als werte in admin:

                sobald Warmwasser wieder null hat, bleibt der Datenpunkt Betriebsstatus auf 2 (Warmwasser) und wird nicht auf 0 (Aus) gesetzt...

                Wenn keiner der 3 Datenpunkte mehr einen Zeitstempel hat, muss nach spätestens 15 s der Wert auf 0 ("Aus") schalten.

                Q 1 Reply Last reply Reply Quote 0
                • Q
                  Qlink @paul53 last edited by

                  @paul53

                  du meinst so ?

                  a22b3d36-02be-4abb-a0f1-a00cc1fd1847-image.png

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @Qlink last edited by paul53

                    @Qlink sagte:

                    du meinst so ?

                    So geht es auch.

                    Q 1 Reply Last reply Reply Quote 0
                    • Q
                      Qlink @paul53 last edited by

                      @paul53

                      Leider klappt das Umschalten des Wertes nach 15s auf 0(Aus) leider nach wie vor nicht ...
                      Er bleibt auf 2(Warmwasser) ...

                      Hast du noch eine Idee ?

                      Beste Grüße

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Qlink last edited by

                        @Qlink sagte:

                        Leider klappt das Umschalten des Wertes nach 15s auf 0(Aus) leider nach wie vor nicht

                        Haben alle 3 Datenpunkte keinen Zeitstempel mehr ? Wir hatten hier geprüft, dass exisitsState(id) false zurück liefert, wenn der Datenpunkt keinen Zustand hat. Folglich müssen alle 3 notExistsState(id) true zurück liefern, wenn keiner der Datenpunkte mehr einen Zustand hat. Bau mal zusätzlich einen Debug-Block in das Intervall ein:

                        Blockly_temp.JPG

                        Q 1 Reply Last reply Reply Quote 0
                        • Q
                          Qlink @paul53 last edited by Qlink

                          @paul53

                          das log spuckt folgendes aus:

                          javascript.0	2020-09-02 13:38:39.633	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:true
                          javascript.0	2020-09-02 13:38:24.619	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:38:09.612	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:37:54.601	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:37:39.599	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:37:24.588	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:37:09.562	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:36:54.565	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at process.topLevelDomainCallback (domain.js:126:23)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at processImmediate (timers.js:658:5)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at tryOnImmediate (timers.js:676:5)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at runCallback (timers.js:705:18)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at Immediate.setImmediate (C:\iobroker\iob01\node_modules\iobroker.js-controller\lib\adapter.js:5384:37)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at Object.stateChange (C:\iobroker\iob01\node_modules\iobroker.javascript\main.js:451:25)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at Object.callback (C:\iobroker\iob01\node_modules\iobroker.javascript\lib\sandbox.js:1052:38)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) at Object.<anonymous> (script.js.vis_Optik_Scripte.ISG_Betriebsstatus:11:7)
                          javascript.0	2020-09-02 13:36:39.553	warn	(2804) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.KUEHLEN" not found (3) states[id]=null
                          javascript.0	2020-09-02 13:36:24.570	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:36:09.556	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:35:54.543	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at process.topLevelDomainCallback (domain.js:126:23)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at processImmediate (timers.js:658:5)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at tryOnImmediate (timers.js:676:5)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at runCallback (timers.js:705:18)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at Immediate.setImmediate (C:\iobroker\iob01\node_modules\iobroker.js-controller\lib\adapter.js:5384:37)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at Object.stateChange (C:\iobroker\iob01\node_modules\iobroker.javascript\main.js:451:25)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at Object.callback (C:\iobroker\iob01\node_modules\iobroker.javascript\lib\sandbox.js:1052:38)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) at Object.<anonymous> (script.js.vis_Optik_Scripte.ISG_Betriebsstatus:11:7)
                          javascript.0	2020-09-02 13:35:39.527	warn	(2804) getState "stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.KUEHLEN" not found (3) states[id]=null
                          

                          und in blockly kommt diese meldung:

                          13:36:39.553	warn	javascript.0 (2804) at Object.<anonymous> (script.js.vis_Optik_Scripte.ISG_Betriebsstatus:11:7)
                          
                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @Qlink last edited by paul53

                            @Qlink
                            "Heizen" hat die ganze Zeit einen Zustand. Was wird im Tab "Objekte" in der Statusansicht gezeigt ?
                            Die Abfrage von "Wert von ..." erzeugt bei nicht vorhandenem Zustand die Warnung. Deshalb vergleiche besser die Objekt ID des Triggers.

                            Blockly_temp.JPG

                            Q 1 Reply Last reply Reply Quote 0
                            • Q
                              Qlink @paul53 last edited by

                              @paul53

                              okay habs jetzt so abgeändert:

                              f76e97ce-cd3f-4f2b-87fd-bfdbbad24f3e-image.png

                              unter Objekte schauts so aus:

                              86d3bde7-5438-4ce4-854c-97a299c15951-image.png

                              a9dc8cf9-3feb-4839-b239-e7ed861a9cbf-image.png

                              a465cf8b-4881-4444-bf96-2bee3cd3a806-image.png

                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @Qlink last edited by

                                @Qlink sagte:

                                okay habs jetzt so abgeändert:

                                Das ist falsch ! Es darf nicht mit "wahr" verglichen werden, sondern mit der Objekt-ID von "KÜHLEN", "HEIZEN".

                                @Qlink sagte in vis editor object browser andere werte als werte in admin:

                                unter Objekte schauts so aus:

                                Bitte in die Statusansicht wechseln.
                                Wenn "HEIZEN" keine Zustandsdaten hat, muss notExistsState(id) true zurück liefern. Was ergibt im Log ?

                                log(existsState("stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN"));
                                
                                Q 1 Reply Last reply Reply Quote 0
                                • Q
                                  Qlink @paul53 last edited by

                                  @paul53

                                  meinst du so?
                                  d5bd7a9e-80ac-422e-8194-c7a0023c50be-image.png

                                  Statusansicht schaut so aus:

                                  05ee5c98-c1d0-4f5a-91fb-efde3b799789-image.png

                                  d991db5c-96c6-41e0-a789-e9bacd57f11b-image.png

                                  Wie/Wo kann ich deinen log-Code eingeben für existsState? Hab ja ein Blockly Script ...

                                  Beste Grüße

                                  paul53 1 Reply Last reply Reply Quote 0
                                  • paul53
                                    paul53 @Qlink last edited by paul53

                                    @Qlink sagte:

                                    Wie/Wo kann ich deinen log-Code eingeben für existsState?

                                    Ein Javascript zum Testen.

                                    @Qlink sagte in vis editor object browser andere werte als werte in admin:

                                    Statusansicht schaut so aus:

                                    Auch bei "HEIZEN" ist kein Zustand zu sehen, also müsste notExistsState(id) auch für "HEIZEN" true zurück liefern.
                                    EDIT: Das ist nicht die Statusansicht !!

                                    Q 1 Reply Last reply Reply Quote 0
                                    • Q
                                      Qlink @paul53 last edited by

                                      @paul53

                                      Ich hab ein javascript erstellt:
                                      e7787e56-35c0-4099-8e53-93cfeaaf4ef7-image.png

                                      Ich sehe aber weder im Script Protokoll noch im iobroker log irgendwelche Einträge davon.

                                      Das einzige was ich im log sehe ist der debug output vom Blockly Script:

                                      javascript.0	2020-09-04 08:54:03.124	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                                      javascript.0	2020-09-04 08:53:48.123	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                                      javascript.0	2020-09-04 08:53:33.117	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                                      javascript.0	2020-09-04 08:53:18.114	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:false
                                      
                                      paul53 1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Qlink last edited by paul53

                                        @Qlink sagte:

                                        noch im iobroker log irgendwelche Einträge davon.

                                        Wurde das Script gestartet ? Ein Log wird nur einmal bei Scriptstart erzeugt. Da offenbar "HEIZEN" das Problem darstellt, logge bitte:

                                        log('Heizen existiert: ' + existsState("stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN") + ', Wert: ' + getState("stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN").val);
                                        

                                        @Qlink sagte in vis editor object browser andere werte als werte in admin:

                                        Statusansicht schaut so aus:

                                        Das ist bei "stiebel-isg.0" nicht die Statusansicht, aber genau die könnte Auskunft geben, was mit "HEIZEN" los ist.

                                        Q 1 Reply Last reply Reply Quote 0
                                        • Q
                                          Qlink @paul53 last edited by

                                          @paul53 said in vis editor object browser andere werte als werte in admin:

                                          log('Heizen existiert: ' + existsState("stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN") + ', Wert: ' + getState("stiebel-isg.0.Info.STATUS.BETRIEBSSTATUS.HEIZEN").val);

                                          Alles klar.
                                          Hier der Logoutput:

                                          javascript.0	2020-09-06 08:26:43.917	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:true
                                          javascript.0	2020-09-06 08:26:28.912	info	(2804) script.js.vis_Optik_Scripte.ISG_Betriebsstatus: Heizen:falseKühlen:trueWW:true
                                          javascript.0	2020-09-06 08:26:20.005	info	(2804) script.js.vis_Optik_Scripte.statuslog: registered 0 subscriptions and 0 schedules
                                          javascript.0	2020-09-06 08:26:20.005	info	(2804) script.js.vis_Optik_Scripte.statuslog: Heizen existiert: true, Wert:
                                          javascript.0	2020-09-06 08:26:19.989	info	(2804) Start javascript script.js.vis_Optik_Scripte.statuslog
                                          

                                          sorry, dann weiß ich leider nicht was du meinst mit statusansicht von "stiebel-isg.0" und müsstest es mir genauer erklären...

                                          Beste Grüße

                                          paul53 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @Qlink last edited by paul53

                                            @Qlink sagte:

                                            Heizen existiert: true, Wert:

                                            Offenbar existiert der Zustand von "HEIZEN", hat aber keinen Wert (bzw. Wert null). Dann ändere die Abfrage von
                                            notExistsState id "HEIZEN" --> nicht Wert vom Objekt ID "HEIZEN"

                                            Q 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            890
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            select id vis object browser
                                            3
                                            31
                                            1249
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo