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. Alexa Device schalten ohne IOT Adapter

    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

    Alexa Device schalten ohne IOT Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      Tigger66 last edited by

      @frankyboy73
      ...ich denke dass passt so weit. Manchmal schaltet es, manchmal nicht. Keine Ahnung warum dass so ist. Liegt aber denke ich nicht am Programm. Wenn Du noch Verbesserungsvorschläge hast, dann gerne her damit. Ansonsten wurmt es mich natürlich schon, dass ich es mit Nodered nicht hin bekommen habe und wenn jemand Zeit und Lust hat, mir hier noch eine einfache Lösung auf zu zeigen, würde ich mich sehr darüber freuen. Danke für Eure Zeit und Hilfe....

      F 1 Reply Last reply Reply Quote 0
      • F
        frankyboy73 @Tigger66 last edited by frankyboy73

        @tigger66 Hi, für Node Red könnte ich einen Versuch starten:

        Test1.jpg

        [
           {
               "id": "9670f595f2687648",
               "type": "ioBroker in",
               "z": "42e1e0df.44b9f",
               "name": "InstantPower",
               "topic": "*",
               "payloadType": "value",
               "onlyack": "",
               "func": "all",
               "gap": "",
               "fireOnStart": "false",
               "outFormat": "MQTT",
               "x": 110,
               "y": 1920,
               "wires": [
                   [
                       "bc5093ff3d43bbe6"
                   ]
               ]
           },
           {
               "id": "a388b9fb24765d46",
               "type": "ioBroker out",
               "z": "42e1e0df.44b9f",
               "name": "powerstate",
               "topic": "",
               "ack": "false",
               "autoCreate": "false",
               "stateName": "",
               "role": "",
               "payloadType": "",
               "readonly": "",
               "stateUnit": "",
               "stateMin": "",
               "stateMax": "",
               "x": 950,
               "y": 1900,
               "wires": []
           },
           {
               "id": "0f7378669fab40cf",
               "type": "switch",
               "z": "42e1e0df.44b9f",
               "name": "",
               "property": "payload",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "gt",
                       "v": "-200",
                       "vt": "num"
                   },
                   {
                       "t": "lt",
                       "v": "-200",
                       "vt": "num"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 2,
               "x": 430,
               "y": 1880,
               "wires": [
                   [
                       "9f9eb39ed31dfad0"
                   ],
                   [
                       "75bc71e3cc13b252"
                   ]
               ]
           },
           {
               "id": "d705372273ef150b",
               "type": "trigger",
               "z": "42e1e0df.44b9f",
               "name": "",
               "op1": "",
               "op2": "true",
               "op1type": "nul",
               "op2type": "bool",
               "duration": "1",
               "extend": false,
               "overrideDelay": false,
               "units": "min",
               "reset": "",
               "bytopic": "all",
               "topic": "topic",
               "outputs": 1,
               "x": 750,
               "y": 1880,
               "wires": [
                   [
                       "a388b9fb24765d46"
                   ]
               ]
           },
           {
               "id": "42e2aac7fafa0df5",
               "type": "trigger",
               "z": "42e1e0df.44b9f",
               "name": "",
               "op1": "",
               "op2": "false",
               "op1type": "nul",
               "op2type": "bool",
               "duration": "1",
               "extend": false,
               "overrideDelay": false,
               "units": "min",
               "reset": "",
               "bytopic": "all",
               "topic": "topic",
               "outputs": 1,
               "x": 750,
               "y": 1940,
               "wires": [
                   [
                       "a388b9fb24765d46"
                   ]
               ]
           },
           {
               "id": "3541441497feb64c",
               "type": "change",
               "z": "42e1e0df.44b9f",
               "name": "reset",
               "rules": [
                   {
                       "t": "set",
                       "p": "reset",
                       "pt": "msg",
                       "to": "true",
                       "tot": "bool"
                   },
                   {
                       "t": "delete",
                       "p": "payload",
                       "pt": "msg"
                   },
                   {
                       "t": "delete",
                       "p": "topic",
                       "pt": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 570,
               "y": 1980,
               "wires": [
                   [
                       "42e2aac7fafa0df5"
                   ]
               ]
           },
           {
               "id": "9f9eb39ed31dfad0",
               "type": "change",
               "z": "42e1e0df.44b9f",
               "name": "reset",
               "rules": [
                   {
                       "t": "set",
                       "p": "reset",
                       "pt": "msg",
                       "to": "true",
                       "tot": "bool"
                   },
                   {
                       "t": "delete",
                       "p": "payload",
                       "pt": "msg"
                   },
                   {
                       "t": "delete",
                       "p": "topic",
                       "pt": "msg"
                   }
               ],
               "action": "",
               "property": "",
               "from": "",
               "to": "",
               "reg": false,
               "x": 570,
               "y": 1860,
               "wires": [
                   [
                       "d705372273ef150b"
                   ]
               ]
           },
           {
               "id": "bc5093ff3d43bbe6",
               "type": "ioBroker get",
               "z": "42e1e0df.44b9f",
               "name": "powerstate",
               "topic": "",
               "attrname": "var1",
               "payloadType": "value",
               "errOnInvalidState": "nothing",
               "x": 270,
               "y": 1920,
               "wires": [
                   [
                       "0f7378669fab40cf",
                       "0a824c23ce4deb74"
                   ]
               ]
           },
           {
               "id": "75bc71e3cc13b252",
               "type": "switch",
               "z": "42e1e0df.44b9f",
               "name": "",
               "property": "var1",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "false"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 570,
               "y": 1900,
               "wires": [
                   [
                       "d705372273ef150b"
                   ]
               ]
           },
           {
               "id": "313eca64894a1c0c",
               "type": "switch",
               "z": "42e1e0df.44b9f",
               "name": "",
               "property": "var1",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "true"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 1,
               "x": 570,
               "y": 1940,
               "wires": [
                   [
                       "42e2aac7fafa0df5"
                   ]
               ]
           },
           {
               "id": "0a824c23ce4deb74",
               "type": "switch",
               "z": "42e1e0df.44b9f",
               "name": "",
               "property": "payload",
               "propertyType": "msg",
               "rules": [
                   {
                       "t": "gt",
                       "v": "400",
                       "vt": "num"
                   },
                   {
                       "t": "lt",
                       "v": "400",
                       "vt": "num"
                   }
               ],
               "checkall": "true",
               "repair": false,
               "outputs": 2,
               "x": 430,
               "y": 1960,
               "wires": [
                   [
                       "313eca64894a1c0c"
                   ],
                   [
                       "3541441497feb64c"
                   ]
               ]
           }
        ]
        


        InstantPower auslesen, den Powerstate (in der Get Node setzte ich das Atribut auf var1 für die spätere Abfrage im switch) auslesen. Dann per Switches schauen ao die Power größer oder kleiner -200 bzw 400 ist. Danach in den Switches schauen ob powerstate ein bzw aus ist (hier bei msg var1 eingeben, habe ich ja als Atribut bei der GetNode gesetzt, damit der powerstate und nicht das eigentliche payload gelesen wird.) Dann einen Trigger setzen der erst nach 1 Minute auslöst (Zeit muss man natürlich austesten, ich würde die länger machen.
        Funktion ist wenn Instant Power kleiner -200 und powerstate ist false wird der trigger gesetzt, nach 1 Minute wird dann eingeschaltet, geht die InstantPower in der Minute über -200 wird der trigger zurückgesetzt und nichts geschaltet. Das gleiche für Power 400 und ausschalten.
        Hoffe ich habe nichts übersehen. Die passenden Datenpunkte bei den Iobroker In, Out und Get Nodes musst du natürlich noch auswählen.
        Code dazu ist unterm Spoiler.
        Test2.jpg
        Test3.jpg

        1 Reply Last reply Reply Quote 0
        • T
          Tigger66 last edited by

          @frankyboy73
          ...erstmal vielen Dank für Deine Mühe. Ich werde das morgen gleich mal testen. Setzt natürlich voraus, das genügend Sonne da ist. Könnte also ein - zwei Tage dauern bis ich Dir Rückmeldung geben kann ob es sauber läuft...ick freu mir über so viel Hilfsbereitschaft 👏 👍

          F 1 Reply Last reply Reply Quote 0
          • F
            frankyboy73 @Tigger66 last edited by

            @tigger66 Kein Thema, lass dir Zeit, wenn was nicht funktioniert melde dich, ich kann das hier leider nicht unter realen Bedingungen testen.

            T 1 Reply Last reply Reply Quote 0
            • T
              Tigger66 @frankyboy73 last edited by

              @frankyboy73
              ...funktioniert wie gewollt, nochmal Danke. Ich habe im Debug Fenster folgende Meldung:
              "msg : string[31]
              "Encrypted credentials not found"
              weist Du was das bedeutet? Ob es was mit dem Flow zu tun hat?

              F 1 Reply Last reply Reply Quote 0
              • F
                frankyboy73 @Tigger66 last edited by

                @tigger66 Hi, schön das es läuft.

                @tigger66 sagte in Alexa Device schalten ohne IOT Adapter:

                "msg : string[31]
                "Encrypted credentials not found"

                Das kenn ich nicht. Meiner Meinung kann das nicht am Flow liegen. Ich habe die Funktion bei mir mit Injekt Nodes getestet und ein Licht damit bei mir schalten lassen und keine Fehlermeldung bekommen.
                Vielleicht kann @mickym hier weiterhelfen. Mal schauen ob er sich meldet.

                T mickym 2 Replies Last reply Reply Quote 0
                • T
                  Tigger66 @frankyboy73 last edited by

                  @frankyboy73
                  ...ist ja auch nicht so schlimm. Laufen tut es ja und darum gehts. Aber hätte ja sein können dass Du es gewusst hättest. Eventuell klärt uns ja noch jemand auf wo es her kommt...

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

                    @frankyboy73 sagte in Alexa Device schalten ohne IOT Adapter:

                    @tigger66 Hi, schön das es läuft.

                    @tigger66 sagte in Alexa Device schalten ohne IOT Adapter:

                    "msg : string[31]
                    "Encrypted credentials not found"

                    Das kenn ich nicht. Meiner Meinung kann das nicht am Flow liegen. Ich habe die Funktion bei mir mit Injekt Nodes getestet und ein Licht damit bei mir schalten lassen und keine Fehlermeldung bekommen.
                    Vielleicht kann @mickym hier weiterhelfen. Mal schauen ob er sich meldet.

                    Da fehlt oder ist die Datei flows_cred.json entweder nicht verfügbar oder so verschlüsselt, dass man nicht darauf zugreifen kann.
                    56de0f0b-808e-4d65-9f81-b1c77dffcf92-image.png

                    In dieser Datei werden normalerweise Usercredentials gespeichert für Konfigurationsnodes oder wenn man UserCredentials in email oder http request Nodes eingibt. Das ist ein Sicherheitsfeature, damit beim Export des Flows die Credentials nicht gleich mitkommen.

                    Normalerweise werden die Daten von NodeRed selbstverschlüsselt - das ist aber das Problem wenn man die Installation neu macht oder umzieht, da man da das Passwort nicht kennt.

                    Das kann man manuell nur in der settings.js derzeit setzen und die flow_credentials.json bin ich mir nicht mal sicher, ob die in dem iobroker Backup enthalten ist. Dazu habe ich ja schon mal ein Issue aufgemacht. Im schlimmsten Fall muss man halt Zugriffe wieder erneut eintragen.

                    Hier mal die Sektion in der settings.js

                     /** By default, credentials are encrypted in storage using a generated key. To
                         * specify your own secret, set the following property.
                         * If you want to disable encryption of credentials, set this property to false.
                         * Note: once you set this property, do not change it - doing so will prevent
                         * node-red from being able to decrypt your existing credentials and they will be
                         * lost.
                         */
                        credentialSecret: "a4a01...........
                    
                    
                    

                    Der Kommentar in der settings. js ist denke ich selbsterklärend

                    T 1 Reply Last reply Reply Quote 1
                    • T
                      Tigger66 @mickym last edited by

                      @mickym
                      ...hat das denn irgendwelche negativen Auswirkungen auf den Flow? Ich denke nicht. Oder?

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

                        @tigger66 Auf den Flow nicht, da ja keine Credentials drin sind. Aber allgemein musst Du das schon gerade ziehen. Ggf. musst Du eine existierende Datei löschen und die Credentials alle neu eingeben.

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

                          @mickym
                          da müsstest Du mir, wenn Du auf so etwas Zeit und Lust hast, aber kräftig unter die Arme greifen weil auch meine Linuxkentnisse eher mau sind, oder gibt es Deines Wissens nach irgendwo dazu ne Anleitung? Zur Not auch auf Englisch. Ansonsten lass ich lieber die Finger davon...

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

                            @tigger66

                            Adapter stoppen

                            cd /opt/iobroker/iobroker-data/node-red.0
                            mv flows_cred.json ~
                            mv .flows_cred.json.backup ~
                            

                            Adapter starten - aber wie gesagt, Du musst dann alle Credentials wieder neu eingeben. Ansonsten lass es halt, aber sauber ist es halt nicht.

                            Nachdem alles im Home-Verzeichnis gesichert ist - kann man die beiden Dateien auch aus dem Homeverzeichnis wieder zurückkopieren.

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

                              @mickym sagte in Alexa Device schalten ohne IOT Adapter:

                              Credentials wieder neu eingeben

                              Hallo mickym
                              danke für die Erklärung. Die drei Zeilen einzugeben krieg ich wohl noch hin, aber wie dass mit den Credentials funktioniert, weiß ich ja trotzdem nicht. Auch die Erklärung auf der Seite: https://nodered-org.translate.goog/docs/creating-nodes/credentials.html?_x_tr_sl=en&_x_tr_tl=de&_x_tr_hl=de&_x_tr_pto=sc hat mich nicht wirklich weiter gebracht. Ich will Dir auch nicht Deine Zeit stehlen. Dann lass ich es wie es ist. Trotzdem Danke....

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              742
                              Online

                              31.7k
                              Users

                              79.9k
                              Topics

                              1.3m
                              Posts

                              4
                              32
                              2094
                              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