Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. HEX in RGB Umwandeln?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    HEX in RGB Umwandeln?

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

      @denjo sagte in HEX in RGB Umwandeln?:

      hyperion_ng.0.general.control.setColorRGB

      So das ist es dann:

      6b6c2810-1d34-4719-bad3-f781d0bc82bb-image.png

      [
          {
              "id": "c9bd97db.0bd1c8",
              "type": "function",
              "z": "6e170384.60c96c",
              "name": "HEX zu RGB",
              "func": "msg.payload=hex_to_RGB(msg.payload)\n\n\nreturn msg;\n\nfunction hex_to_RGB(hex) {\n    var m = hex.match(/^#?([\\da-f]{2})([\\da-f]{2})([\\da-f]{2})$/i);\n    return {\n        r: parseInt(m[1], 16),\n        g: parseInt(m[2], 16),\n        b: parseInt(m[3], 16)\n    };\n}",
              "outputs": 1,
              "noerr": 0,
              "initialize": "",
              "finalize": "",
              "x": 1410,
              "y": 3180,
              "wires": [
                  [
                      "62344cad.180284"
                  ]
              ]
          },
          {
              "id": "28743d11.362b72",
              "type": "ioBroker in",
              "z": "6e170384.60c96c",
              "name": "",
              "topic": "javascript.0.hyperionng",
              "payloadType": "value",
              "onlyack": "",
              "func": "all",
              "gap": "",
              "fireOnStart": "false",
              "x": 1140,
              "y": 3180,
              "wires": [
                  [
                      "c9bd97db.0bd1c8"
                  ]
              ]
          },
          {
              "id": "32bd27af.6eff68",
              "type": "ioBroker out",
              "z": "6e170384.60c96c",
              "name": "",
              "topic": "hyperion_ng.0.general.control.setColorRGB",
              "ack": "false",
              "autoCreate": "false",
              "stateName": "",
              "role": "",
              "payloadType": "",
              "readonly": "",
              "stateUnit": "",
              "stateMin": "",
              "stateMax": "",
              "x": 1870,
              "y": 3180,
              "wires": []
          },
          {
              "id": "62344cad.180284",
              "type": "json",
              "z": "6e170384.60c96c",
              "name": "",
              "property": "payload",
              "action": "",
              "pretty": false,
              "x": 1590,
              "y": 3180,
              "wires": [
                  [
                      "32bd27af.6eff68"
                  ]
              ]
          }
      ]
      

      Zum Importieren:

      1. Den Code hier in die Zwischenablage kopieren.
      2. In Node Red - das Menü mit den 3 Strichen rechts oben öffne und auf Import klicken.
      3. Inhalt der Zwischenablage in das rosa Fenster
      4. Auf Import klicken und den Flow plazieren.
      5. dann auf den roten Deploy Button klicken und das wars.

      Test einfach - in dem Du dann in javascript.0.hyperionng den hex-String einträgst und schaust was dann in dem Ausgabepunkt ankommt.

      Habs gerade mit eigenen Datenpunkten getestet. Das schaut in meinen Augen gut aus. 😉

      b4352ac2-036c-4610-b005-f7a0cfa14922-image.png

      D B 3 Replies Last reply Reply Quote 0
      • D
        denjo @mickym last edited by

        @mickym ja wird bestimmt laufen ich muss nur den eingabe datenpunkt anpassen eben

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

          @mickym nee er schreibt das falsch

          {"r":0,"g":0,"b":255} und soll eigentlich 0,0,255

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

            @denjo

            so hier function Node geändert:

            [
                {
                    "id": "c9bd97db.0bd1c8",
                    "type": "function",
                    "z": "6e170384.60c96c",
                    "name": "HEX zu RGB",
                    "func": "msg.payload=hex_to_RGB(msg.payload)\n\n\nreturn msg;\n\nfunction hex_to_RGB(hex) {\n    var m = hex.match(/^#?([\\da-f]{2})([\\da-f]{2})([\\da-f]{2})$/i);\n    return (parseInt(m[1], 16)).toString() + ',' + (parseInt(m[2], 16)).toString() + ',' + (parseInt(m[3], 16)).toString(); \n}",
                    "outputs": 1,
                    "noerr": 0,
                    "initialize": "",
                    "finalize": "",
                    "x": 1290,
                    "y": 3180,
                    "wires": [
                        [
                            "32bd27af.6eff68"
                        ]
                    ]
                },
                {
                    "id": "28743d11.362b72",
                    "type": "ioBroker in",
                    "z": "6e170384.60c96c",
                    "name": "",
                    "topic": " javascript.0.hyperionng",
                    "payloadType": "value",
                    "onlyack": "",
                    "func": "all",
                    "gap": "",
                    "fireOnStart": "false",
                    "x": 1080,
                    "y": 3180,
                    "wires": [
                        [
                            "c9bd97db.0bd1c8"
                        ]
                    ]
                },
                {
                    "id": "32bd27af.6eff68",
                    "type": "ioBroker out",
                    "z": "6e170384.60c96c",
                    "name": "",
                    "topic": "hyperion_ng.0.general.control.setColorRGB",
                    "ack": "false",
                    "autoCreate": "false",
                    "stateName": "",
                    "role": "",
                    "payloadType": "",
                    "readonly": "",
                    "stateUnit": "",
                    "stateMin": "",
                    "stateMax": "",
                    "x": 1570,
                    "y": 3180,
                    "wires": []
                }
            ]
            

            Jetzt schaut der Flow nur noch so aus

            cd9dd48f-7bd4-44f9-abd8-a5bfc2d9239f-image.png

            Die Funktion ist auch geschrumpft - falls Du die doch noch in Blockly verwenden willst:

            function hex_to_RGB(hex) {
                var m = hex.match(/^#?([\da-f]{2})([\da-f]{2})([\da-f]{2})$/i);
                return (parseInt(m[1], 16)).toString() + ',' + (parseInt(m[2], 16)).toString() + ',' + (parseInt(m[3], 16)).toString(); 
            }
            

            274ff6a3-ae7e-4771-be3a-8b350d4024a8-image.png

            und das nächste Mal wäre es natürlich hilfreich, wenn man exakt weiß was rauskommen soll. 😉

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

              @mickym sorry aber jetzt macht ändert er das ausgabe objekt nicht

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

                @denjo Dann stimmt sehr wahrscheinlich an der Eingabe was nicht.

                das muss genau 6 Zeichen sein - entweder mit oder ohne #.

                Wenn nichts rauskommt - musst mal im Log schauen, ob so was drin steht:

                node-red.0	2021-03-14 01:55:14.221	error	(2144) 14 Mar 01:55:14 - [error] [function:HEX zu RGB] TypeError: Cannot read property '1' of null
                node-red.0	2021-03-14 01:53:23.582	error	(2144) 14 Mar 01:53:23 - [error] [function:HEX zu RGB] TypeError: Cannot read property '1' of null
                

                Falls man die Eingaben nicht genau so sind, dann wird das viel aufwändiger.

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

                  @mickym ob ich #FFFF00 oder FFFF00 eingebe ist egal das objekt wird nicht geändert

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

                    @denjo hast Du Fehlermeldungen im Log?

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

                      @mickym nein nix, sonst lass ruhig trotzdem danke für deine mühe ich werd ein riesen aufwändiges blockly sonst machen. wird zwar ewig dauern aber geht auch anders

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

                        @denjo Dann schau nochmal ob der Pfad im Topic der out Node stimmt

                        D mickym 2 Replies Last reply Reply Quote 0
                        • D
                          denjo @mickym last edited by

                          @mickym der stimmt

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

                            und die InNode - auch nochmal checken
                            Du hast was geschrieben dass Du die nochmal korrigiert hast

                            D mickym 2 Replies Last reply Reply Quote 0
                            • D
                              denjo @mickym last edited by

                              @mickym ja hatte ich aber mit dein ersten script klappe es und dann hab ich das objekt nicht mehr geändert

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

                                @mickym Ja aber ich hab ja nochmal den Flow neu gemacht und da hatte ich doch nicht deine andere InNode - also nochmal anpassen bitte.

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

                                  @mickym der name des objekt und der pfad ist der gleiche geblieben

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

                                    @denjo Mach bitte einen Screenshot - unter den Nodes sollten eigentlich die Werte stehen.

                                    1dd4f57e-be3d-4b16-9606-4b906e444f98-image.png

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

                                      @mickym Screenshot 2021-03-14 020956.jpg

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

                                        @denjo Na und hast Du in dem Datenpunkt einen neuen Wert eingegeben?
                                        Und wie gesagt nochmals die Pfade zu dem Datenpunkt prüfen ggf. den Pfad über die Zwischenablage in den Topic reinkopieren.

                                        So sieht man dass gar nichts ankommt. In dem In Node muss der Wert aus dem Datenpunkt auftauchen

                                        Hier hst Du vor einer Std. geschrieben, dass du nochwas angepasst hast - aber leider nicht was.

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

                                          @mickym hab das objekt neu gemacht, jetzt klappt es glaub ich alles

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

                                            @denjo Dann poste doch nochmal einen Screenshot - dann glaub ich es auch. 😉
                                            War ja holprig - aber Du siehst eigentlich nicht kompliziert. 😉

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            559
                                            Online

                                            32.0k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            88
                                            4966
                                            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