Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. wo kann ich Abfragen welche Adapter aktuell laufen ?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    wo kann ich Abfragen welche Adapter aktuell laufen ?

    This topic has been deleted. Only users with topic management privileges can see it.
    • mickym
      mickym Most Active @luder last edited by mickym

      @luder Nein ich sehe gerade es funktioniert direkt mit dem alive Datenpunkt.

      c5819886-12f1-461b-94a6-7fb099db459d-image.png

      Also mit dieser Subscription bekommst Du den Status:

      system.adapter.*.alive
      

      In NodeRed geht das dann leicht zu sammeln und in einen Datenpunkt zu schreiben:

      36ed448c-f49f-4b15-9bd2-96b49350786c-image.png

      Das ging eine Zeitlang nicht - scheint aber nun zu gehen - das Objekt kann man dann als ein JSON wegschreiben:

      {
        "yahka.0": true,
        "sql.0": true,
        "simple-api.0": true,
        "mqtt.1": true,
        "mercedesme.0": true,
        "socketio.0": true,
        "javascript.0": true,
        "ping.0": true,
        "tuya.0": true,
        "pi-hole.0": true,
        "sourceanalytix.0": true,
        "node-red.0": true,
        "info.0": true,
        "web.0": true,
        "admin.0": true,
        "mqtt.2": true,
        "backitup.0": true,
        "node-red.1": true,
        "linux-control.0": true,
        "tr-064.0": true
      }
      
      L 1 Reply Last reply Reply Quote 0
      • L
        luder @mickym last edited by

        @mickym sagte in wo kann ich Abfragen welche Adapter aktuell laufen ?:

        Danke für deine Mühe, aber bei nodered stehe ich erst mal auf dem Schauch.
        Die Bausteine msg.topic und join finde ich bei mir garnicht. Da müsste ich mich dann erst mal einarbeiten. Weis auch nicht wo ich deinen Beispieltext einbinden müsste.

        mickym 1 Reply Last reply Reply Quote 0
        • mickym
          mickym Most Active @luder last edited by mickym

          @luder Na Ich mach Dir den Flow fertig - dann musst den nur importieren und er schreibt Dir den Adapterstatus in einen Datenpunkt.

          So Du musst nur den Flow hier importieren:

          [
             {
                 "id": "c1b5180b291ebe18",
                 "type": "ioBroker in",
                 "z": "289f539dcc33814e",
                 "name": "admin.0 alive",
                 "topic": "system.adapter.*.alive",
                 "payloadType": "value",
                 "onlyack": "",
                 "func": "all",
                 "gap": "",
                 "fireOnStart": "false",
                 "outFormat": "ioBroker",
                 "x": 350,
                 "y": 4520,
                 "wires": [
                     [
                         "3d081b580c8ac257"
                     ]
                 ]
             },
             {
                 "id": "3d081b580c8ac257",
                 "type": "change",
                 "z": "289f539dcc33814e",
                 "name": "",
                 "rules": [
                     {
                         "t": "change",
                         "p": "topic",
                         "pt": "msg",
                         "from": "system\\.adapter\\.(.*)\\.alive$",
                         "fromt": "re",
                         "to": "$1",
                         "tot": "str"
                     }
                 ],
                 "action": "",
                 "property": "",
                 "from": "",
                 "to": "",
                 "reg": false,
                 "x": 590,
                 "y": 4520,
                 "wires": [
                     [
                         "a9a45c239eed0140"
                     ]
                 ]
             },
             {
                 "id": "a9a45c239eed0140",
                 "type": "join",
                 "z": "289f539dcc33814e",
                 "name": "",
                 "mode": "custom",
                 "build": "object",
                 "property": "payload",
                 "propertyType": "msg",
                 "key": "topic",
                 "joiner": "\\n",
                 "joinerType": "str",
                 "accumulate": true,
                 "timeout": "",
                 "count": "1",
                 "reduceRight": false,
                 "reduceExp": "",
                 "reduceInit": "",
                 "reduceInitType": "",
                 "reduceFixup": "",
                 "x": 770,
                 "y": 4520,
                 "wires": [
                     [
                         "dbbe7d7dd275a34a"
                     ]
                 ]
             },
             {
                 "id": "dbbe7d7dd275a34a",
                 "type": "json",
                 "z": "289f539dcc33814e",
                 "name": "",
                 "property": "payload",
                 "action": "",
                 "pretty": false,
                 "x": 910,
                 "y": 4520,
                 "wires": [
                     [
                         "e0d4bc649cd336b8"
                     ]
                 ]
             },
             {
                 "id": "e0d4bc649cd336b8",
                 "type": "ioBroker out",
                 "z": "289f539dcc33814e",
                 "name": "",
                 "topic": "0_userdata.0.adapter_alive",
                 "ack": "true",
                 "autoCreate": "false",
                 "stateName": "",
                 "role": "",
                 "payloadType": "",
                 "readonly": "",
                 "stateUnit": "",
                 "stateMin": "",
                 "stateMax": "",
                 "x": 1120,
                 "y": 4520,
                 "wires": []
             }
          ]
          

          und den Datenpunkt unter 0_userdata.0.adapter_alive erstellen.

          Dann wird Dir dort der Status als JSON weggeschrieben: 8819a371-540c-464e-a0e3-768b50c1c47d-image.png

          Den kannst dann mit Deiner Logikmaschine wieder analysieren. Ich kann den Flow aber auch vervollständigen, dass in einem Datenpunkt false rein geschrieben wird, wenn ein Adapter nicht läuft.

          Wenn Du nicht weisst wie Du den Flow importierst, dann einfach den Code in die Zwischenablage kopieren:
          Auf Import
          08a099e9-250a-4be4-8b44-27eb946d6d35-image.png

          Den Inhalt der Zwischenablage hier reinkopieren
          2296241f-3a5a-4319-b552-65bc39937eae-image.png
          und dann auf Deploy und übernehmen. Wie gesagt vorher noch den Datenpunkt unter 0_userdata.0 anlegen.

          Ich schau mal, ob ich es mit JS noch hinbekomme - aber das tut im Moment nicht. 😉

          L 1 Reply Last reply Reply Quote 0
          • L
            luder @mickym last edited by

            @mickym Vielen Dank, Du bist ja heute mein Weihnachtsmann

            Vom Prinzip läuft es schon. Das steht jetz alles in diesem Json File.
            Könnte man das ggf. auch noch so machen, das es direkt in einem entsprechenden Datenpunkt landet (wie Du ja oben schon angedeutet hast).
            Die Datenpunkte müsste ich dann wahrscheinlich entsprechend erstellen.

            Eine blöde Frage noch, warum tauchen denn diese Objekte nicht direkt im iobroker unter Objekte auf?

            mickym 2 Replies Last reply Reply Quote 0
            • mickym
              mickym Most Active @luder last edited by mickym

              @luder Klar kann ich machen - aber dann hast Du ja nichts anderes als Du jetzt schon mit dem alive Datenpunkt hast. Ich kann Dir auch alles in einzelne Datenpunkte schreiben lassen, aber was für einen Gewinn hättest Du davon? Dann kannst Du doch gleich die Datenpunkte direkt abfragen, oder?

              1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @luder last edited by

                @luder sagte in wo kann ich Abfragen welche Adapter aktuell laufen ?:

                Eine blöde Frage noch, warum tauchen denn diese Objekte nicht direkt im iobroker unter Objekte auf?

                Doch mach mal den Expertenmodus an:

                14328035-b8ce-48b6-8280-9e56e9a674b7-image.png

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @mickym last edited by mickym

                  So mit JS habe ich zumindest nun die subscription hinbekommen. Das spukt Dir den Adapterstatus nun aus den subscriptions aus:

                  on({id:/system\.adapter\..*\.alive/,
                   change:'any'}, function (obj) {
                    var value = obj.state.val;
                    console.log(obj.id);
                    console.log(value);
                  });
                  

                  Also wie gesagt einzelne Datenpunkte hast Du ja bereits.

                  L 1 Reply Last reply Reply Quote 0
                  • L
                    luder @mickym last edited by

                    @mickym Vielen Dank, jetzt habe ich alles zusammen und geht so wie ich es mit vorgstellt habe und wieder was dazu gelernt.

                    Wünsche Dir noch einen schöne 2ten Weihnachstag.

                    1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active last edited by mickym

                      So der Vollständigkeit halber - hier alles in JS, was ich vorher über den NodeRed Flow gemacht habe.

                      var adapters = {};
                      
                      on({id:/system\.adapter\..*\.alive/,
                       change:'any'}, function (obj) {
                        var value = obj.state.val;
                        var key = obj.id.replace(/system\.adapter\.(.*)\.alive$/,'$1');
                        adapters[key] = value;
                        setState('0_userdata.0.adapter_alive', JSON.stringify(adapters), true);
                        // console.log(adapters);
                      });
                      

                      schreibt wie gesagt einen JSON von allen Adapterstatus in einen Datenpunkt:

                      {
                        "yahka.0": true,
                        "sql.0": true,
                        "simple-api.0": true,
                        "mqtt.1": true,
                        "mercedesme.0": true,
                        "socketio.0": true,
                        "javascript.0": true,
                        "ping.0": true,
                        "tuya.0": true,
                        "pi-hole.0": true,
                        "sourceanalytix.0": true,
                        "node-red.0": true,
                        "info.0": true,
                        "web.0": true,
                        "admin.0": true,
                        "mqtt.2": true,
                        "backitup.0": true,
                        "node-red.1": true,
                        "linux-control.0": true,
                        "tr-064.0": true
                      }
                      
                      1 Reply Last reply Reply Quote 0
                      • David G.
                        David G. @luder last edited by

                        @luder

                        Schau mal in meinen Signatur.
                        Da verlinke ich zu ein paar Tabellen von mir.

                        Da ist auch eine für Adapter bei.
                        Sollte eigentlich in jede Visualisierung einzubinden sein.

                        Dann hat man es bei Bedarf direkt schön vor sich.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        812
                        Online

                        31.9k
                        Users

                        80.3k
                        Topics

                        1.3m
                        Posts

                        4
                        14
                        426
                        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