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. ANSI Zeichen in Node-Red decodieren

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.8k

ANSI Zeichen in Node-Red decodieren

Geplant Angeheftet Gesperrt Verschoben Node-Red
20 Beiträge 2 Kommentatoren 1.1k 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.
  • _ _R_A_L_F_

    @mickym Ne kein http Request sondern eine http in Node:
    5076ae5c-2e35-40b0-9a4f-a3ad6ae14bdd-image.png

    mickymM Online
    mickymM Online
    mickym
    Most Active
    schrieb am zuletzt editiert von mickym
    #10

    @_r_a_l_f_ ok dann schau mal nach allgemeinen methoden und ob wir die dann in node-red anpassen können. es gibt auch noch so eine alte converter node, vielleicht hilfts, wenn du den output in einen buffer wandelst. aber ich glaub nicht.

    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
    0
    • mickymM mickym

      @_r_a_l_f_ ok dann schau mal nach allgemeinen methoden und ob wir die dann in node-red anpassen können. es gibt auch noch so eine alte converter node, vielleicht hilfts, wenn du den output in einen buffer wandelst. aber ich glaub nicht.

      _ Offline
      _ Offline
      _R_A_L_F_
      schrieb am zuletzt editiert von
      #11

      @mickym said in ANSI Zeichen in Node-Red decodieren:

      ok dann schau mal nach allgemeinen methoden und ob wir die dann in node-red anpassen können. es gibt auch noch so eine alte converter node, vielleicht hilfts, wenn du den output in einen buffer wandelst.

      Ok, dann schaue ich mal. Aber Danke :)

      mickymM 1 Antwort Letzte Antwort
      0
      • _ _R_A_L_F_

        @mickym said in ANSI Zeichen in Node-Red decodieren:

        ok dann schau mal nach allgemeinen methoden und ob wir die dann in node-red anpassen können. es gibt auch noch so eine alte converter node, vielleicht hilfts, wenn du den output in einen buffer wandelst.

        Ok, dann schaue ich mal. Aber Danke :)

        mickymM Online
        mickymM Online
        mickym
        Most Active
        schrieb am zuletzt editiert von mickym
        #12

        @_r_a_l_f_ Ich weiß nicht ob ich eine Lösung habe, weil ich glaube, dass das Problem ist, dass ich nicht wirklich die Originalquelle habe. Vielleicht musst Du den Buffer exportieren.

        Ich hab hier trotzdem mal ein function Node - mit dem NodeJS Modul iconv erstellt:

        [
           {
               "id": "67ff42a946daac45",
               "type": "inject",
               "z": "94499721ca4a903a",
               "name": "",
               "props": [
                   {
                       "p": "payload"
                   },
                   {
                       "p": "topic",
                       "vt": "str"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "msgText",
               "payload": "Au�entemperatur������� St�rung",
               "payloadType": "str",
               "x": 370,
               "y": 580,
               "wires": [
                   [
                       "6fbcd04977e304fd"
                   ]
               ]
           },
           {
               "id": "6fbcd04977e304fd",
               "type": "function",
               "z": "94499721ca4a903a",
               "name": "function 2",
               "func": "var Iconv = iconv.Iconv;\nvar conv = new Iconv('CP1250','UTF-8');\n// msg.payload = conv.convert(Buffer.from(msg.payload));\nmsg.payload = conv.convert(msg.payload).toString();\nreturn msg;",
               "outputs": 1,
               "timeout": 0,
               "noerr": 0,
               "initialize": "",
               "finalize": "",
               "libs": [
                   {
                       "var": "iconv",
                       "module": "iconv"
                   }
               ],
               "x": 520,
               "y": 580,
               "wires": [
                   [
                       "7aad120c21e94f8e"
                   ]
               ]
           },
           {
               "id": "7aad120c21e94f8e",
               "type": "debug",
               "z": "94499721ca4a903a",
               "name": "debug 2",
               "active": true,
               "tosidebar": true,
               "console": false,
               "tostatus": false,
               "complete": "false",
               "statusVal": "",
               "statusType": "auto",
               "x": 680,
               "y": 580,
               "wires": []
           }
        ]
        

        Du kannst ja mehrere Codepages verwenden, vielleicht funktioniert ja eine.
        https://www.npmjs.com/package/iconv

        var Iconv = iconv.Iconv;
        var conv = new Iconv('CP1250','UTF-8');
        // msg.payload = conv.convert(Buffer.from(msg.payload));
        msg.payload = conv.convert(msg.payload).toString();
        return msg;
        

        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
        0
        • mickymM mickym

          @_r_a_l_f_ Ich weiß nicht ob ich eine Lösung habe, weil ich glaube, dass das Problem ist, dass ich nicht wirklich die Originalquelle habe. Vielleicht musst Du den Buffer exportieren.

          Ich hab hier trotzdem mal ein function Node - mit dem NodeJS Modul iconv erstellt:

          [
             {
                 "id": "67ff42a946daac45",
                 "type": "inject",
                 "z": "94499721ca4a903a",
                 "name": "",
                 "props": [
                     {
                         "p": "payload"
                     },
                     {
                         "p": "topic",
                         "vt": "str"
                     }
                 ],
                 "repeat": "",
                 "crontab": "",
                 "once": false,
                 "onceDelay": 0.1,
                 "topic": "msgText",
                 "payload": "Au�entemperatur������� St�rung",
                 "payloadType": "str",
                 "x": 370,
                 "y": 580,
                 "wires": [
                     [
                         "6fbcd04977e304fd"
                     ]
                 ]
             },
             {
                 "id": "6fbcd04977e304fd",
                 "type": "function",
                 "z": "94499721ca4a903a",
                 "name": "function 2",
                 "func": "var Iconv = iconv.Iconv;\nvar conv = new Iconv('CP1250','UTF-8');\n// msg.payload = conv.convert(Buffer.from(msg.payload));\nmsg.payload = conv.convert(msg.payload).toString();\nreturn msg;",
                 "outputs": 1,
                 "timeout": 0,
                 "noerr": 0,
                 "initialize": "",
                 "finalize": "",
                 "libs": [
                     {
                         "var": "iconv",
                         "module": "iconv"
                     }
                 ],
                 "x": 520,
                 "y": 580,
                 "wires": [
                     [
                         "7aad120c21e94f8e"
                     ]
                 ]
             },
             {
                 "id": "7aad120c21e94f8e",
                 "type": "debug",
                 "z": "94499721ca4a903a",
                 "name": "debug 2",
                 "active": true,
                 "tosidebar": true,
                 "console": false,
                 "tostatus": false,
                 "complete": "false",
                 "statusVal": "",
                 "statusType": "auto",
                 "x": 680,
                 "y": 580,
                 "wires": []
             }
          ]
          

          Du kannst ja mehrere Codepages verwenden, vielleicht funktioniert ja eine.
          https://www.npmjs.com/package/iconv

          var Iconv = iconv.Iconv;
          var conv = new Iconv('CP1250','UTF-8');
          // msg.payload = conv.convert(Buffer.from(msg.payload));
          msg.payload = conv.convert(msg.payload).toString();
          return msg;
          
          _ Offline
          _ Offline
          _R_A_L_F_
          schrieb am zuletzt editiert von _R_A_L_F_
          #13

          @mickym said in ANSI Zeichen in Node-Red decodieren:

          https://www.npmjs.com/package/iconv

          Ah ok. Probiere ich mal. Muss ich dazu noch etwas nachinstallieren bei Iconv?:
          f0b8bc30-f840-4ee0-8696-f36558e88928-image.png

          mickymM 1 Antwort Letzte Antwort
          0
          • _ _R_A_L_F_

            @mickym said in ANSI Zeichen in Node-Red decodieren:

            https://www.npmjs.com/package/iconv

            Ah ok. Probiere ich mal. Muss ich dazu noch etwas nachinstallieren bei Iconv?:
            f0b8bc30-f840-4ee0-8696-f36558e88928-image.png

            mickymM Online
            mickymM Online
            mickym
            Most Active
            schrieb am zuletzt editiert von mickym
            #14

            @_r_a_l_f_ Du musst nur etwas warten, dann installiert sich die Bibliothek automatisch. NEIN - nicht manuell installieren.

            Einfach den Flow importieren und ein paar Minuten warten.

            Die Bibliothek installiert sich durch die function Node automatisch:

            c74812c5-f6c1-4e1c-83f6-a3404d73fa59-image.png

            Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

            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.

            _ 3 Antworten Letzte Antwort
            0
            • mickymM mickym

              @_r_a_l_f_ Du musst nur etwas warten, dann installiert sich die Bibliothek automatisch. NEIN - nicht manuell installieren.

              Einfach den Flow importieren und ein paar Minuten warten.

              Die Bibliothek installiert sich durch die function Node automatisch:

              c74812c5-f6c1-4e1c-83f6-a3404d73fa59-image.png

              Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

              _ Offline
              _ Offline
              _R_A_L_F_
              schrieb am zuletzt editiert von
              #15

              @mickym ok, ich kann es erst nächste Woche testen aber ich berichte über das Ergebnis. Danke :)

              1 Antwort Letzte Antwort
              0
              • mickymM mickym

                @_r_a_l_f_ Du musst nur etwas warten, dann installiert sich die Bibliothek automatisch. NEIN - nicht manuell installieren.

                Einfach den Flow importieren und ein paar Minuten warten.

                Die Bibliothek installiert sich durch die function Node automatisch:

                c74812c5-f6c1-4e1c-83f6-a3404d73fa59-image.png

                Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

                _ Offline
                _ Offline
                _R_A_L_F_
                schrieb am zuletzt editiert von
                #16

                @mickym said in ANSI Zeichen in Node-Red decodieren:

                Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

                Das war ein wertvoller Tipp :).

                1 Antwort Letzte Antwort
                0
                • mickymM mickym

                  @_r_a_l_f_ Du musst nur etwas warten, dann installiert sich die Bibliothek automatisch. NEIN - nicht manuell installieren.

                  Einfach den Flow importieren und ein paar Minuten warten.

                  Die Bibliothek installiert sich durch die function Node automatisch:

                  c74812c5-f6c1-4e1c-83f6-a3404d73fa59-image.png

                  Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

                  _ Offline
                  _ Offline
                  _R_A_L_F_
                  schrieb am zuletzt editiert von _R_A_L_F_
                  #17

                  @mickym said in ANSI Zeichen in Node-Red decodieren:

                  Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

                  Ich wollte gerade die Vorbereitungen für morgen treffen und die function node einbinden.
                  Dabei kam folgender Fehler:
                  f5f1b71a-90bf-4307-a84c-8e080f6a27fb-image.png

                  D.h. ich benötige auch Python auf dem Windows Rechner, damit das ganze läuft oder?

                  Oder mit folgendem Node könnte es evtl. auch noch klappen:
                  https://flows.nodered.org/node/node-red-contrib-iconv
                  Scheinbar sind es ANSI Zeichen, was wohl windows-1252 entspricht. Und das wäre in der Lite Variante auch enthalten. Aber das Paket ist wohl schon älter.

                  mickymM 1 Antwort Letzte Antwort
                  0
                  • _ _R_A_L_F_

                    @mickym said in ANSI Zeichen in Node-Red decodieren:

                    Musst höchstens schauen, dass das Modul im Setup eingetragen ist.

                    Ich wollte gerade die Vorbereitungen für morgen treffen und die function node einbinden.
                    Dabei kam folgender Fehler:
                    f5f1b71a-90bf-4307-a84c-8e080f6a27fb-image.png

                    D.h. ich benötige auch Python auf dem Windows Rechner, damit das ganze läuft oder?

                    Oder mit folgendem Node könnte es evtl. auch noch klappen:
                    https://flows.nodered.org/node/node-red-contrib-iconv
                    Scheinbar sind es ANSI Zeichen, was wohl windows-1252 entspricht. Und das wäre in der Lite Variante auch enthalten. Aber das Paket ist wohl schon älter.

                    mickymM Online
                    mickymM Online
                    mickym
                    Most Active
                    schrieb am zuletzt editiert von
                    #18

                    @_r_a_l_f_ Ok ja bei mir gings unter windows nicht.

                    Hier nochmal der flow mit iconv-lite:

                    [{"id":"7b0c89ea680be73e","type":"inject","z":"578345f4956c7a57","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"msgText","payload":"Au�entemperatur������� St�rung","payloadType":"str","x":330,"y":2940,"wires":[["e3deb08b1ecaef90"]]},{"id":"e3deb08b1ecaef90","type":"function","z":"578345f4956c7a57","name":"function 3","func":"msg.payload = iconv.decode(Buffer.from(msg.payload), 'win1251');\n\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[{"var":"iconv","module":"iconv-lite"}],"x":480,"y":2940,"wires":[["3395014078e80eb5"]]},{"id":"3395014078e80eb5","type":"debug","z":"578345f4956c7a57","name":"iconv-lite","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":640,"y":2940,"wires":[]}]
                    

                    Das scheint zu gehen.

                    Die Node habe ich auch mal ausprobiert - die ist halt schon ziemlich alt.

                    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
                    0
                    • mickymM mickym

                      @_r_a_l_f_ Ok ja bei mir gings unter windows nicht.

                      Hier nochmal der flow mit iconv-lite:

                      [{"id":"7b0c89ea680be73e","type":"inject","z":"578345f4956c7a57","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"msgText","payload":"Au�entemperatur������� St�rung","payloadType":"str","x":330,"y":2940,"wires":[["e3deb08b1ecaef90"]]},{"id":"e3deb08b1ecaef90","type":"function","z":"578345f4956c7a57","name":"function 3","func":"msg.payload = iconv.decode(Buffer.from(msg.payload), 'win1251');\n\nreturn msg;","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[{"var":"iconv","module":"iconv-lite"}],"x":480,"y":2940,"wires":[["3395014078e80eb5"]]},{"id":"3395014078e80eb5","type":"debug","z":"578345f4956c7a57","name":"iconv-lite","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":640,"y":2940,"wires":[]}]
                      

                      Das scheint zu gehen.

                      Die Node habe ich auch mal ausprobiert - die ist halt schon ziemlich alt.

                      _ Offline
                      _ Offline
                      _R_A_L_F_
                      schrieb am zuletzt editiert von
                      #19

                      @mickym Danke für die Info. Zumindest sieht der Zeichensatz jetzt anders aus :D

                      598107c0-cc32-4080-95cf-6b364a1a7351-image.png

                      Jetzt müsste ich nur noch wissen, in welchem Format das ganze gesendet wird :(. Habe jetzt auch mal 1251-1258 durchprobiert und sich entsprechend immer andere Zeichen.

                      mickymM 1 Antwort Letzte Antwort
                      0
                      • _ _R_A_L_F_

                        @mickym Danke für die Info. Zumindest sieht der Zeichensatz jetzt anders aus :D

                        598107c0-cc32-4080-95cf-6b364a1a7351-image.png

                        Jetzt müsste ich nur noch wissen, in welchem Format das ganze gesendet wird :(. Habe jetzt auch mal 1251-1258 durchprobiert und sich entsprechend immer andere Zeichen.

                        mickymM Online
                        mickymM Online
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von
                        #20

                        @_r_a_l_f_ ja ich hab da auch nichts vernünftiges rausgebracht. ich würde es halt mal direkt mit der http-in versuchen- ansonsten kann ich auch nicht helfen

                        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
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        863

                        Online

                        32.4k

                        Benutzer

                        81.5k

                        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