Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. NodeRed function node soll toipc übernehmen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    319

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.4k

NodeRed function node soll toipc übernehmen

Geplant Angeheftet Gesperrt Verschoben Node-Red
29 Beiträge 2 Kommentatoren 3.7k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Frank TrautF Frank Traut

    @mickym Sieht gut aus! Auf dem Testsystem klappt das schon Mal ohne Probleme :)

    Frank TrautF Offline
    Frank TrautF Offline
    Frank Traut
    schrieb am zuletzt editiert von
    #20

    @mickym
    Ich hab da mal noch eine Frage :dog:
    Ich möchte Daten aus Thindgsboard in die S7 schicken:
    Unbenannt.JPG
    Links Thingsboard -> rechts S7
    Die Daten werden korrekt aus TB aboniert und auch an die Nodes für die S7 weitergegeben. Immer mit dem Schema "Name" "Satus". Unter den S7-Nodes sieht man auch, dass Werte ankommen. Die S7-Nodes übernhemen aber die Werte nicht.
    Was gehen würde: Mit Split und Switch-Node von Hand die Werte trennen. Das wäre extrem aufwendig, weil ich mehr als nur die 4 Eingänge habe. Ich hatte schon Mal eine Lösung dafür - finde diese aber leider nicht wider.
    Nachfolgend mein Code:

    [{"id":"e6b2f5a5.f67e4","type":"tab","label":"Flow 3","disabled":false,"info":""},{"id":"5832dbde.f274f4","type":"comment","z":"e6b2f5a5.f67e4","name":"Test: TB -> NodeRed -> S7","info":"","x":720,"y":160,"wires":[]},{"id":"7b6c8520.abff4c","type":"mqtt in","z":"e6b2f5a5.f67e4","name":"","topic":"v1/devices/me/attributes","qos":"1","datatype":"auto","broker":"d6a1db0.7bf03a8","x":570,"y":240,"wires":[["fb3e812f.5f3518","10d7ba9c.c296b5","169520d1.0b58af","cafa5741.a85778","af40042.86e75f8"]]},{"id":"fb3e812f.5f3518","type":"debug","z":"e6b2f5a5.f67e4","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":790,"y":540,"wires":[]},{"id":"10d7ba9c.c296b5","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1555)_betriebsstunden_p1","name":"","x":960,"y":240,"wires":[]},{"id":"7b14759d.8b13bc","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1555)_betriebsstunden_p1","name":"","x":860,"y":840,"wires":[]},{"id":"b774c83c.f619d8","type":"inject","z":"e6b2f5a5.f67e4","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"1","payloadType":"num","x":578,"y":841,"wires":[["7b14759d.8b13bc","ba50d833.15818"]]},{"id":"9120c446.14b768","type":"inject","z":"e6b2f5a5.f67e4","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"2","payloadType":"num","x":588,"y":901,"wires":[["7b14759d.8b13bc","ba50d833.15818"]]},{"id":"ba50d833.15818","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1556)_betriebsstunden_p2","name":"","x":870,"y":900,"wires":[]},{"id":"169520d1.0b58af","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1501)_run_stop","name":"","x":930,"y":300,"wires":[]},{"id":"cafa5741.a85778","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1541)_anlagenlaufzeit_monat_8","name":"","x":980,"y":360,"wires":[]},{"id":"af40042.86e75f8","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1563)_betriebsstunden_09","name":"","x":960,"y":420,"wires":[]},{"id":"d6a1db0.7bf03a8","type":"mqtt-broker","name":"NodeRed_out","broker":"138.197.182.168","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"5dd03a7c.af7b9c","type":"s7 endpoint","transport":"iso-on-tcp","address":"172.16.58.1","port":"102","rack":"0","slot":"0","localtsaphi":"01","localtsaplo":"00","remotetsaphi":"01","remotetsaplo":"00","connmode":"rack-slot","adapter":"","busaddr":"2","cycletime":"3000","timeout":"2000","name":"TB_NodeRed_S7","vartable":[{"addr":"DB1500,X0.0","name":"(1501)_run_stop"},{"addr":"DB1500,X0.1","name":"(1502)_anlagentyp1_2"},{"addr":"DB1500,X0.2","name":"(1503)_basic_03"},{"addr":"DB1500,X0.3","name":"(1504)_basic_04"},{"addr":"DB1500,X0.4","name":"(1505)_basic_05"},{"addr":"DB1500,X0.5","name":"(1506)_basic_06"},{"addr":"DB1500,X0.6","name":"(1507)_basic_07"},{"addr":"DB1500,X0.7","name":"(1508)_basic_08"},{"addr":"DB1500,X1.0","name":"(1509)_basic_09"},{"addr":"DB1500,WORD2","name":"(1510)_anlagenleistung_monat_1"},{"addr":"DB1500,WORD4","name":"(1511)_anlagenleistung_monat_2"},{"addr":"DB1500,WORD6","name":"(1512)_anlagenleistung_monat_3"},{"addr":"DB1500,WORD8","name":"(1513)_anlagenleistung_monat_4"},{"addr":"DB1500,WORD10","name":"(1514)_anlagenleistung_monat_5"},{"addr":"DB1500,WORD12","name":"(1515)_anlagenleistung_monat_6"},{"addr":"DB1500,WORD14","name":"(1516)_anlagenleistung_monat_7"},{"addr":"DB1500,WORD16","name":"(1517)_anlagenleistung_monat_8"},{"addr":"DB1500,WORD18","name":"(1518)_anlagenleistung_monat_9"},{"addr":"DB1500,WORD20","name":"(1519)_anlagenleistung_monat_10"},{"addr":"DB1500,WORD22","name":"(1520)_anlagenleistung_monat_11"},{"addr":"DB1500,WORD24","name":"(1521)_anlagenleistung_monat_12"},{"addr":"DB1500,X26.0","name":"(1522)_anzahl_pumpen_monat_1"},{"addr":"DB1500,X26.1","name":"(1523)_anzahl_pumpen_monat_2"},{"addr":"DB1500,X26.2","name":"(1524)_anzahl_pumpen_monat_3"},{"addr":"DB1500,X26.3","name":"(1525)_anzahl_pumpen_monat_4"},{"addr":"DB1500,X26.4","name":"(1526)_anzahl_pumpen_monat_5"},{"addr":"DB1500,X26.5","name":"(1527)_anzahl_pumpen_monat_6"},{"addr":"DB1500,X26.6","name":"(1528)_anzahl_pumpen_monat_7"},{"addr":"DB1500,X26.7","name":"(1529)_anzahl_pumpen_monat_8"},{"addr":"DB1500,X27.0","name":"(1530)_anzahl_pumpen_monat_9"},{"addr":"DB1500,X27.1","name":"(1531)_anzahl_pumpen_monat_10"},{"addr":"DB1500,X27.2","name":"(1532)_anzahl_pumpen_monat_11"},{"addr":"DB1500,X27.3","name":"(1533)_anzahl_pumpen_monat_12"},{"addr":"DB1500,WORD28","name":"(1534)_anlagenlaufzeit_monat_1"},{"addr":"DB1500,WORD30","name":"(1535)_anlagenlaufzeit_monat_2"},{"addr":"DB1500,WORD32","name":"(1536)_anlagenlaufzeit_monat_3"},{"addr":"DB1500,WORD34","name":"(1537)_anlagenlaufzeit_monat_4"},{"addr":"DB1500,WORD36","name":"(1538)_anlagenlaufzeit_monat_5"},{"addr":"DB1500,WORD38","name":"(1539)_anlagenlaufzeit_monat_6"},{"addr":"DB1500,WORD40","name":"(1540)_anlagenlaufzeit_monat_7"},{"addr":"DB1500,WORD42","name":"(1541)_anlagenlaufzeit_monat_8"},{"addr":"DB1500,WORD44","name":"(1542)_anlagenlaufzeit_monat_9"},{"addr":"DB1500,WORD46","name":"(1543)_anlagenlaufzeit_monat_10"},{"addr":"DB1500,WORD48","name":"(1544)_anlagenlaufzeit_monat_11"},{"addr":"DB1500,WORD50","name":"(1545)_anlagenlaufzeit_monat_12"},{"addr":"DB1500,WORD52","name":"(1546)_temp_luft_1"},{"addr":"DB1500,WORD54","name":"(1547)_temp_luft_2"},{"addr":"DB1500,WORD56","name":"(1548)_temp_wasser_1"},{"addr":"DB1500,WORD58","name":"(1549)_temp_wasser_2"},{"addr":"DB1500,WORD60","name":"(1550)_messwert_05"},{"addr":"DB1500,WORD62","name":"(1551)_messwert_06"},{"addr":"DB1500,WORD64","name":"(1552)_messwert_07"},{"addr":"DB1500,WORD66","name":"(1553)_messwert_08"},{"addr":"DB1500,WORD68","name":"(1554)_messwert_09"},{"addr":"DB1500,WORD70","name":"(1555)_betriebsstunden_p1"},{"addr":"DB1500,WORD72","name":"(1556)_betriebsstunden_p2"},{"addr":"DB1500,WORD74","name":"(1557)_betriebsstunden_03"},{"addr":"DB1500,WORD76","name":"(1558)_betriebsstunden_04"},{"addr":"DB1500,WORD78","name":"(1559)_betriebsstunden_05"},{"addr":"DB1500,WORD80","name":"(1560)_betriebsstunden_06"},{"addr":"DB1500,WORD82","name":"(1561)_betriebsstunden_07"},{"addr":"DB1500,WORD84","name":"(1562)_betriebsstunden_08"},{"addr":"DB1500,WORD86","name":"(1563)_betriebsstunden_09"},{"addr":"DB1500,X106.0","name":"(1564)_alarm_ms_p1"},{"addr":"DB1500,X106.1","name":"(1565)_alarm_ms_p2"},{"addr":"DB1500,X106.2","name":"(1566)_temp_luft_1_hoch"},{"addr":"DB1500,X106.3","name":"(1567)_temp_luft_1_niedrig"},{"addr":"DB1500,X106.4","name":"(1568)_messfehler_temp_luft_1"},{"addr":"DB1500,X106.5","name":"(1569)_messfehler_temp_luft_2"},{"addr":"DB1500,X106.6","name":"(1570)_messfehler_temp_wasser_1"},{"addr":"DB1500,X106.7","name":"(1571)_messfehler_temp_wasser_2"},{"addr":"DB1500,X107.0","name":"(1572)_alarm_08"},{"addr":"DB1500,X107.1","name":"(1573)_alarm_09"}]}]
    
    mickymM 1 Antwort Letzte Antwort
    0
    • Frank TrautF Frank Traut

      @mickym
      Ich hab da mal noch eine Frage :dog:
      Ich möchte Daten aus Thindgsboard in die S7 schicken:
      Unbenannt.JPG
      Links Thingsboard -> rechts S7
      Die Daten werden korrekt aus TB aboniert und auch an die Nodes für die S7 weitergegeben. Immer mit dem Schema "Name" "Satus". Unter den S7-Nodes sieht man auch, dass Werte ankommen. Die S7-Nodes übernhemen aber die Werte nicht.
      Was gehen würde: Mit Split und Switch-Node von Hand die Werte trennen. Das wäre extrem aufwendig, weil ich mehr als nur die 4 Eingänge habe. Ich hatte schon Mal eine Lösung dafür - finde diese aber leider nicht wider.
      Nachfolgend mein Code:

      [{"id":"e6b2f5a5.f67e4","type":"tab","label":"Flow 3","disabled":false,"info":""},{"id":"5832dbde.f274f4","type":"comment","z":"e6b2f5a5.f67e4","name":"Test: TB -> NodeRed -> S7","info":"","x":720,"y":160,"wires":[]},{"id":"7b6c8520.abff4c","type":"mqtt in","z":"e6b2f5a5.f67e4","name":"","topic":"v1/devices/me/attributes","qos":"1","datatype":"auto","broker":"d6a1db0.7bf03a8","x":570,"y":240,"wires":[["fb3e812f.5f3518","10d7ba9c.c296b5","169520d1.0b58af","cafa5741.a85778","af40042.86e75f8"]]},{"id":"fb3e812f.5f3518","type":"debug","z":"e6b2f5a5.f67e4","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":790,"y":540,"wires":[]},{"id":"10d7ba9c.c296b5","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1555)_betriebsstunden_p1","name":"","x":960,"y":240,"wires":[]},{"id":"7b14759d.8b13bc","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1555)_betriebsstunden_p1","name":"","x":860,"y":840,"wires":[]},{"id":"b774c83c.f619d8","type":"inject","z":"e6b2f5a5.f67e4","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"1","payloadType":"num","x":578,"y":841,"wires":[["7b14759d.8b13bc","ba50d833.15818"]]},{"id":"9120c446.14b768","type":"inject","z":"e6b2f5a5.f67e4","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"2","payloadType":"num","x":588,"y":901,"wires":[["7b14759d.8b13bc","ba50d833.15818"]]},{"id":"ba50d833.15818","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1556)_betriebsstunden_p2","name":"","x":870,"y":900,"wires":[]},{"id":"169520d1.0b58af","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1501)_run_stop","name":"","x":930,"y":300,"wires":[]},{"id":"cafa5741.a85778","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1541)_anlagenlaufzeit_monat_8","name":"","x":980,"y":360,"wires":[]},{"id":"af40042.86e75f8","type":"s7 out","z":"e6b2f5a5.f67e4","endpoint":"5dd03a7c.af7b9c","variable":"(1563)_betriebsstunden_09","name":"","x":960,"y":420,"wires":[]},{"id":"d6a1db0.7bf03a8","type":"mqtt-broker","name":"NodeRed_out","broker":"138.197.182.168","port":"1883","clientid":"","usetls":false,"compatmode":false,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""},{"id":"5dd03a7c.af7b9c","type":"s7 endpoint","transport":"iso-on-tcp","address":"172.16.58.1","port":"102","rack":"0","slot":"0","localtsaphi":"01","localtsaplo":"00","remotetsaphi":"01","remotetsaplo":"00","connmode":"rack-slot","adapter":"","busaddr":"2","cycletime":"3000","timeout":"2000","name":"TB_NodeRed_S7","vartable":[{"addr":"DB1500,X0.0","name":"(1501)_run_stop"},{"addr":"DB1500,X0.1","name":"(1502)_anlagentyp1_2"},{"addr":"DB1500,X0.2","name":"(1503)_basic_03"},{"addr":"DB1500,X0.3","name":"(1504)_basic_04"},{"addr":"DB1500,X0.4","name":"(1505)_basic_05"},{"addr":"DB1500,X0.5","name":"(1506)_basic_06"},{"addr":"DB1500,X0.6","name":"(1507)_basic_07"},{"addr":"DB1500,X0.7","name":"(1508)_basic_08"},{"addr":"DB1500,X1.0","name":"(1509)_basic_09"},{"addr":"DB1500,WORD2","name":"(1510)_anlagenleistung_monat_1"},{"addr":"DB1500,WORD4","name":"(1511)_anlagenleistung_monat_2"},{"addr":"DB1500,WORD6","name":"(1512)_anlagenleistung_monat_3"},{"addr":"DB1500,WORD8","name":"(1513)_anlagenleistung_monat_4"},{"addr":"DB1500,WORD10","name":"(1514)_anlagenleistung_monat_5"},{"addr":"DB1500,WORD12","name":"(1515)_anlagenleistung_monat_6"},{"addr":"DB1500,WORD14","name":"(1516)_anlagenleistung_monat_7"},{"addr":"DB1500,WORD16","name":"(1517)_anlagenleistung_monat_8"},{"addr":"DB1500,WORD18","name":"(1518)_anlagenleistung_monat_9"},{"addr":"DB1500,WORD20","name":"(1519)_anlagenleistung_monat_10"},{"addr":"DB1500,WORD22","name":"(1520)_anlagenleistung_monat_11"},{"addr":"DB1500,WORD24","name":"(1521)_anlagenleistung_monat_12"},{"addr":"DB1500,X26.0","name":"(1522)_anzahl_pumpen_monat_1"},{"addr":"DB1500,X26.1","name":"(1523)_anzahl_pumpen_monat_2"},{"addr":"DB1500,X26.2","name":"(1524)_anzahl_pumpen_monat_3"},{"addr":"DB1500,X26.3","name":"(1525)_anzahl_pumpen_monat_4"},{"addr":"DB1500,X26.4","name":"(1526)_anzahl_pumpen_monat_5"},{"addr":"DB1500,X26.5","name":"(1527)_anzahl_pumpen_monat_6"},{"addr":"DB1500,X26.6","name":"(1528)_anzahl_pumpen_monat_7"},{"addr":"DB1500,X26.7","name":"(1529)_anzahl_pumpen_monat_8"},{"addr":"DB1500,X27.0","name":"(1530)_anzahl_pumpen_monat_9"},{"addr":"DB1500,X27.1","name":"(1531)_anzahl_pumpen_monat_10"},{"addr":"DB1500,X27.2","name":"(1532)_anzahl_pumpen_monat_11"},{"addr":"DB1500,X27.3","name":"(1533)_anzahl_pumpen_monat_12"},{"addr":"DB1500,WORD28","name":"(1534)_anlagenlaufzeit_monat_1"},{"addr":"DB1500,WORD30","name":"(1535)_anlagenlaufzeit_monat_2"},{"addr":"DB1500,WORD32","name":"(1536)_anlagenlaufzeit_monat_3"},{"addr":"DB1500,WORD34","name":"(1537)_anlagenlaufzeit_monat_4"},{"addr":"DB1500,WORD36","name":"(1538)_anlagenlaufzeit_monat_5"},{"addr":"DB1500,WORD38","name":"(1539)_anlagenlaufzeit_monat_6"},{"addr":"DB1500,WORD40","name":"(1540)_anlagenlaufzeit_monat_7"},{"addr":"DB1500,WORD42","name":"(1541)_anlagenlaufzeit_monat_8"},{"addr":"DB1500,WORD44","name":"(1542)_anlagenlaufzeit_monat_9"},{"addr":"DB1500,WORD46","name":"(1543)_anlagenlaufzeit_monat_10"},{"addr":"DB1500,WORD48","name":"(1544)_anlagenlaufzeit_monat_11"},{"addr":"DB1500,WORD50","name":"(1545)_anlagenlaufzeit_monat_12"},{"addr":"DB1500,WORD52","name":"(1546)_temp_luft_1"},{"addr":"DB1500,WORD54","name":"(1547)_temp_luft_2"},{"addr":"DB1500,WORD56","name":"(1548)_temp_wasser_1"},{"addr":"DB1500,WORD58","name":"(1549)_temp_wasser_2"},{"addr":"DB1500,WORD60","name":"(1550)_messwert_05"},{"addr":"DB1500,WORD62","name":"(1551)_messwert_06"},{"addr":"DB1500,WORD64","name":"(1552)_messwert_07"},{"addr":"DB1500,WORD66","name":"(1553)_messwert_08"},{"addr":"DB1500,WORD68","name":"(1554)_messwert_09"},{"addr":"DB1500,WORD70","name":"(1555)_betriebsstunden_p1"},{"addr":"DB1500,WORD72","name":"(1556)_betriebsstunden_p2"},{"addr":"DB1500,WORD74","name":"(1557)_betriebsstunden_03"},{"addr":"DB1500,WORD76","name":"(1558)_betriebsstunden_04"},{"addr":"DB1500,WORD78","name":"(1559)_betriebsstunden_05"},{"addr":"DB1500,WORD80","name":"(1560)_betriebsstunden_06"},{"addr":"DB1500,WORD82","name":"(1561)_betriebsstunden_07"},{"addr":"DB1500,WORD84","name":"(1562)_betriebsstunden_08"},{"addr":"DB1500,WORD86","name":"(1563)_betriebsstunden_09"},{"addr":"DB1500,X106.0","name":"(1564)_alarm_ms_p1"},{"addr":"DB1500,X106.1","name":"(1565)_alarm_ms_p2"},{"addr":"DB1500,X106.2","name":"(1566)_temp_luft_1_hoch"},{"addr":"DB1500,X106.3","name":"(1567)_temp_luft_1_niedrig"},{"addr":"DB1500,X106.4","name":"(1568)_messfehler_temp_luft_1"},{"addr":"DB1500,X106.5","name":"(1569)_messfehler_temp_luft_2"},{"addr":"DB1500,X106.6","name":"(1570)_messfehler_temp_wasser_1"},{"addr":"DB1500,X106.7","name":"(1571)_messfehler_temp_wasser_2"},{"addr":"DB1500,X107.0","name":"(1572)_alarm_08"},{"addr":"DB1500,X107.1","name":"(1573)_alarm_09"}]}]
      
      mickymM Offline
      mickymM Offline
      mickym
      Most Active
      schrieb am zuletzt editiert von mickym
      #21

      siehe nächster Beitrag

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      mickymM 1 Antwort Letzte Antwort
      1
      • mickymM mickym

        siehe nächster Beitrag

        mickymM Offline
        mickymM Offline
        mickym
        Most Active
        schrieb am zuletzt editiert von mickym
        #22

        habs schon gesehen -

        [
            {
                "id": "c6a50eae.ea43c",
                "type": "json",
                "z": "6e170384.60c96c",
                "name": "",
                "property": "payload",
                "action": "",
                "pretty": false,
                "x": 1740,
                "y": 4220,
                "wires": [
                    [
                        "e45442d.763bdc"
                    ]
                ]
            },
            {
                "id": "e45442d.763bdc",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "payload.(1555)_betriebsstunden_p1",
                        "tot": "msg"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 1960,
                "y": 4220,
                "wires": [
                    []
                ]
            }
        ]
        

        klemm diese beiden Nodes hinter Deine mqtt Node - dann müsste es gehen.

        Also um es nochmal zu erklären, was die beiden Nodes machen. Der erste konvertiert den JSON String in ein Objekt. Der Change Node extrahiert die gewünschte Eigenschaft und kopiert die in die payload.

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        Frank TrautF 1 Antwort Letzte Antwort
        1
        • mickymM mickym

          habs schon gesehen -

          [
              {
                  "id": "c6a50eae.ea43c",
                  "type": "json",
                  "z": "6e170384.60c96c",
                  "name": "",
                  "property": "payload",
                  "action": "",
                  "pretty": false,
                  "x": 1740,
                  "y": 4220,
                  "wires": [
                      [
                          "e45442d.763bdc"
                      ]
                  ]
              },
              {
                  "id": "e45442d.763bdc",
                  "type": "change",
                  "z": "6e170384.60c96c",
                  "name": "",
                  "rules": [
                      {
                          "t": "set",
                          "p": "payload",
                          "pt": "msg",
                          "to": "payload.(1555)_betriebsstunden_p1",
                          "tot": "msg"
                      }
                  ],
                  "action": "",
                  "property": "",
                  "from": "",
                  "to": "",
                  "reg": false,
                  "x": 1960,
                  "y": 4220,
                  "wires": [
                      []
                  ]
              }
          ]
          

          klemm diese beiden Nodes hinter Deine mqtt Node - dann müsste es gehen.

          Also um es nochmal zu erklären, was die beiden Nodes machen. Der erste konvertiert den JSON String in ein Objekt. Der Change Node extrahiert die gewünschte Eigenschaft und kopiert die in die payload.

          Frank TrautF Offline
          Frank TrautF Offline
          Frank Traut
          schrieb am zuletzt editiert von
          #23

          @mickym Moin, wenn ich das mache bekomme ich doch ich vor und nach dem cahnge Node genau die gleiche Nachricht: node.JPG
          Müsste ich dann für jede Variable diesen Baum aufbauen?

          mickymM 1 Antwort Letzte Antwort
          0
          • Frank TrautF Frank Traut

            @mickym Moin, wenn ich das mache bekomme ich doch ich vor und nach dem cahnge Node genau die gleiche Nachricht: node.JPG
            Müsste ich dann für jede Variable diesen Baum aufbauen?

            mickymM Offline
            mickymM Offline
            mickym
            Most Active
            schrieb am zuletzt editiert von mickym
            #24

            @frank-traut ich habe festgestellt, dass die Change Node Probleme mit den Klammern im Objekt hat.

            [
                {
                    "id": "c6a50eae.ea43c",
                    "type": "json",
                    "z": "6e170384.60c96c",
                    "name": "",
                    "property": "payload",
                    "action": "",
                    "pretty": false,
                    "x": 3310,
                    "y": 1220,
                    "wires": [
                        [
                            "e45442d.763bdc"
                        ]
                    ]
                },
                {
                    "id": "e45442d.763bdc",
                    "type": "change",
                    "z": "6e170384.60c96c",
                    "name": "",
                    "rules": [
                        {
                            "t": "set",
                            "p": "payload",
                            "pt": "msg",
                            "to": "payload.1555_betriebsstunden_p1",
                            "tot": "msg"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 3490,
                    "y": 1220,
                    "wires": [
                        []
                    ]
                },
                {
                    "id": "7c121490.b9004c",
                    "type": "change",
                    "z": "6e170384.60c96c",
                    "name": "",
                    "rules": [
                        {
                            "t": "change",
                            "p": "payload",
                            "pt": "msg",
                            "from": "(",
                            "fromt": "str",
                            "to": "",
                            "tot": "str"
                        },
                        {
                            "t": "change",
                            "p": "payload",
                            "pt": "msg",
                            "from": ")",
                            "fromt": "str",
                            "to": "",
                            "tot": "str"
                        }
                    ],
                    "action": "",
                    "property": "",
                    "from": "",
                    "to": "",
                    "reg": false,
                    "x": 3120,
                    "y": 1220,
                    "wires": [
                        [
                            "c6a50eae.ea43c"
                        ]
                    ]
                }
            ]
            

            So müsste es nun funktionieren.

            Auf Dein Frage, ob Du das für jede Variable machen musst - das kann ich Dir so nicht beantworten - ich weiß weder was aus der mqtt Node rauskommen kann, welche Variablen da rauskommen noch welche Werte dann weitergegeben werden müssen. Ich habe Dir nun gezeigt, wie Du aus dem String, dann Objekt, die entsprechenden Werte aus bestimmten Eigenschaften (properties - Objektnamen) rausbekommst.

            Falls das in dem String auch grundsätzlich so rausbekommt und der 1. Teil im Prinzip das Topic also die 1555 ist - kann man das auch anders machen. Das heißt wenn immer "betriebsstunden_p1" rauskommt - sich aber das Gerät über die Klammer unterscheidet, dann macht man aus dem Inhalt der Klammer das topic - und aus dem Rest direkt die Zahl. Irgendwo musst Du ja immer nach Gerät und nach Eigenschaft aufteilen.

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            Frank TrautF 1 Antwort Letzte Antwort
            1
            • mickymM mickym

              @frank-traut ich habe festgestellt, dass die Change Node Probleme mit den Klammern im Objekt hat.

              [
                  {
                      "id": "c6a50eae.ea43c",
                      "type": "json",
                      "z": "6e170384.60c96c",
                      "name": "",
                      "property": "payload",
                      "action": "",
                      "pretty": false,
                      "x": 3310,
                      "y": 1220,
                      "wires": [
                          [
                              "e45442d.763bdc"
                          ]
                      ]
                  },
                  {
                      "id": "e45442d.763bdc",
                      "type": "change",
                      "z": "6e170384.60c96c",
                      "name": "",
                      "rules": [
                          {
                              "t": "set",
                              "p": "payload",
                              "pt": "msg",
                              "to": "payload.1555_betriebsstunden_p1",
                              "tot": "msg"
                          }
                      ],
                      "action": "",
                      "property": "",
                      "from": "",
                      "to": "",
                      "reg": false,
                      "x": 3490,
                      "y": 1220,
                      "wires": [
                          []
                      ]
                  },
                  {
                      "id": "7c121490.b9004c",
                      "type": "change",
                      "z": "6e170384.60c96c",
                      "name": "",
                      "rules": [
                          {
                              "t": "change",
                              "p": "payload",
                              "pt": "msg",
                              "from": "(",
                              "fromt": "str",
                              "to": "",
                              "tot": "str"
                          },
                          {
                              "t": "change",
                              "p": "payload",
                              "pt": "msg",
                              "from": ")",
                              "fromt": "str",
                              "to": "",
                              "tot": "str"
                          }
                      ],
                      "action": "",
                      "property": "",
                      "from": "",
                      "to": "",
                      "reg": false,
                      "x": 3120,
                      "y": 1220,
                      "wires": [
                          [
                              "c6a50eae.ea43c"
                          ]
                      ]
                  }
              ]
              

              So müsste es nun funktionieren.

              Auf Dein Frage, ob Du das für jede Variable machen musst - das kann ich Dir so nicht beantworten - ich weiß weder was aus der mqtt Node rauskommen kann, welche Variablen da rauskommen noch welche Werte dann weitergegeben werden müssen. Ich habe Dir nun gezeigt, wie Du aus dem String, dann Objekt, die entsprechenden Werte aus bestimmten Eigenschaften (properties - Objektnamen) rausbekommst.

              Falls das in dem String auch grundsätzlich so rausbekommt und der 1. Teil im Prinzip das Topic also die 1555 ist - kann man das auch anders machen. Das heißt wenn immer "betriebsstunden_p1" rauskommt - sich aber das Gerät über die Klammer unterscheidet, dann macht man aus dem Inhalt der Klammer das topic - und aus dem Rest direkt die Zahl. Irgendwo musst Du ja immer nach Gerät und nach Eigenschaft aufteilen.

              Frank TrautF Offline
              Frank TrautF Offline
              Frank Traut
              schrieb am zuletzt editiert von
              #25

              @mickym okay sehr cool das klappt. Ich habe jetzt vor der Umwandlung die entsprechenden Routen augebaut. So kommt dann immer nur genau der Wert beim Eingang an.
              Gibt es noch eine Möglichkeit den Inhalt der "change-Node" "global" zu halten. Die macht ja nicht anderes als das Objekt in Number zu wechseln. Da müsste doch der Name egal sein, oder? Kann man da evtl. mit Sternchen o.ä. arbeiten?

              mickymM 3 Antworten Letzte Antwort
              0
              • Frank TrautF Frank Traut

                @mickym okay sehr cool das klappt. Ich habe jetzt vor der Umwandlung die entsprechenden Routen augebaut. So kommt dann immer nur genau der Wert beim Eingang an.
                Gibt es noch eine Möglichkeit den Inhalt der "change-Node" "global" zu halten. Die macht ja nicht anderes als das Objekt in Number zu wechseln. Da müsste doch der Name egal sein, oder? Kann man da evtl. mit Sternchen o.ä. arbeiten?

                mickymM Offline
                mickymM Offline
                mickym
                Most Active
                schrieb am zuletzt editiert von mickym
                #26

                gelöscht - da bessere finale Lösung oben

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                1 Antwort Letzte Antwort
                1
                • Frank TrautF Frank Traut

                  @mickym okay sehr cool das klappt. Ich habe jetzt vor der Umwandlung die entsprechenden Routen augebaut. So kommt dann immer nur genau der Wert beim Eingang an.
                  Gibt es noch eine Möglichkeit den Inhalt der "change-Node" "global" zu halten. Die macht ja nicht anderes als das Objekt in Number zu wechseln. Da müsste doch der Name egal sein, oder? Kann man da evtl. mit Sternchen o.ä. arbeiten?

                  mickymM Offline
                  mickymM Offline
                  mickym
                  Most Active
                  schrieb am zuletzt editiert von mickym
                  #27

                  gelöscht - da bessere finale Lösung oben

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  1 Antwort Letzte Antwort
                  1
                  • Frank TrautF Frank Traut

                    @mickym okay sehr cool das klappt. Ich habe jetzt vor der Umwandlung die entsprechenden Routen augebaut. So kommt dann immer nur genau der Wert beim Eingang an.
                    Gibt es noch eine Möglichkeit den Inhalt der "change-Node" "global" zu halten. Die macht ja nicht anderes als das Objekt in Number zu wechseln. Da müsste doch der Name egal sein, oder? Kann man da evtl. mit Sternchen o.ä. arbeiten?

                    mickymM Offline
                    mickymM Offline
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von mickym
                    #28

                    @frank-traut

                    Hier mal ein JSON String mit mehreren Objekten:

                    {"(1522)_betriebsstunden_p1":39, "(1711)_betriebsstunden_p1":3569, "(2534)_betriebsstunden_p1":8839 }
                    

                    Mit dem unteren Beispiel bekommst Du auch dann die Werte nacheinander zurück, wenn dich die Eigenschaften nicht interessieren.

                    2aaa3072-bdc4-47e2-8103-40b9c3638ecb-image.png

                    willst Du die Eigenschaften nicht verlieren - lässt Du die Split Node das in den topic kopieren, dann bleibt Dir das für einen späteren switch Node erhalten:

                    Das ist das gleiche wie oben nur die split Node wie folgt angepaßt:

                    screen.png

                    Insofern ist das wohl die Universallösung - also diese beiden Nodes hinter Dein mqtt:

                    [
                        {
                            "id": "6163defd.b392b",
                            "type": "json",
                            "z": "6e170384.60c96c",
                            "name": "",
                            "property": "payload",
                            "action": "",
                            "pretty": false,
                            "x": 2610,
                            "y": 2040,
                            "wires": [
                                [
                                    "6d2ebecd.0a80b"
                                ]
                            ]
                        },
                        {
                            "id": "6d2ebecd.0a80b",
                            "type": "split",
                            "z": "6e170384.60c96c",
                            "name": "",
                            "splt": "\\n",
                            "spltType": "str",
                            "arraySplt": 1,
                            "arraySpltType": "len",
                            "stream": false,
                            "addname": "topic",
                            "x": 2780,
                            "y": 2040,
                            "wires": [
                                [
                                    "422bae3b.6ab82"
                                ]
                            ]
                        }
                    ]
                    

                    Manchmal habe ich selbst ein Brett vorm Kopf :thinking_face:

                    Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                    1 Antwort Letzte Antwort
                    1
                    • Frank TrautF Offline
                      Frank TrautF Offline
                      Frank Traut
                      schrieb am zuletzt editiert von
                      #29

                      @mickym Hast die Versionen zu spät gelöscht :D hab dann mal alle durchgespielt :) aber die letzte Version klappt super!

                      1 Antwort Letzte Antwort
                      1
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      741

                      Online

                      32.5k

                      Benutzer

                      81.7k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe