Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. LaMetric oder JSON-POST per IOBroker Javascript

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

LaMetric oder JSON-POST per IOBroker Javascript

Scheduled Pinned Locked Moved Skripten / Logik
69 Posts 19 Posters 14.5k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • enzoE Offline
    enzoE Offline
    enzo
    wrote on last edited by
    #29

    Vorstellung von Matthias haus-automatisierung.com

    ist dabei LaMetric ioBroker adapta zu erstellen. ;)

    https://github.com/klein0r/ioBroker.lametric

    1 Reply Last reply
    0
    • ruhr70R Offline
      ruhr70R Offline
      ruhr70
      wrote on last edited by
      #30

      @enzo:

      Vorstellung von Matthias haus-automatisierung.com

      ist dabei LaMetric ioBroker adapta zu erstellen. ;)

      https://github.com/klein0r/ioBroker.lametric `

      Daumen hoch!

      Danke für die Info!

      Adapter: Fritzbox, Unify Circuit
      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

      1 Reply Last reply
      0
      • Espace0401E Offline
        Espace0401E Offline
        Espace0401
        wrote on last edited by
        #31

        Ich habe diesen mal ausprobiert. Klappt bisher einwandfrei.

        Iobroker in LXC-Container auf Proxmox 8 - Sicherung auf PBS - Homematic CCU2 - Netatmo Wetterstation und Thermostat

        1 Reply Last reply
        0
        • S Offline
          S Offline
          Siegfried
          Forum Testing
          wrote on last edited by
          #32

          Gibt es auch eine anleitung zu dem Adapter?

          1 Reply Last reply
          0
          • Espace0401E Offline
            Espace0401E Offline
            Espace0401
            wrote on last edited by
            #33

            Nur das was auf Github steht. Reicht aber doch fürs erste. Einfach mal ausprobieren.

            Iobroker in LXC-Container auf Proxmox 8 - Sicherung auf PBS - Homematic CCU2 - Netatmo Wetterstation und Thermostat

            1 Reply Last reply
            0
            • S Offline
              S Offline
              Siegfried
              Forum Testing
              wrote on last edited by
              #34

              Ich bekomme es nicht zu laufen

              Vieleicht mache ich einen fehler mit dem Key

              1 Reply Last reply
              0
              • Espace0401E Offline
                Espace0401E Offline
                Espace0401
                wrote on last edited by
                #35

                Du musst dir hier: https://developer.lametric.com/user/devices einen API Key zulegen und den dann eintragen. Dann sollte der Adapter grün werden und es funktioniert.

                Iobroker in LXC-Container auf Proxmox 8 - Sicherung auf PBS - Homematic CCU2 - Netatmo Wetterstation und Thermostat

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  Siegfried
                  Forum Testing
                  wrote on last edited by
                  #36

                  Danke

                  Fehler gefunden … ich habe versucht einen Key zu erstelle unter "MY APP" anstelle den API-Key vom Gerät zu nehmen :-(

                  Bin nun mal ein blutiger Anfänger

                  Aber nun kann ich schon mal einen Text Senden.

                  Hab nur noch das Problem dass wenn ich versuche einen Wert zu senden (nicht reiner Text der kommt richtig an); dan steht auf mein LaMetric nur was von jasonobjekt usw... geht das bei dir?

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    Siegfried
                    Forum Testing
                    wrote on last edited by
                    #37

                    Wenn ich folgenden code

                    5988_code.jpg

                    Bekomme ich nur eine Unverständliche Meldung aud meinem Lametric.

                    Selbes bei Telegram gibt saubere werte.

                    Mache ich da was falsch?

                    1 Reply Last reply
                    0
                    • T Offline
                      T Offline
                      tristaaan
                      wrote on last edited by
                      #38

                      Hi zusammen,

                      ich habe mir nun auch das Skript von Matthias Kleine installiert. Das Skript funktioniert bei mir leider nicht. Nachdem ich den IP-Adresse & API Key hinterlegt habe, springt die Instanz auf grün. Soweit so gut. Wenn eine Nachricht an die LaMetric versendet wird, auch egal welchen Inhalt die Nachricht enthält, bekomme ich im Log folgende Fehlermeldung: error Status Code: 400 / Content: [object Object]

                      Auszug vom Log:

                      lametric.0	2018-07-11 09:39:06.731	error	Status Code: 400 / Content: [object Object]
                      lametric.0	2018-07-11 09:39:06.680	info	sending request to http://192.168.177.21:8080/api/v2/device/notifications with data: {"priority":"warning","icon_type":"none","lifeTime":3000,"model":{"frames":[{"icon":"'a647'","text":"([getState(\"s
                      lametric.0	2018-07-11 09:39:06.680	info	message {"priority":"warning","icon_type":"none","lifeTime":3000,"model":{"frames":[{"icon":"'a647'","text":"([getState(\"spotify-premium.0.playbackInfo.artistName\").val,' - ',getState(\"spotify-prem
                      lametric.0	2018-07-11 09:39:06.680	info	received message
                      

                      Hat jemand von euch eine Idee, was ich ausprobrobieren kann um den Fehler zu beheben?

                      Beste Grüße Tristaaan

                      1 Reply Last reply
                      0
                      • M Offline
                        M Offline
                        manmac
                        wrote on last edited by
                        #39

                        Gibt es schon eine Lösung für den

                        status Code: 400 / Content: [object Object]?

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          manmac
                          wrote on last edited by
                          #40

                          Lösung: es müssen zwingend alle Parameter einen Wert haben. Ton = ohne funktioniert z.B. nicht

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            Siegfried
                            Forum Testing
                            wrote on last edited by
                            #41

                            Hallo

                            Hab den Adaptter angepasst dass er auch Variable Werte als Notifikationstext annimmt

                            Um fehler zu vermeiden ist in der Version auch nicht mehr möglich den Ton auf "none" zu setzen. (status Code: 400 / Content: [object Object]?)

                            https://github.com/Sigi74/ioBroker.lametric

                            1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              malc
                              wrote on last edited by
                              #42

                              Ich nutze den Adapter sowie auch nativ per Http Request meine LaMetric.

                              Woran ich bei beiden Wegen scheitere ist es eine Meldung zu senden ohne das ein Ton abgespielt werden soll. In beiden Fällen wird die Nachricht dann nicht angezeigt.

                              Hat wer da einen Tipp für mich?

                              Malc

                              Fan von ioBroker!

                              <size size="50">und falls ich eine Frage stelle die irgendwo schon mal beantwortet wurde: "Ja, Suchfunktion genutzt, aber keine Lösung gefunden / nicht die richtigen Suchbegriffe gewusst."

                              …</size>

                              1 Reply Last reply
                              0
                              • J Offline
                                J Offline
                                j0hu
                                wrote on last edited by j0hu
                                #43

                                Hallo, ich möchte das Thema "Lametric Indicator App via JSON-Post" nochmal aufwärmen ;-)

                                Um die aktuelle Leistung meiner PV-Anlage über die Lametric Time anzeigen zu lassen, habe ich eine Indicator-App auf den Developer-Seiten von Lametric erstellt (eine Indicator-App ist für diesen Zweck meine ich besser geeignet, als eine Notification. Nachdem der LaMetric-Adapter von Matthias Kleine nur Notifications unterstützt, kommt dieser hier nicht in Frage).

                                Die Werte des Wechselrichters sollen vom ioBroker auf die Lametric (die App) gepusht werden. Für diesen Zweck habe ich das Java-Script aus diesem Post verwendet und die Platzhalter (API Key/Access Token, Local Push URL) mit meinen privaten App-Daten ersetzt. Die letzten Bemerkungen von "ronnyw" zu API-Key und Access Token habe ich berücksichtigt - trotzdem werden die Werte nicht zur LaMetric übertragen und folgende Fehler erscheinen im Log:

                                17:01:03.542	info	javascript.0 (20298) script.js.Testscript: getState(id=lametric.0.meta.wifi.ip, timerId=undefined) => {"val":"192.168.0.17","ack":true,"ts":1583510437713,"q":0,"from":"system.adapter.lametric.0","user":"system.user.admin","lc":1579870802721}
                                17:01:03.570	info	javascript.0 (20298) script.js.Testscript: http Status: 401
                                17:01:03.570	warn	javascript.0 (20298) script.js.Testscript: HEADERS: {"content-type":"application/json;charset=UTF8","connection":"close","transfer-encoding":"chunked","date":"Fri, 06 Mar 2020 16:01:03 GMT","server":"lighttpd/1.4.35"}
                                17:01:03.574	info	javascript.0 (20298) script.js.Testscript: body: { "errors" : [ { "message" : "Wrong api key" } ] }
                                

                                Weiter werde ich aus der folgenden, letzten Zeile im Beispielscript nicht schlau:

                                ...
                                LaMetricIndicator(optionsTemplate,dataTemplate);</hier-ein-schlüssel-dessen-vertraulichkeit-ich-nicht-einschätzen-kann>
                                

                                Gebe ich hier meinen persönlichen "Schlüssel" aus der "Local Push URL" ein, gibt es offenbar einen Syntax-Fehler?!
                                (Nur am Rande: Komisch ist auch, dass Zeile 97 genannt wird - das Script geht nur bis Zeilennummer 94 <= ein Bug im Edior?)

                                18:03:43.824	info	javascript.0 (20298) Stop script script.js.Testscript
                                18:03:43.825	info	javascript.0 (20298) Start javascript script.js.Testscript
                                18:03:43.826	error	javascript.0 (20298) script.js.Testscript compile failed: at script.js.Testscript:97
                                

                                "Betankt" hier irgend jemand von Euch erfolgreich eine Lametric Indicator-App vom ioBroker aus und kann ein funktionierendes Code-Beispiel (via JSON/Java-Script oder ggf. via CURL mit Blockly) zeigen!?

                                Vielen Dank vorab!

                                1 Reply Last reply
                                0
                                • G Offline
                                  G Offline
                                  gammler2003
                                  wrote on last edited by gammler2003
                                  #44

                                  Hallo zusammen,

                                  gibt es hierzu einen neuen Stand? Hat es jemand aus der Community geschafft, eine Indication an die LaMetric zu schicken?

                                  Ich habe mittlerweile sämtliche Kombinationen ausprobiert, erhalte aber immer nur die Fehlermeldung "wrong api key".

                                  Das Beispiel sagt in der letzten Zeile folgendes:

                                  ...
                                  LaMetricIndicator(optionsTemplate,dataTemplate);</hier-ein-schlüssel-dessen-vertraulichkeit-ich-nicht-einschätzen-kann>
                                  
                                  

                                  Ist hier der Access token gemeint? Wenn ich diesen nach dem Semikolon nicht in einfache Hochkommas setze, erhalte ich einen Syntax-Error.

                                  @ronnyw @j0hu Habe eure Beiträge im Forum gesehen. Habt ihr die LaMetric mit einer Indicator-App über ioBroker im Einsatz und würdet mir freundlicherweise eure Lösung verraten?

                                  Vielen Dank für eure Hilfe,
                                  Steven

                                  R G 2 Replies Last reply
                                  0
                                  • G gammler2003

                                    Hallo zusammen,

                                    gibt es hierzu einen neuen Stand? Hat es jemand aus der Community geschafft, eine Indication an die LaMetric zu schicken?

                                    Ich habe mittlerweile sämtliche Kombinationen ausprobiert, erhalte aber immer nur die Fehlermeldung "wrong api key".

                                    Das Beispiel sagt in der letzten Zeile folgendes:

                                    ...
                                    LaMetricIndicator(optionsTemplate,dataTemplate);</hier-ein-schlüssel-dessen-vertraulichkeit-ich-nicht-einschätzen-kann>
                                    
                                    

                                    Ist hier der Access token gemeint? Wenn ich diesen nach dem Semikolon nicht in einfache Hochkommas setze, erhalte ich einen Syntax-Error.

                                    @ronnyw @j0hu Habe eure Beiträge im Forum gesehen. Habt ihr die LaMetric mit einer Indicator-App über ioBroker im Einsatz und würdet mir freundlicherweise eure Lösung verraten?

                                    Vielen Dank für eure Hilfe,
                                    Steven

                                    R Offline
                                    R Offline
                                    ronnyw
                                    wrote on last edited by
                                    #45

                                    @gammler2003
                                    Meine Scripte laufen nach wie vor auf gleichem Stand (ohne den Adapter, den es zu dem Zeitpunkt noch nicht gab. Dafür mit JS und Node RED). Gerade in diesem Augenblick erinnert mich meine LaMetric daran, dass das Fenster im Badezimmer zu lange geöffnet ist :-).
                                    Ich müsste das Thema auch erstmal für mich wieder aufarbeiten, kann dann aber gerne auch ganze Scripte hier posten. Dafür brauche ich etwas Zeit, bei Bedarf könnte ich am Wochenende mal graben...

                                    1 Reply Last reply
                                    0
                                    • siggi85S Offline
                                      siggi85S Offline
                                      siggi85
                                      wrote on last edited by siggi85
                                      #46

                                      Vermutlich hilft es nicht, weiter (weil ich dafür extra nen virtuellen Server mit FHEM betreibe), aber ich schreibe trotzdem mal, wie ich meine Lametric über iobroker nutze:

                                      Ich habe sehr viel bei mir bezüglich Nachrichten und Clockicon auf der Lametric umgesetzt, allerdings löse ich das ganze über die Anbindung an FHEM per ioBroker Adapter und nutze hier die Lametric Anbindung. Im Prinzip ist die Lametric das einzige, was ich noch übe die FHEM Installation machen.

                                      EDIT: Kurzes Beispiel aus dem Log, wenn ich die Lautstärke ändere:

                                      fhem.0.lametric.app | DenonSound push token=123456789123456789123456789123456789123456789123456789 text=37.5 icon=a21067 channels=Sound > set
                                      

                                      Oder ein Clockicon auf der Uhr setze (in dem Fall nur ein unauffälliger dunkelroter Punkt, der mir anzeigt, dass das der Babyphone Modus aktiv ist)

                                      fhem.0.lametric.app | clock clockface icon='data:image/gif;;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAGUlEQVQYlWNUVFBgwAeY8MoOCwVXH3z/
                                      

                                      Hier habe ich kurz erklärt, wie ich das mit den Clockicons bei mir umgesetzt habe.

                                      1 Reply Last reply
                                      0
                                      • G gammler2003

                                        Hallo zusammen,

                                        gibt es hierzu einen neuen Stand? Hat es jemand aus der Community geschafft, eine Indication an die LaMetric zu schicken?

                                        Ich habe mittlerweile sämtliche Kombinationen ausprobiert, erhalte aber immer nur die Fehlermeldung "wrong api key".

                                        Das Beispiel sagt in der letzten Zeile folgendes:

                                        ...
                                        LaMetricIndicator(optionsTemplate,dataTemplate);</hier-ein-schlüssel-dessen-vertraulichkeit-ich-nicht-einschätzen-kann>
                                        
                                        

                                        Ist hier der Access token gemeint? Wenn ich diesen nach dem Semikolon nicht in einfache Hochkommas setze, erhalte ich einen Syntax-Error.

                                        @ronnyw @j0hu Habe eure Beiträge im Forum gesehen. Habt ihr die LaMetric mit einer Indicator-App über ioBroker im Einsatz und würdet mir freundlicherweise eure Lösung verraten?

                                        Vielen Dank für eure Hilfe,
                                        Steven

                                        G Offline
                                        G Offline
                                        gammler2003
                                        wrote on last edited by
                                        #47

                                        Mittlerweile konnte ich mein Problem tatsächlich lösen und kann jetzt per Script eine Indikator-App auf meiner LaMetric füttern.

                                        Here we go:

                                        var http = require('http'); 
                                        var accesstoken = 'xxx'; // Hier den Accesstoken der App eingeben
                                        var deviceIpAddress = '192.168.x.x'; /lokale IP der LaMetric
                                        var port = '8080';
                                        
                                        
                                         
                                        var optionsTemplate = {
                                            host: deviceIpAddress,
                                            port: port,
                                            path: null,
                                            method: 'POST',
                                            headers: {
                                                'Content-Length': null,
                                                'X-Access-Token': accesstoken
                                        
                                                }
                                        };
                                        
                                        function LaMetricIndicator(options,data) {
                                         
                                            var dataString = JSON.stringify(data);
                                            options.headers['Content-Length'] = dataString.length;
                                         
                                            var req = http.request(options, function(res) {
                                                log('http Status: ' + res.statusCode);
                                                //log('HEADERS: ' + JSON.stringify(res.headers), (res.statusCode != 201 ? 'warn' : 'info'));
                                         
                                                var bodyChunks  = [];
                                                res.on('data', function(chunk) {
                                                    bodyChunks.push(chunk);
                                                }).on('end', function() {
                                                    var body = Buffer.concat(bodyChunks);
                                                    log('body: ' + body);
                                                });
                                            });
                                         
                                            req.on('error', function(e) {
                                                log('ERROR: ' + e.message, 'warn');
                                            });
                                         
                                            (dataString ? req.write(dataString) : log('Daten: keine Daten im Body angegeben'));
                                            req.end();
                                        }
                                         
                                        // Indicator Fensterstatus setzen
                                         
                                        optionsTemplate.path = '/api/v1/dev/widget/update/com.lametric.xxx/3';
                                        // xxx mit Teil aus der Local Push Url der App ersetzen.
                                        
                                        var dataTemplate = {
                                            frames:[{
                                        
                                                text: 'Weihnachten',
                                                icon: 'a1817',
                                                index: 0,
                                            }]
                                        }
                                         
                                         LaMetricIndicator(optionsTemplate,dataTemplate); 
                                        

                                        Der API-Key wird NICHT benötigt.
                                        Ich hoffe, das hilft dem einen oder anderen. Bei Fragen gerne melden.

                                        haus-automatisierungH 1 Reply Last reply
                                        0
                                        • G gammler2003

                                          Mittlerweile konnte ich mein Problem tatsächlich lösen und kann jetzt per Script eine Indikator-App auf meiner LaMetric füttern.

                                          Here we go:

                                          var http = require('http'); 
                                          var accesstoken = 'xxx'; // Hier den Accesstoken der App eingeben
                                          var deviceIpAddress = '192.168.x.x'; /lokale IP der LaMetric
                                          var port = '8080';
                                          
                                          
                                           
                                          var optionsTemplate = {
                                              host: deviceIpAddress,
                                              port: port,
                                              path: null,
                                              method: 'POST',
                                              headers: {
                                                  'Content-Length': null,
                                                  'X-Access-Token': accesstoken
                                          
                                                  }
                                          };
                                          
                                          function LaMetricIndicator(options,data) {
                                           
                                              var dataString = JSON.stringify(data);
                                              options.headers['Content-Length'] = dataString.length;
                                           
                                              var req = http.request(options, function(res) {
                                                  log('http Status: ' + res.statusCode);
                                                  //log('HEADERS: ' + JSON.stringify(res.headers), (res.statusCode != 201 ? 'warn' : 'info'));
                                           
                                                  var bodyChunks  = [];
                                                  res.on('data', function(chunk) {
                                                      bodyChunks.push(chunk);
                                                  }).on('end', function() {
                                                      var body = Buffer.concat(bodyChunks);
                                                      log('body: ' + body);
                                                  });
                                              });
                                           
                                              req.on('error', function(e) {
                                                  log('ERROR: ' + e.message, 'warn');
                                              });
                                           
                                              (dataString ? req.write(dataString) : log('Daten: keine Daten im Body angegeben'));
                                              req.end();
                                          }
                                           
                                          // Indicator Fensterstatus setzen
                                           
                                          optionsTemplate.path = '/api/v1/dev/widget/update/com.lametric.xxx/3';
                                          // xxx mit Teil aus der Local Push Url der App ersetzen.
                                          
                                          var dataTemplate = {
                                              frames:[{
                                          
                                                  text: 'Weihnachten',
                                                  icon: 'a1817',
                                                  index: 0,
                                              }]
                                          }
                                           
                                           LaMetricIndicator(optionsTemplate,dataTemplate); 
                                          

                                          Der API-Key wird NICHT benötigt.
                                          Ich hoffe, das hilft dem einen oder anderen. Bei Fragen gerne melden.

                                          haus-automatisierungH Online
                                          haus-automatisierungH Online
                                          haus-automatisierung
                                          Developer Most Active
                                          wrote on last edited by
                                          #48

                                          In den letzten Tagen habe ich den LaMetric Adapter ordentlich weiter entwickelt. Man kann nun mit der "My Data (DIY)" App beliebige Datenpunkte auf der LaMetric Time darstellen. Das wird für viele wahrscheinlich viel Programmierarbeit sparen - zumal man keine eigenen Apps mehr anlegen braucht usw.

                                          https://www.youtube.com/watch?v=jxRM-UR1NHw

                                          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                          📚 Meine inoffizielle ioBroker Dokumentation

                                          siggi85S 1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          802

                                          Online

                                          32.5k

                                          Users

                                          81.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe