Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Telegram als Adapter und Nodered

    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

    Telegram als Adapter und Nodered

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

      @basti17683 du brauchst den Adapter nicht wenn du die Node nutzt bzw. Umgekehrt.

      Basti17683 1 Reply Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @Basti17683 last edited by

        @basti17683 sagte in Telegram als Adapter und Nodered:

        meinen anfänglichen Post mal editiert und erweitert

        ist nie eine gute Idee weil es keinen Grund gibt alle Beiträge nochmal zu lesen...

        Basti17683 1 Reply Last reply Reply Quote 0
        • Basti17683
          Basti17683 @DJMarc75 last edited by

          @djmarc75 ihr habt bereits während des editierens geantwortet, daher ist dass so passiert... Ich weiß dass es hier die Nachvollziehbarkeit nicht einfacher macht. Passiert nicht mehr 🙂

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

            @mickym Bislang konnte ich die Node nutzen.
            Für mein jetziges Vorhaben bzgl dem Müllkalender finde ich per Nodered keinen Lösungsansatz, weshalb ich hier auf Blockly umgeschwenkt bin um das hier zu realisieren.

            c3c805ca-52e5-4d86-9d69-3f995b49992b-grafik.png

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

              @basti17683 verstehe ich nicht. Du kannst bis auf sendto alles mit NodeRed machen und hast keinen Vorteil mit Blockly.

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

                @mickym ja und wo ist das Problem. Installiere dir ggf. Die cron-plus Node, aber ich seh da kein Problem. Was macht die cron-Regel?

                Basti17683 1 Reply Last reply Reply Quote 1
                • Basti17683
                  Basti17683 @mickym last edited by

                  @mickym mit welcher node würdest du denn

                  • den Zeitplan und
                  • den Vergleich auf das Objekt für die verbleibenden Tage machen?

                  Ich lese mich da gerne ein - nur vielleicht einen Schubbser in die richtige Richtung...

                  Die cron Regel ruft einen Zeitplan auf in welchem man beispielsweise einstellen kann dass er jeden Tag um 18:00 prüfen soll, wieviel Tage noch zur nächsten Leerung verbleiben

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

                    @mickym Die cron plus node habe ich mir jetzt mal installiert.
                    Ich versuche mich da mal einzulesen.
                    Per Blockly ist es für einen "Nicht-Programmierer" definitiv einfacher 🙂
                    Das anlegen des Zeitplans geht gut, ich muss nur mal sehen mit was der genau gefüttert werden muss.
                    Aber da gibt es sicher ne Doku dazu.
                    Es war jedenfalls mal der Schubbser in die richtige Richtung.

                    Den Telegram Adapter deinstalliere ich wieder da es damit offensichtich ist dass beides nicht geht. Dann lasse ich den als Node...

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

                      @basti17683 Für solche Einfachen Aufgaben brauchst nicht mal die CronPlus Node - das kann jede Inject Node machen:

                      a6d0d85a-52f8-4026-8cc0-a1f4cea983bc-image.png

                      Auslesen kannst Du dann jeden Datenpunkt mit einer iobroker-Get Node. Ggf. hast Du mit einer Change NOde viel bessere Möglichkeiten - über die Moments Bibliothek die Zeitdifferenz zu berechen.

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

                        Für die Zeitverarbeitung auch im Vergleich zu Blockly habe ich hier einen ganzen Thread: https://forum.iobroker.net/topic/50086/datum-und-zeitverarbeitung-mit-nodered

                        Basti17683 1 Reply Last reply Reply Quote 1
                        • Basti17683
                          Basti17683 @mickym last edited by

                          @mickym Super, den lese ich mir heute mal durch, danke!
                          Die INject Node habe ich schon zig mal verwendet, aber nur immer zum testen. Dass die solche zusätzlichen Zeitbasierende Dinge mit kann wusste ich nicht. Danke!

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

                            @basti17683 Na in dem Fall ist ja nicht mal Datumsverarbeitung erforderlich. Der Flow ist so easy - das ich echt etwas erstaunt bin, warum Du deswegen auf Blockly wechselst. - Ich mach Dir mal den Flow - ich hab nur keine Telegram-Node.

                            Ich mach Dir mal den Flow analog zum Blockly - aber ich halte nichts von Zeittriggern. Schöner ist eigentlich wenn man Next Days Left Datenpunkt selbst triggern ließe. Aber ich machs mal so wie in dem Blockly.

                            Als Simulation für Deinen Datenpunkte des Kalenders - habe ich mal die beiden Datenpunkte angelegt:

                            48740943-9a18-4ae1-989f-3bee8befa19e-image.png

                            Ich verstehe ehrlich nicht - was das Problem war - das macht im Prinzip das gleiche wie das Blockly. Musst nur die DP anpassen.

                            efc8f25b-83f6-4cb6-899f-f8fff2582ca8-image.png

                            [
                               {
                                   "id": "5d674b7b47749671",
                                   "type": "inject",
                                   "z": "7e6af0015415146d",
                                   "name": "Trigger um 18:00 Uhr. ",
                                   "props": [
                                       {
                                           "p": "payload"
                                       }
                                   ],
                                   "repeat": "",
                                   "crontab": "00 18 * * *",
                                   "once": false,
                                   "onceDelay": 0.1,
                                   "topic": "",
                                   "payload": "true",
                                   "payloadType": "bool",
                                   "x": 160,
                                   "y": 3400,
                                   "wires": [
                                       [
                                           "28c8e85eb6b06dca"
                                       ]
                                   ]
                               },
                               {
                                   "id": "28c8e85eb6b06dca",
                                   "type": "ioBroker get",
                                   "z": "7e6af0015415146d",
                                   "name": "inDays",
                                   "topic": "0_userdata.0.Test.Muell.Next_Days_Left",
                                   "attrname": "inDays",
                                   "payloadType": "value",
                                   "errOnInvalidState": "nothing",
                                   "x": 350,
                                   "y": 3400,
                                   "wires": [
                                       [
                                           "561a8a6ccce8dffc"
                                       ]
                                   ]
                               },
                               {
                                   "id": "561a8a6ccce8dffc",
                                   "type": "switch",
                                   "z": "7e6af0015415146d",
                                   "name": "inDays = 1",
                                   "property": "inDays",
                                   "propertyType": "msg",
                                   "rules": [
                                       {
                                           "t": "eq",
                                           "v": "1",
                                           "vt": "num"
                                       }
                                   ],
                                   "checkall": "true",
                                   "repair": false,
                                   "outputs": 1,
                                   "x": 510,
                                   "y": 3400,
                                   "wires": [
                                       [
                                           "74fac1eb1db6056a"
                                       ]
                                   ]
                               },
                               {
                                   "id": "74fac1eb1db6056a",
                                   "type": "ioBroker get",
                                   "z": "7e6af0015415146d",
                                   "name": "getTrashName",
                                   "topic": "0_userdata.0.Test.Muell.Next_Types_as_Text",
                                   "attrname": "payload",
                                   "payloadType": "value",
                                   "errOnInvalidState": "nothing",
                                   "x": 700,
                                   "y": 3400,
                                   "wires": [
                                       [
                                           "9b7e6ab1a776c8a4"
                                       ]
                                   ]
                               },
                               {
                                   "id": "9b7e6ab1a776c8a4",
                                   "type": "template",
                                   "z": "7e6af0015415146d",
                                   "name": "",
                                   "field": "payload",
                                   "fieldType": "msg",
                                   "format": "handlebars",
                                   "syntax": "mustache",
                                   "template": "Morgen werden folgende Mülleimer geleert: {{payload}} !",
                                   "output": "str",
                                   "x": 880,
                                   "y": 3400,
                                   "wires": [
                                       [
                                           "e8aa5ea0391dd65a"
                                       ]
                                   ]
                               },
                               {
                                   "id": "e8aa5ea0391dd65a",
                                   "type": "debug",
                                   "z": "7e6af0015415146d",
                                   "name": "Telegram Node",
                                   "active": true,
                                   "tosidebar": true,
                                   "console": false,
                                   "tostatus": false,
                                   "complete": "payload",
                                   "targetType": "msg",
                                   "statusVal": "",
                                   "statusType": "auto",
                                   "x": 1060,
                                   "y": 3400,
                                   "wires": []
                               }
                            ]
                            

                            Und Du kannst den Flow mit der Inject Node auch noch testen.

                            1 Reply Last reply Reply Quote 0
                            • Basti17683
                              Basti17683 last edited by

                              @mickym Danke für dein Mühe.
                              Ja das liegt daran dass ich es noch nicht so kapiere wie ich gerne würde. Bin Elektrotechniker und hab mit den Programmiersprachen noch nicht so viel Erfahrung.
                              Das was du mir geschickt hast konnte ich importieren. Wenn ich das allerdings meinem "Telegram Sender" füttere dann bekomme ich eine Fehlermeldung da dieser meist eine Funktion vorgeschalten hat. In dieser muss sich die Chat ID befinden damit er weiß wohin er es senden soll.

                              Gibt es etwas was du mir raten würdest um hier mehr Durchblick zu erhalten? Klar kann man sich durchgooglen, aber letztlich ist es wenig verstehen und mehr zusammen-kopieren. Ich will ja wirklich verstehen und dazulernen - weiß aber gar nicht wo ich hier anfangen soll.

                              Das steht in der vorgeschaltenen Funktionsnode:

                              msg.payload = {
                                  "chatId": -82123456, 
                                  "type": "message", 
                                  "content": msg.payload
                                  }
                              return msg;
                              

                              Wie lässt man den "Next Days Left" Datenpunkt selbst triggern? Weil du gemeint hast das wäre die schönere Lösung.

                              Viele Wege führen nach Rom - blöd nur wenn man keinen davon versteht. Wenn du mir Lern Videos hast die du mir ans Herz legen würdest, dann gerne her damit.

                              Danke für deine Geduld und einen schönen Abend!

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

                                @basti17683 Gut aber wenn Du die function Node einfach verbindest, der schreibt ja die payload in den content des neuen payload Objektes. Sprich Du musst eigentlich die function Node mit deiner Telegramm Node nur hinter die template Node schalten.

                                Wie lässt man den "Next Days Left" Datenpunkt selbst triggern? Weil du gemeint hast das wäre die schönere Lösung.

                                Nun irgendwas ändert doch den Wert des Datenpunktes Next Days Left. Wahrscheinlich um Mitternacht. Dann kannst Du Dir doch dann wenn sich dieser Wert ändert, den Flow anstoßen - das muss doch nicht zu einer bestimmten Uhrzeit sein. Oder willst Du immer um 18 Uhr die Nachricht bekommen? - Wenn ja dann ist es OK wie Du es machst.

                                Ansonsten kann ich Dir die folgende Quellen geben - zum Lernen.

                                Ist zwar schon älter der Blog, aber für die Grundlagen immer noch aktuell: https://www.smarthome-tricks.de/uebersicht-iobroker-node-red/

                                Ein paar kleine Videos hat auch Matthias - der hier an Board sehr aktiv ist, auch zum Thema NodeRed gemacht: https://haus-automatisierung.com/nodered-tutorial-reihe/

                                Ansonsten - wenn Englisch kein Problem ist und Du mal was nachschlagen oder fortgeschritten bist, dann empfehle ich den Kurs von Steve:

                                https://stevesnoderedguide.com/

                                Ansonsten kannst Du die von Steve auch mal diese Playliste anschauen - da hat er knapp 80 Videos zu verschiedenen Nodes gemacht: https://www.youtube.com/watch?v=I6ejwwKTsZc&list=PLk0D2S-fqJ7YvR1wrpl8A4mhtBbYOlsE4

                                Das macht aber keinen Sinn, sondern je nachdem wenn Du eine bestimmte Node suchst.

                                Und zu guten Letzt sind wir ja auch noch da. 😉

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

                                  @basti17683 Und auch wenn Du vielleicht die eine oder andere function Node im Netz siehst, wie diese hier, die Deiner telegram Node vorgeschaltet ist, kann man das auch OHNE machen - dann musst Du auch nicht soviel programmieren. Du musst das nur verstehen, wie ein Schaltplan. Und kopiere nicht soviel aus dem Netz die Programmieren viel zu viel. Du kommst in 95% der Fälle auch in NodeRed ohne Programmierung aus, wenn Du weißt, was die Nodes Dir alles für Arbeit abnehmen.

                                  1 Reply Last reply Reply Quote 0
                                  • Basti17683
                                    Basti17683 last edited by

                                    @mickym said in Telegram als Adapter und Nodered:

                                    Du kommst in 95% der Fälle auch in NodeRed ohne Programmierung aus, wenn Du weißt, was die Nodes Dir alles für Arbeit abnehmen.

                                    Hallo Micky,
                                    ich habe die letzten Monate dank deiner Links einiges dazu lernen können. Hast du mir hier nur evtl noch einen Lösungsansatz?
                                    Die Ausgabe meines Objektes bringt mir diverse Abfalltypen. Jetzt würde ich gern mit einer Switch oder Change Node nach Text filtern?
                                    Wenn besipielsweise "Restmüll und Biotonne" kommt dann würde ich gerne dass er in dieser einen Message -> 2 Objekte erkennt, und mir jeweils für die/den betroffenen Zustand/Zustände die True Signale ausgibt.

                                    Anbei meine beiden gedanklichen Ansätze...

                                    [
                                        {
                                            "id": "e5528eb5167161cb",
                                            "type": "tab",
                                            "label": "Müll",
                                            "disabled": false,
                                            "info": "[{\"id\":\"1dcb9f56.0c98f1\",\"type\":\"subflow\",\"name\":\"sendMessage\",\"info\":\"\",\"category\":\"\",\"in\":[{\"x\":160,\"y\":280,\"wires\":[{\"id\":\"7113a90f.78d288\"}]}],\"out\":[{\"x\":1200,\"y\":300,\"wires\":[{\"id\":\"c015a8c4.074c68\",\"port\":0}]}],\"env\":[],\"color\":\"#DDAA99\"},{\"id\":\"c015a8c4.074c68\",\"type\":\"telegram sender\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"\",\"bot\":\"\",\"haserroroutput\":false,\"outputs\":1,\"x\":1070,\"y\":300,\"wires\":[[]]},{\"id\":\"7113a90f.78d288\",\"type\":\"switch\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"\",\"property\":\"sentMessageId\",\"propertyType\":\"msg\",\"rules\":[{\"t\":\"nnull\"},{\"t\":\"else\"}],\"checkall\":\"true\",\"repair\":false,\"outputs\":2,\"x\":250,\"y\":280,\"wires\":[[\"291984d6.17272c\"],[\"dae111f3.e48ba\"]]},{\"id\":\"dae111f3.e48ba\",\"type\":\"function\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"Nachricht erstellen\",\"func\":\"var content = msg.message;\\n\\nmsg.payload = {};\\nmsg.payload.chatId = msg.chatId;\\nmsg.payload.options = {\\n    parse_mode : \\\"Markdown\\\"\\n};\\nmsg.payload.content = content.toString();\\nmsg.payload.type = 'message';\\n\\nreturn [msg];\",\"outputs\":1,\"noerr\":0,\"initialize\":\"\",\"finalize\":\"\",\"x\":870,\"y\":300,\"wires\":[[\"c015a8c4.074c68\"]]},{\"id\":\"99589480.be74f8\",\"type\":\"telegram sender\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"\",\"bot\":\"\",\"haserroroutput\":true,\"outputs\":2,\"x\":650,\"y\":260,\"wires\":[[\"dae111f3.e48ba\"],[\"dae111f3.e48ba\"]]},{\"id\":\"291984d6.17272c\",\"type\":\"function\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"L�schobjekt erstellen\",\"func\":\"msg.payload = {};\\nmsg.payload.chatId = msg.chatId;\\nmsg.payload.content = msg.sentMessageId;\\nmsg.payload.type = 'deleteMessage';\\nmsg.payload.options = {\\n    message_id : msg.sentMessageId,\\n    chat_id : msg.payload.chatId\\n};\\n\\nreturn [msg];\",\"outputs\":1,\"noerr\":0,\"initialize\":\"\",\"finalize\":\"\",\"x\":440,\"y\":260,\"wires\":[[\"99589480.be74f8\"]]},{\"id\":\"6cf432ca.c994fc\",\"type\":\"comment\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"Nachricht erst l�schen, dann neu erstellen (wird sie nur geupdated, wird der Zeitstempel nicht aktualisiert und identische Nachrichten k�nnen nicht versendet werden)\",\"info\":\"\",\"x\":650,\"y\":40,\"wires\":[]},{\"id\":\"1719c06f.03c4a\",\"type\":\"comment\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"msg.chatId = ID des Chats, wohin die Nachricht gepostet werden soll\",\"info\":\"\",\"x\":360,\"y\":80,\"wires\":[]},{\"id\":\"7c488ee.709da7\",\"type\":\"comment\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"msg.sentMessageId = Nachrichten-ID der letzten (zugeh�rigen) Nachricht, die ersetzt werden soll\",\"info\":\"\",\"x\":450,\"y\":120,\"wires\":[]},{\"id\":\"56fd0e66.a48f2\",\"type\":\"comment\",\"z\":\"1dcb9f56.0c98f1\",\"name\":\"msg.message = Text-Nachricht, die gesendet werden soll, Markdown m�glich\",\"info\":\"\",\"x\":390,\"y\":160,\"wires\":[]},{\"id\":\"dca76fb9.f45c6\",\"type\":\"inject\",\"z\":\"3ba3e58f.887512\",\"name\":\"t�glich 0400 den Entsorgungs-Kalender abfragen\",\"props\":[{\"p\":\"payload\"}],\"repeat\":\"\",\"crontab\":\"00 04 * * *\",\"once\":false,\"onceDelay\":0.1,\"topic\":\"\",\"payload\":\"\",\"payloadType\":\"date\",\"x\":270,\"y\":460,\"wires\":[[\"eb319001.ff2e9\"]]},{\"id\":\"eb319001.ff2e9\",\"type\":\"ical-upcoming\",\"z\":\"3ba3e58f.887512\",\"confignode\":\"\",\"checkall\":false,\"cron\":\"\",\"timeout\":\"28\",\"timeoutUnits\":\"days\",\"name\":\"\",\"offset\":\"\",\"endpreview\":\"100\",\"preview\":\"14\",\"previewUnits\":\"days\",\"pastview\":\"\",\"pastviewUnits\":\"days\",\"trigger\":\"always\",\"filter\":\"\",\"x\":590,\"y\":460,\"wires\":[[\"630ff9a6.e2e2b8\"]]},{\"id\":\"630ff9a6.e2e2b8\",\"type\":\"function\",\"z\":\"3ba3e58f.887512\",\"name\":\"Termine aktualisieren\",\"func\":\"let map = global.get(\\\"disposalData\\\") || {};\\ndelete map[\\\"today\\\"];\\ndelete map[\\\"tomorrow\\\"];\\n\\nlet upcoming = false;\\nlet disposalDates = msg.payload;\\nfor (var i = 0; i < disposalDates.length; i++) {\\n    let key = disposalDates[i].topic;\\n    let countdown = disposalDates[i].countdown.days + 1;\\n    \\n    map[key] = countdown || 0;\\n\\n    if (countdown == 0) {\\n        if (map[\\\"today\\\"] === undefined) {\\n            map[\\\"today\\\"] = key;\\n        } else {\\n            map[\\\"today\\\"] += \\\" und \\\" + key;\\n        }\\n        upcoming = true;\\n\\n    } else if (countdown == 1) {\\n        if (map[\\\"tomorrow\\\"] === undefined) {\\n            map[\\\"tomorrow\\\"] = key;\\n        } else {\\n            map[\\\"tomorrow\\\"] += \\\" und \\\" + key;\\n        }\\n        upcoming = true;\\n    }\\n}\\n\\nglobal.set(\\\"disposalData\\\", map);\\n\",\"outputs\":1,\"noerr\":0,\"initialize\":\"\",\"finalize\":\"\",\"x\":820,\"y\":460,\"wires\":[[]]},{\"id\":\"28e9ceb5.e40b42\",\"type\":\"comment\",\"z\":\"3ba3e58f.887512\",\"name\":\"Abfalltermine\",\"info\":\"\",\"x\":110,\"y\":420,\"wires\":[]},{\"id\":\"2db5bad9.f786b6\",\"type\":\"inject\",\"z\":\"3ba3e58f.887512\",\"name\":\"t�glich 1600 nachschauen, ob morgen etwas abgeholt wird\",\"props\":[{\"p\":\"payload\"}],\"repeat\":\"\",\"crontab\":\"00 16 * * *\",\"once\":false,\"onceDelay\":0.1,\"topic\":\"\",\"payload\":\"\",\"payloadType\":\"date\",\"x\":300,\"y\":520,\"wires\":[[\"debd0fe3.ddfc7\"]]},{\"id\":\"c14dd758.d1d338\",\"type\":\"inject\",\"z\":\"3ba3e58f.887512\",\"name\":\"t�glich 0600 erinnern, dass gleich etwas abgeholt wird\",\"props\":[{\"p\":\"payload\"}],\"repeat\":\"\",\"crontab\":\"00016 * * *\",\"once\":false,\"onceDelay\":0.1,\"topic\":\"\",\"payload\":\"\",\"payloadType\":\"date\",\"x\":290,\"y\":560,\"wires\":[[\"7b365890.f35968\"]]},{\"id\":\"debd0fe3.ddfc7\",\"type\":\"function\",\"z\":\"3ba3e58f.887512\",\"name\":\"Nachricht f�r morgige Termine bauen\",\"func\":\"let map = global.get('disposalData') || {};\\n\\nif (map[\\\"tomorrow\\\"] !== undefined) {\\n    msg.message = \\\"",
                                            "env": []
                                        },
                                        {
                                            "id": "5d674b7b47749671",
                                            "type": "inject",
                                            "z": "e5528eb5167161cb",
                                            "name": "Trigger um 18:00 Uhr. ",
                                            "props": [
                                                {
                                                    "p": "payload"
                                                }
                                            ],
                                            "repeat": "",
                                            "crontab": "00 18 * * *",
                                            "once": false,
                                            "onceDelay": 0.1,
                                            "topic": "",
                                            "payload": "true",
                                            "payloadType": "bool",
                                            "x": 150,
                                            "y": 340,
                                            "wires": [
                                                [
                                                    "28c8e85eb6b06dca"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "28c8e85eb6b06dca",
                                            "type": "ioBroker get",
                                            "z": "e5528eb5167161cb",
                                            "name": "Verbleibende Tage",
                                            "topic": "trashschedule.0.next.daysLeft",
                                            "attrname": "inDays",
                                            "payloadType": "value",
                                            "errOnInvalidState": "nothing",
                                            "x": 370,
                                            "y": 340,
                                            "wires": [
                                                [
                                                    "561a8a6ccce8dffc"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "561a8a6ccce8dffc",
                                            "type": "switch",
                                            "z": "e5528eb5167161cb",
                                            "name": "Vergleich",
                                            "property": "inDays",
                                            "propertyType": "msg",
                                            "rules": [
                                                {
                                                    "t": "eq",
                                                    "v": "1",
                                                    "vt": "num"
                                                },
                                                {
                                                    "t": "lte",
                                                    "v": "4",
                                                    "vt": "num"
                                                }
                                            ],
                                            "checkall": "true",
                                            "repair": false,
                                            "outputs": 2,
                                            "x": 560,
                                            "y": 340,
                                            "wires": [
                                                [
                                                    "74fac1eb1db6056a"
                                                ],
                                                [
                                                    "fd10917f9ec60c1c"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "74fac1eb1db6056a",
                                            "type": "ioBroker get",
                                            "z": "e5528eb5167161cb",
                                            "name": "[object Object]",
                                            "topic": "trashschedule.0.next.typesText",
                                            "attrname": "payload",
                                            "payloadType": "value",
                                            "errOnInvalidState": "nothing",
                                            "x": 500,
                                            "y": 160,
                                            "wires": [
                                                [
                                                    "9b7e6ab1a776c8a4"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "9b7e6ab1a776c8a4",
                                            "type": "template",
                                            "z": "e5528eb5167161cb",
                                            "name": "",
                                            "field": "payload",
                                            "fieldType": "msg",
                                            "format": "handlebars",
                                            "syntax": "mustache",
                                            "template": "Morgen werden folgende Mülleimer geleert: {{payload}} !",
                                            "output": "str",
                                            "x": 720,
                                            "y": 160,
                                            "wires": [
                                                []
                                            ]
                                        },
                                        {
                                            "id": "fd10917f9ec60c1c",
                                            "type": "ioBroker get",
                                            "z": "e5528eb5167161cb",
                                            "name": "[object Object]",
                                            "topic": "trashschedule.0.next.typesText",
                                            "attrname": "payload",
                                            "payloadType": "value",
                                            "errOnInvalidState": "nothing",
                                            "x": 520,
                                            "y": 460,
                                            "wires": [
                                                [
                                                    "63d3fdc7738ac3dc",
                                                    "cecf9569ab79642a",
                                                    "7a382177e7c2a394",
                                                    "c10f72d2e82adfc8"
                                                ]
                                            ]
                                        },
                                        {
                                            "id": "63d3fdc7738ac3dc",
                                            "type": "switch",
                                            "z": "e5528eb5167161cb",
                                            "name": "Müllart",
                                            "property": "payload",
                                            "propertyType": "msg",
                                            "rules": [
                                                {
                                                    "t": "cont",
                                                    "v": "Biotonne",
                                                    "vt": "str"
                                                },
                                                {
                                                    "t": "cont",
                                                    "v": "Restmüll",
                                                    "vt": "str"
                                                },
                                                {
                                                    "t": "cont",
                                                    "v": "Papiertonne",
                                                    "vt": "str"
                                                }
                                            ],
                                            "checkall": "true",
                                            "repair": false,
                                            "outputs": 3,
                                            "x": 770,
                                            "y": 440,
                                            "wires": [
                                                [],
                                                [],
                                                []
                                            ]
                                        },
                                        {
                                            "id": "cecf9569ab79642a",
                                            "type": "change",
                                            "z": "e5528eb5167161cb",
                                            "name": "Biotonne",
                                            "rules": [
                                                {
                                                    "t": "change",
                                                    "p": "payload",
                                                    "pt": "msg",
                                                    "from": "Biotonne",
                                                    "fromt": "str",
                                                    "to": "true",
                                                    "tot": "bool"
                                                }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 720,
                                            "y": 520,
                                            "wires": [
                                                []
                                            ]
                                        },
                                        {
                                            "id": "7a382177e7c2a394",
                                            "type": "change",
                                            "z": "e5528eb5167161cb",
                                            "name": "Restmüll",
                                            "rules": [
                                                {
                                                    "t": "change",
                                                    "p": "payload",
                                                    "pt": "msg",
                                                    "from": "Restmüll",
                                                    "fromt": "str",
                                                    "to": "true",
                                                    "tot": "bool"
                                                }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 720,
                                            "y": 560,
                                            "wires": [
                                                []
                                            ]
                                        },
                                        {
                                            "id": "c10f72d2e82adfc8",
                                            "type": "change",
                                            "z": "e5528eb5167161cb",
                                            "name": "Papiertonne",
                                            "rules": [
                                                {
                                                    "t": "change",
                                                    "p": "payload",
                                                    "pt": "msg",
                                                    "from": "Papiertonne",
                                                    "fromt": "str",
                                                    "to": "true",
                                                    "tot": "bool"
                                                }
                                            ],
                                            "action": "",
                                            "property": "",
                                            "from": "",
                                            "to": "",
                                            "reg": false,
                                            "x": 730,
                                            "y": 600,
                                            "wires": [
                                                []
                                            ]
                                        }
                                    ]
                                    
                                    mickym 1 Reply Last reply Reply Quote 0
                                    • mickym
                                      mickym Most Active @Basti17683 last edited by

                                      Warum nach Text filtern - Du kannst in NodeRed direkt die Objekte analysieren. Allerdings musst Du wenn iobroker-get Nodes verwendest und ein JSON in Deinem Datenpunkt ein Objekt ist - diese erst mit einer JSON Node in ein Objekt verwandeln. So hilft mir Dein Flow deshalb nichts. Du musst dann mal so ein Objekt aus dem Debugfenster kopieren und hier in CodeTags einstellen, dann kann ich das mit einer Inject Node simulieren.

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

                                        @mickym said in Telegram als Adapter und Nodered:

                                        Warum nach Text filtern - Du kannst in NodeRed direkt die Objekte analysieren. Allerdings musst Du wenn iobroker-get Nodes verwendest und ein JSON in Deinem Datenpunkt ein Objekt ist - diese erst mit einer JSON Node in ein Objekt verwandeln. So hilft mir Dein Flow deshalb nichts. Du musst dann mal so ein Objekt aus dem Debugfenster kopieren und hier in CodeTags einstellen, dann kann ich das mit einer Inject Node simulieren.

                                        Oh sorry das wusste ich nicht.
                                        Ich hab einmal ein Screenshot vom Flow (was als Wert kommt), dann einen Screenshot von den Objekten im IObroker (welche mir ebe nals Text gesendet werden) und noch den Code aus dem Debug Fenster

                                        1d6390da-2403-488c-900e-03dfd49fbe30-grafik.png

                                        36d0e92a-5f4e-42f8-8ae4-08c50d91e907-grafik.png

                                        Papiertonne und Biotonne
                                        

                                        Eben weil ich die die verschiedenen Arten nicht als Bool Infos bekomme sondern nur als Text, wollte ich die quasi zurückwandeln

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

                                          @basti17683 Ja dann passt das doch - Du musst halt Dein true an die Switch Ausgänge hängen.

                                          5761c9e5-1cab-4d25-b16c-d8d5085d5f9f-image.png

                                          Aber Du suchst nicht sondern setzt true in den Change Nodes -

                                          20320288-5381-4c5c-ab61-3b1198a9b490-image.png

                                          Die Unterscheidung ob in dem Text Biotonne oder so was ist macht ja die Switch Node - Du kannst also direkt das true in 3 unterschiedliche Datenpunkte schicken - entweder über 3 iobroker-out Nodes oder 1 iobroker-Out NOdes und 3 verschiedene topics

                                          Oder willst Du ein Objekt daraus machen? Dann kannst Du es direkt über JSONATA machen.

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

                                            @mickym said in Telegram als Adapter und Nodered:

                                            @basti17683 Ja dann passt das doch - Du musst halt Dein true an die Switch Ausgänge hängen.

                                            5761c9e5-1cab-4d25-b16c-d8d5085d5f9f-image.png

                                            Aber Du suchst nicht sondern setzt true in den Change Nodes -

                                            20320288-5381-4c5c-ab61-3b1198a9b490-image.png

                                            Die Unterscheidung ob in dem Text Biotonne oder so was ist macht ja die Switch Node - Du kannst also direkt das true in 3 unterschiedliche Datenpunkte schicken - entweder über 3 iobroker-out Nodes oder 1 iobroker-Out NOdes und 3 verschiedene topics

                                            Oder willst Du ein Objekt daraus machen? Dann kannst Du es direkt über JSONATA machen.

                                            Verdammt, ich war so nah dran. Nein Objekt brauch ich keines draus machen. Ausser es würde so einfacher gehen und ich lern was draus. Auf den Gedanken die Hintereinander zu schalten bin ich nicht gekommen.
                                            Und statt "Ändern" -> "Setzen" hab ic hauch verstanden.
                                            Was wäre das Forum nur ohne dich... Herzlichen Dank!!!!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            908
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            33
                                            1911
                                            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