Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] Pimatic - Werte von externen socket.io oder webapi einlesen und senden?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Pimatic - Werte von externen socket.io oder webapi einlesen und senden?

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

      Ich versuche alle 3 Monate PiMatic anzufassen, weil das Projekt auch node.js basiert ist.

      Habe schon überlegt ob man ein Wrapper für die Plugins machen kann…

      Wo kann man über PiMatic API lesen?

      1 Reply Last reply Reply Quote 0
      • N
        nsession last edited by

        Über die Api kann man hier nachlesen.

        https://pimatic.org/guide/api/

        Ich kann php, phyton und linux scripte abe rmit java steh ich echt auf kriegsfuß, sonnst würde ich meine hilfe anbieten.

        als keine beispiel:

        Rufe ich diese URL auf:

        http://10.0.0.20/api/variables/EssZiThermostat.temperatureSetpoint/
        

        bekomm ich das im Browser zurück:

        {"variable":{"name":"EssZiThermostat.temperatureSetpoint","readonly":true,"type":"attribute","value":19.5,"unit":"°C"},"success":true}
        

        Ich hab mich mal mit dem parser daran versucht der will aber nicht.

        Auf der anderen seite ist das ganze ja fast wie die tv-spielfilm Anbindung in iobroker.

        Ich kann gerne mehr zur verfügung stellen.

        Ein pimatic Conecctor ähnle dem FEHM connector wär natürlich super.

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

          @nsession:

          Über die Api kann man hier nachlesen.

          https://pimatic.org/guide/api/

          Ich kann php, phyton und linux scripte abe rmit java steh ich echt auf kriegsfuß, sonnst würde ich meine hilfe anbieten.

          als keine beispiel:

          Rufe ich diese URL auf:

          http://10.0.0.20/api/variables/EssZiThermostat.temperatureSetpoint/
          

          bekomm ich das im Browser zurück:

          {"variable":{"name":"EssZiThermostat.temperatureSetpoint","readonly":true,"type":"attribute","value":19.5,"unit":"°C"},"success":true}
          

          Ich hab mich mal mit dem parser daran versucht der will aber nicht.

          Auf der anderen seite ist das ganze ja fast wie die tv-spielfilm Anbindung in iobroker.

          Ich kann gerne mehr zur verfügung stellen.

          Ein pimatic Conecctor ähnle dem FEHM connector wär natürlich super. `
          Für ioBroker ist natürlich websocket-API interessant.

          Aber ich muss vermutlich RESTful und Socket IO benutzen.

          was kriegst du wenn du

          http://10.0.0.20/api/variables
          http://10.0.0.20/api/devices
          http://10.0.0.20/api/groups
          
          

          aufrufst?

          Damit kann ich alle Geräte, Variablen und Gruppen extragieren und dann mit socket IO die Ereignisse über die Änderungen bekommen.

          Du kannst auch an dogafox at gmail.com senden.

          1 Reply Last reply Reply Quote 0
          • N
            nsession last edited by

            Schick dir nachher gerne mal alles per Email.

            Muss(darf) jetzt erstmal mit Frau ins Kino

            will hier den Thread nich so aufblasen.

            1 Reply Last reply Reply Quote 0
            • N
              nsession last edited by

              Hi Bluebox,

              Email ist raus.

              wenn ich irgend wie noch helfen kann gib bescheid.

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

                Ich habe die erste Version implementiert.

                Was ich von dir eventuell brauche, das ist die minimale config.json für pimatic mit ein paar Geräten:

                • temperatrue,

                • humidity,

                • switch

                So dass da keine private Daten drin stehen. Damit ich spielen kann und die automatische Tests schreiben kann.

                Die Geräte dann in einer Gruppe und auf einer Seite zuhaben, ist auch währe nicht schlecht.

                https://github.com/ioBroker/ioBroker.pimatic

                cd /opt/iobroker
                npm i https://github.com/ioBroker/ioBroker.pimatic/tarball/master --production
                iobroker add pimatic
                
                
                1 Reply Last reply Reply Quote 0
                • N
                  nsession last edited by

                  Hi Bluefox

                  so schnell hät ich nicht mit nem Adapter gerechnet echt klasse.

                  Der Pimatic Adapter läuft zumindest soweit das ich alle Geräte und deren Werte im iobroker habe.

                  Der Adapter verbindet nur nicht zu Pimatic und die werte werden nicht aktualisiert. (Siehe Bild)

                  Ich untersuch das mal genauer. Hab auch festgesetellt das die setpoints der Thermostaten nicht passen in den Zuständen. (siehe Bild 2)

                  Ich geb bescheid wenn ich rausgefunden hab warum.
                  2344_pimatic_adapter.png
                  2344_zustaende.png

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

                    @nsession:

                    Hi Bluefox

                    so schnell hät ich nicht mit nem Adapter gerechnet echt klasse.

                    Der Pimatic Adapter läuft zumindest soweit das ich alle Geräte und deren Werte im iobroker habe.

                    Der Adapter verbindet nur nicht zu Pimatic und die werte werden nicht aktualisiert. (Siehe Bild)

                    Ich untersuch das mal genauer. Hab auch festgesetellt das die setpoints der Thermostaten nicht passen in den Zuständen. (siehe Bild 2)

                    Ich geb bescheid wenn ich rausgefunden hab warum. `
                    Verbindung ist da, sonst wird man überhaupt nichts sehen.

                    Ich habe nur Status falsch upgedatet.

                    Kannst du noch mal vom git updaten?

                    1 Reply Last reply Reply Quote 0
                    • N
                      nsession last edited by

                      Hi Bluefox

                      hab ein update gemacht:

                      npm i https://github.com/ioBroker/ioBroker.pimatic/tarball/master --production
                      

                      Files haben neues Datum:

                      effekt bleib aber der selbe?

                      Und noch eine Anmerkung.

                      Ich weiß nicht wie der iobroker draufkommt bei den Thermostaten gibt es einen "valve" Wert in % der ist als humidty bezeichnet, entspricht aber der Ventielöffnung in %

                      das ist aber jetzt erstmal noch unwichtig.

                      Kann ich was tun in einer Dateien, um den fehler mit dem Status zufinden in welcher muss ich da suchen.

                      Den Code kann ich grundlegen schon lesen.

                      Gruß Andreas
                      2344_pimatic.jpg

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators last edited by

                        @nsession:

                        hab ein update gemacht:

                        Code: Alles auswählen

                        npm i https://github.com/ioBroker/ioBroker.pi … all/master --production

                        Files haben neues Datum:

                        effekt bleib aber der selbe? `
                        hast du mal ein upload gemacht?

                        cd /opt/iobroker
                        iobroker stop pimatic
                        iobroker upload pimatic
                        iobroker start pimatic
                        

                        ggf. mit sudo

                        Gruß

                        Rainer

                        1 Reply Last reply Reply Quote 0
                        • N
                          nsession last edited by

                          grad gemacht

                          root@ioBroker-RasPi:~# cd /opt/iobroker
                          root@ioBroker-RasPi:/opt/iobroker# iobroker stop pimatic
                          Adapter "pimatic.0 stopped.
                          root@ioBroker-RasPi:/opt/iobroker# iobroker upload pimatic
                          got /opt/iobroker/node_modules/iobroker.pimatic/admin
                          upload [1] pimatic.admin /opt/iobroker/node_modules/iobroker.pimatic/admin/pimatic.png pimatic.png image/png
                          upload [0] pimatic.admin /opt/iobroker/node_modules/iobroker.pimatic/admin/index.html index.html text/html
                          root@ioBroker-RasPi:/opt/iobroker# iobroker start pimatic
                          Adapter "pimatic.0 started.
                          
                          

                          ergebniss das selbe.

                          hab ich das update falsch gemacht?

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

                            @nsession:

                            grad gemacht

                            root@ioBroker-RasPi:~# cd /opt/iobroker
                            root@ioBroker-RasPi:/opt/iobroker# iobroker stop pimatic
                            Adapter "pimatic.0 stopped.
                            root@ioBroker-RasPi:/opt/iobroker# iobroker upload pimatic
                            got /opt/iobroker/node_modules/iobroker.pimatic/admin
                            upload [1] pimatic.admin /opt/iobroker/node_modules/iobroker.pimatic/admin/pimatic.png pimatic.png image/png
                            upload [0] pimatic.admin /opt/iobroker/node_modules/iobroker.pimatic/admin/index.html index.html text/html
                            root@ioBroker-RasPi:/opt/iobroker# iobroker start pimatic
                            Adapter "pimatic.0 started.
                            
                            

                            ergebniss das selbe.

                            hab ich das update falsch gemacht? `
                            Ja. Falsch.

                            Richtig ist so:

                            cd /opt/iobroker
                            iobroker stop pimatic
                            npm i https://github.com/ioBroker/ioBroker.pimatic/tarball/master --production
                            iobroker upload pimatic
                            iobroker start pimatic
                            
                            
                            1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators last edited by

                              Hallo Bluefox
                              @Bluefox:

                              Ja. Falsch. `
                              bin mir da nicht sicher, dass er das falsch gemacht hat, er hat erst das update (siehe weiter oben) und dann nochmal getrennt den upload gemacht.

                              Das müsste doch auch klappen, oder?

                              Gruß

                              Rainer

                              1 Reply Last reply Reply Quote 0
                              • N
                                nsession last edited by

                                OK ergebnis das selbe:

                                root@ioBroker-RasPi:/opt/iobroker# iobroker stop pimatic
                                Adapter "pimatic.0 stopped.
                                root@ioBroker-RasPi:/opt/iobroker# npm i https://github.com/ioBroker/ioBroker.pimatic/tarball/master --production
                                iobroker.core@0.1.0 /opt/iobroker
                                └── iobroker.pimatic@0.1.0
                                
                                root@ioBroker-RasPi:/opt/iobroker# iobroker upload pimatic
                                got /opt/iobroker/node_modules/iobroker.pimatic/admin
                                upload [1] pimatic.admin /opt/iobroker/node_modules/iobroker.pimatic/admin/pimatic.png pimatic.png image/png
                                upload [0] pimatic.admin /opt/iobroker/node_modules/iobroker.pimatic/admin/index.html index.html text/html
                                root@ioBroker-RasPi:/opt/iobroker# iobroker start pimatic
                                Adapter "pimatic.0 started.
                                root@ioBroker-RasPi:/opt/iobroker#
                                
                                

                                status bleibt gleich.

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

                                  Habe paar Fehler gefunden. Bitte noch mal probieren.

                                  1 Reply Last reply Reply Quote 0
                                  • N
                                    nsession last edited by

                                    Nach eine rneuinstallation des kompletten pimatic adapters siehts besser aus.

                                    startet immer wieder neu aber im log kommen folgende meldungen:

                                    pimatic.0	2017-03-13 20:44:46.009	error	at Socket. (/opt/iobroker/node_modules/iobroker.pimatic/main.js:501:52)
                                    pimatic.0	2017-03-13 20:44:46.009	error	ReferenceError: device is not defined
                                    pimatic.0	2017-03-13 20:44:46.008	error	uncaught exception: device is not defined
                                    pimatic.0	2017-03-13 20:44:20.334	warn	Device "82024" was found in the group "Sensoren", but not found in devices
                                    pimatic.0	2017-03-13 20:44:20.187	info	connected
                                    pimatic.0	2017-03-13 20:44:18.327	info	starting. Version 0.1.0 in /opt/iobroker/node_modules/iobroker.pimatic, node: v6.10.0
                                    host.	2017-03-13 20:44:18.269	info	States connected to redis 127.0.0.1:6379
                                    host.ioBroker-RasPi	2017-03-13 20:44:16.146	info	instance system.adapter.pimatic.0 started with pid 5479
                                    

                                    Gibt es irgendwo einen Winkel wo ich die ID suchen kann um rauszufinden was der genau für ein Device meint

                                    Edit :

                                    oh du hast noch was gemacht dasnn muss ich vermutlich auchnochmal drüber.

                                    mach ich nachher gleich.

                                    EDIT2: 20:54 Uhr

                                    scheint zu laufen.

                                    werte kommen rein und updaten sich auch wenn sich was ändert.

                                    ich schau mir mal dieses changeTemperaturTo genauer an

                                    das klappt noch nich ganz aber pimatic registriet es.

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      nsession last edited by

                                      So ich hab das websocket mitgelogged

                                      Pimatic websocket Log

                                      22:51:18.507

                                      3 1

                                      22:51:18.516

                                      42["messageLogged",{"level":"error","msg":"Could not find action "changeTemperatureTo".","meta":{"timestamp":"2017-03-13T21:51:35.268Z","tags":["pimatic"]}}] 159

                                      22:51:34.933

                                      2 1

                                      22:51:43.517

                                      3 1

                                      22:51:43.528

                                      42["deviceAttributeChanged",{"deviceId":"WoZiThermostat","attributeName":"synced","time":1489441904670,"value":false}] 118

                                      22:51:44.322

                                      42["variableValueChanged",{"variableName":"WoZiThermostat.synced","variableValue":false}] 89

                                      22:51:44.345

                                      42["deviceAttributeChanged",{"deviceId":"WoZiThermostat","attributeName":"temperatureSetpoint","time":1489441904679,"value":19}] 128

                                      22:51:44

                                      42["deviceAttributeChanged",{"deviceId":"WoZiThermostat","attributeName":"synced","time":1489442367383,"value":false}] 118

                                      22:59:27.058

                                      42["variableValueChanged",{"variableName":"WoZiThermostat.synced","variableValue":false}] 89

                                      22:59:27.078

                                      42["deviceAttributeChanged",{"deviceId":"WoZiThermostat","attributeName":"temperatureSetpoint","time":1489442367391,"value":20}] 128

                                      22:59:27.080

                                      42["variableValueChanged",{"variableName":"WoZiThermostat.temperatureSetpoint","variableValue":20}]

                                      Der Rote Teil ist wenn ich im iobroker etwas ändere an dem Setpoint

                                      Log aus iobrocker websocket:

                                      42["stateChange","pimatic.0.devices.WoZiThermostat.temperatureSetpoint",{"val":20,"ack":false,"ts":1489442465881,"q":0,"from":"system.adapter.admin.0","lc":1489442367391}]

                                      der schwarze Teil ist eine Änderung im Pimati Frontend.

                                      Der Grüne Teil ist ein aufruf dieser URL

                                      http://10.0.0.20/api/device/WoZiThermos … etpoint=20

                                      vielleicht hilft das noch etwas weiter.

                                      ich schau mir als nächstet mal den schalter an ob hier ein update klappt.

                                      Viele Grüße

                                      PS: echt klasse forum und Respekt BlueFox für die schnelle hilfe hier.

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

                                        Heist es, dass es alles außer

                                        Could not find action "changeTemperatureTo"

                                        geht?

                                        1 Reply Last reply Reply Quote 0
                                        • N
                                          nsession last edited by

                                          Guten Morgen Bluefox,

                                          das auslesen der werte klappt.

                                          Er behällt die Verbindung und Updatet die Werte direkt.

                                          Sprich wenn ich einen Wert in Pimatic ändere oder dort ein Wert upgedatet wird.

                                          Seh ich direkt den neuen Wert im iobroker.

                                          Lediglich die update Funktion( iobroker zu pimatic) klappt nicht.

                                          Hier meldet Pimatic z.B. could not find action "changeStateTo" beim Schalter

                                          oder could not find action "changeTemperatureTo" beim Thermostat

                                          Siehe hierzu die WebSocket loggs.

                                          Ich wollte eigentlich irgendwie debuggen wie der Update befehl rausgeht und vermute das URL change anders ist als über websocket.

                                          Grüße

                                          1 Reply Last reply Reply Quote 0
                                          • N
                                            nsession last edited by

                                            Ich hab mal noch etwas gestöbert.

                                            Hier ein Link mit den ganzen actions:

                                            https://github.com/pimatic/pimatic/blob … offee#L187

                                            Im Forum habe ich das gefunden:

                                            EDIT: I’m testing this out, but pimatic doesn’t seem to do anything with the request. The socket does not return any errors, and in the pimatic logs nothing shows up.
                                            I’m sending this JSONObject over the socket:
                                            {“id”:“callAction”,“action”:“callDeviceAction”,“params”:{“deviceId”:“lamp”,“actionName”:“changeStateTo”,“state”:true}}
                                            

                                            Link zum gefunden: https://forum.pimatic.org/topic/864/exe … ebsocket/6

                                            Ich hoffe das hilft dir etwas.

                                            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

                                            583
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            41
                                            7655
                                            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