Autor Thema: [Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock  (Gelesen 4987 mal)

Offline siggi85

  • Full Member
  • ***
  • Beiträge: 348
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #45 am: 19 Februar 2019, 20:58:29 »
Freut mich. :)

Kleine Idee zur Sache mit dem Devicemode:
Man kann die Uhr ja an sich im "Eine App anzeigen" Modus lassen und die Apps über die API wechseln.

Klar, ist etwas umständlicher zu programmieren, da man ein zyklisches AT oder ein wiederholendes DOIF braucht.
Aber man, man könnte z.B. bestimmte Apps länger darstellen als andere, oder die Uhr jedesmal zwischen den anderen Apps zeigen.

Also z.B:
- Uhr 5s
- Wetter 2s
- Uhr 5s
- Innentemperatur 2s
- Uhr 5s
- ...

Habe auch schon überlegt sowas zu bauen. Dann könnte ich im Falle, dass ich einen Film gucke, diesen "eigenen Wechsel-Modus" deaktivieren und die Uhr lassen, und sobald der Film fertig ist den Modus kurz danach wieder aktivieren lassen.
Da ich kurz vor unserem Umzug stehe, lasse ich das erst Mal wie es ist, aber ggf. werde ich das die nächsten Wochen so umsetzen. :)

Offline Mickey

  • Full Member
  • ***
  • Beiträge: 217
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #46 am: 11 Mai 2019, 05:48:55 »
STOP war mein Fehler, war e nicht !

Hallo,

die Fehlermeldung im Log kommt vermutlich vom Modul:

PERL WARNING: Argument "???" isn't numeric in addition (+) at (eval 33651) line 1.

Und zwar: Bei der Abfrage der Wifi wifiStrength. Bei mir steht 100

Kann das bitte einmal geprüft werden?

Danke, Michael
« Letzte Änderung: 11 Mai 2019, 06:09:11 von Mickey »
Zu mir:
Ich bin leider fast blind (EU Rentner) und nicht zu "faul" was nachzulesen. Bitte seht mir nach, wenn ich einmal zu viel frage oder auch mal Schreibfehler mache. Danke, Michael

Offline siggi85

  • Full Member
  • ***
  • Beiträge: 348
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #47 am: 13 Mai 2019, 13:54:07 »
Kleiner Tip falls jemand an die Original Icons ran muss:

Einfach im Browser die URL nach dem Schema aufbauen:
https://developer.lametric.com/content/apps/icon_thumbs/34.png
https://developer.lametric.com/content/apps/icon_thumbs/87.gif

Die Icon Nummer einfach ohne "a" bzw. "i" davor verwenden.

Damit kann man vorhandene Icons runterladen und editieren bzw. einfach in base64 umwandeln womit sie auch offline verfügbar sind.
Außerdem muss man soweit ich weiß die Variante verwenden, wenn man Icons für die IUhranzeige festlegen will wie in der Commandref beschrieben:

set lametric app clock clockface icon='data:image/png;;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAOklEQVQYlWNUVFBgwAeYcEncv//gP04FMEmsCmCSiooKjHAFMEF0SRQTsEnCFcAE0SUZGBgYGAl5EwA+6RhuHb9bggAAAABJRU5ErkJggg=='
Ich verwende das z.B. um nach einer einmaligen Notification mit Sound und Text bei bestimmten Erinnerungen das Icon weiter in der Uhranzeige darzustellen.

Zum Beispiel das Waschmaschinen-Icon wenn die Wäsche fertig ist, oder ein Fenster-Icon wenn Fenster schon länger geöffnet sind und es draußen kalt ist.
Das Icon wird dann eben wieder aus der Uhranzeige gelöscht, sobald die Waschmaschine ausgeschaltet / neu gestartet oder das Fenster geschlossen wird.

Noch Mal danke für diese Infos! Ich habe mir damit mittlerweile ein System gebaut, indem ich mehrere Icons hinschicken kann (Klingel, Haustür auf, Fenster, Waschmaschiene, Trockner, Post, etc.), die alle eine unterschiedliche Priorität haben. D.h. Wenn ein Zustand eintrifft der ggf. ein Icon auf der Uhr anzeigen soll, wird immer das Icon mit der höchsten Priorität angezeigt. Und wenn der Zustand sich wieder ändert, wird neu evaluiert und nicht blindlinks das aktuelle Icon gelöscht.

Ich habe die Logik zwar in ioBroker umgesetzt und nutze FHEM nur zur Ausführung, aber das kann man sicher auch in FHEM mit Dummys umsetzen.
Für jedes potentielle Icon ein dummy erstellen, diesen dann im jeweiligen Fall auf true oder false setzen. Einen Notify bauen, der reagiert wenn einer der Dummys geändert wird. Hier dann einen dieser Dummys nach dem anderen Abfragen ob er auf true steht und dann das zugehörige Icon mit der von Thyraz beschriebenen Methode setzen. Hier steht die Reihenfolge der Abfrage dann für die Priorität. Falls alle auf false stehen, wird das Icon einfach mit "icon=" gelöscht.
In den anderen Skripten die die verschiedenen Zustände auslösen oder beenden sollen, einfach den jeweiligen Icon-dummy auf true oder false setzen, den Rest erledigt der beschriebene Notify.

Praktisches Beispiel: Die Haustür geht auf und ein "Warnsymbol" wird auf der Lametric angezeigt. Kurz danach wird die Waschmaschiene fertig, das Symbol bleibt aber dank der Priorisierung auf "Warnsymbol". Sobald die Haustür geschlossen wird, erscheint das "Waschmaschienen" Symbol auf der Lametric.

Umso mehr Icons man sich in verschiedenen Situationen anzeigen lassen möchte, umso mehr macht sowas Sinn. Hoffe die Erklärung war halbwegs verständlich. Ich bin jedenfalls mega zufrieden damit. :)
« Letzte Änderung: 13 Mai 2019, 13:56:28 von siggi85 »

Offline Thyraz

  • Hero Member
  • *****
  • Beiträge: 1077
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #48 am: 15 Mai 2019, 16:11:41 »
Falls jemand noch eine kaufen will, gerade kam ein 20% (also wohl 40€) Gutscheincode vom Lametric Newsletter rein.
Wenn ich das recht sehe, wäre der Preis dann 159€.
Gilt 2 Wochen, keine Ahnung ob mehrfach verwendbar.

19563EFC
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Lacrosse, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, ...
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline stoxx

  • Full Member
  • ***
  • Beiträge: 217
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #49 am: 19 April 2020, 22:27:38 »
Hi, erstmal vielen Dank für das Modul. Funktioniert bisher bestens bis auf eine Sache: Wenn ich versuche, im Bildschirmschoner- Modus eine App aufzurufen, passiert nichts - auch wenn ich priority=critical mitgebe.
z.B.
Zitat
set lametric app FHEM push token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx== Hallo priority=critical
Ich habe alles wie hier gemacht, nutze aber nicht die Utils sondern das Modul:
https://www.youtube.com/watch?v=jgqJqv58HGI
Vielleicht hat ja jemand  ;) eine Idee,
grüße
stoxx
FHEM 5.8 auf Raspberry mit CUL, FS20, FHT, HMS, BLE, Z-Wave ..

Offline siggi85

  • Full Member
  • ***
  • Beiträge: 348
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #50 am: 21 April 2020, 16:43:00 »
Hi, erstmal vielen Dank für das Modul. Funktioniert bisher bestens bis auf eine Sache: Wenn ich versuche, im Bildschirmschoner- Modus eine App aufzurufen, passiert nichts - auch wenn ich priority=critical mitgebe.
z.B.Ich habe alles wie hier gemacht, nutze aber nicht die Utils sondern das Modul:
https://www.youtube.com/watch?v=jgqJqv58HGI
Vielleicht hat ja jemand  ;) eine Idee,
grüße
stoxx

Nach deiner Schilderung vermute ich, dass es nicht geht im Screensaver Modus eine App aufzurufen. (selber nicht getestet)
Aber vielleicht könntest du den Screensaver deaktivieren, bevor du die App aufruftst? Vorher solltest du dir den aktuellen Zustand des Screensavers über das entsprechende Reading speichern und nach einer von dir definierten Zeitspanne den letzten Screensaver Modus wiederherstellen.

Offline tatu123

  • New Member
  • *
  • Beiträge: 43
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #51 am: 15 Mai 2020, 16:29:55 »
Hallo zusammen,

ich wollte gerade meine Lametric wie hier im Forum beschrieben und auch in der Comref das Icon der clock zur Signalisierung benutzen.
Hierzu habe ich das Beispiel aus der comref genommen

set lametric app clock clockface icon='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAOklEQVQYlWNUVFBgwAeYcEncv//gP04FMEmsCmCSiooKjHAFMEF0SRQTsEnCFcAE0SUZGBgYGAl5EwA+6RhuHb9bggAAAABJRU5ErkJggg=='

Leider tut sich gar nichts. hat sich da was geändert?

Im Log bekomme ich mit Verbos 5 folgende Ausgabe:

2020.05.15 17:05:58 5: LaMetric2 lametric: called function LaMetric2_SendCommand()
2020.05.15 17:05:58 5: LaMetric2 lametric: GET https://192.168.178.84:4343/api/v2/device/apps? (DATA:  (noshutdown=1)
2020.05.15 17:05:58 5: LaMetric2 lametric: called function LaMetric2_SendCommand()
2020.05.15 17:05:58 5: LaMetric2 lametric: GET https://192.168.178.84:4343/api/v2/device/display? (DATA:  (noshutdown=1)
2020.05.15 17:05:58 5: LaMetric2 lametric: called function LaMetric2_ReceiveCommand() for service 'device/apps':

ERROR:
HTTP RESPONSE HEADER:
HTTP/1.1 200 OK
CONTENT-TYPE: application/json;charset=UTF8
Access-Control-Allow-Origin: *
Connection: close
Transfer-Encoding: chunked
Date: Fri, 15 May 2020 15:05:56 GMT
Server: lighttpd/1.4.35

HTTP RESPONSE BODY:
{ "com.lametric.clock" : { "actions" : { "clock.alarm" : { "enabled" : { "data_type" : "bool", "name" : "enabled", "required" : false }, "time" : { "data_type" : "string", "format" : "[0-9]{2}:[0-9]{2}(?::[0-9]{2})?", "name" : "time", "required" : false }, "wake_with_radio" : { "data_type" : "bool", "name" : "wake_with_radio", "required" : false } }, "clock.clockface" : { "icon" : { "data_type" : "string", "name" : "icon", "required" : false }, "type" : { "data_type" : "string", "format" : "weather|page_a_day|custom|none", "name" : "type", "required" : false } } }, "package" : "com.lametric.clock", "title" : "Clock", "triggers" : { "alarm" : { "snooze" : { "data_type" : "bool", "name" : "snooze" } } }, "vendor" : "LaMetric", "version" : "2.2.13", "version_code" : "50", "widgets" : { "08b8eac21074f8f7e5a29f2855ba8060" : { "index" : 0, "package" : "com.lametric.clock", "settings" : { "_title" : "Uhr" } } } }, "com.lametric.countdown" : { "actions" : { "countdown.configure" : { "duration" : { "data_type" : "int", "name" : "duration", "required" : false }, "start_now" : { "data_type" : "bool", "name" : "start_now", "required" : false } }, "countdown.pause" : {  }, "countdown.reset" : {  }, "countdown.start" : {  } }, "package" : "com.lametric.countdown", "title" : "\u0422\u0430\u0439\u043c\u0435\u0440", "triggers" : { "finished" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "paused" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "reset" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "resumed" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "started" : { "duration" : { "data_type" : "int", "name" : "duration" } } }, "vendor" : "LaMetric", "version" : "1.0.9", "version_code" : "15", "widgets" : { "f03ea1ae1ae5f85b390b460f55ba8061" : { "index" : 4, "package" : "com.lametric.countdown" } } }, "com.lametric.radio" : { "actions" : { "radio.next" : {  }, "radio.play" : {  }, "radio.prev" : {  }, "radio.state" : {  }, "radio.stop" : {  } }, "package" : "com.lametric.radio", "title" : "Radio", "triggers" : {  }, "vendor" : "LaMetric", "version" : "1.0.20", "version_code" : "32", "widgets" : { "589ed1b3fcdaa5180bf4848e55ba8061" : { "index" : 2, "package" : "com.lametric.radio" } } }, "com.lametric.stopwatch" : { "actions" : { "stopwatch.pause" : {  }, "stopwatch.reset" : {  }, "stopwatch.start" : {  } }, "package" : "com.lametric.stopwatch", "title" : "Stopwatch", "triggers" : {  }, "vendor" : "LaMetric", "version" : "1.0.6", "version_code" : "12", "widgets" : { "b1166a6059640bf76b9dfe0455ba8062" : { "index" : -1, "package" : "com.lametric.stopwatch" } } }, "com.lametric.weather" : { "actions" : { "weather.forecast" : {  }, "weather.get.cc" : {  } }, "package" : "com.lametric.weather", "title" : "Weather", "triggers" : {  }, "vendor" : "LaMetric", "version" : "1.0.12", "version_code" : "20", "widgets" : { "380375c4b12c16e3adafb48355ba8061" : { "index" : 1, "package" : "com.lametric.weather", "settings" : { "_title" : "Wetter" } } } } }
2020.05.15 17:05:59 5: LaMetric2 lametric: called function LaMetric2_ReceiveCommand() for service 'device/display':

ERROR:
HTTP RESPONSE HEADER:
HTTP/1.1 200 OK
CONTENT-TYPE: application/json;charset=UTF8
Access-Control-Allow-Origin: *
Connection: close
Transfer-Encoding: chunked
Date: Fri, 15 May 2020 15:05:56 GMT
Server: lighttpd/1.4.35

HTTP RESPONSE BODY:
{ "brightness" : 11, "brightness_limit" : { "max" : 100, "min" : 2 }, "brightness_mode" : "auto", "brightness_range" : { "max" : 100, "min" : 0 }, "height" : 8, "screensaver" : { "enabled" : false, "modes" : { "time_based" : { "enabled" : false, "end_time" : "03:45:00", "local_end_time" : "05:45:00", "local_start_time" : "22:00:00", "start_time" : "20:00:00" }, "when_dark" : { "enabled" : false } }, "widget" : "08b8eac21074f8f7e5a29f2855ba8060" }, "type" : "mixed", "width" : 37 }
2020.05.15 17:06:47 5: LaMetric2 lametric: called function LaMetric2_SetApp() app / clockface
2020.05.15 17:06:58 5: LaMetric2 lametric: called function LaMetric2_CheckState()
2020.05.15 17:06:58 5: LaMetric2 lametric: called function LaMetric2_SendCommand()
2020.05.15 17:06:58 5: LaMetric2 lametric: GET https://192.168.178.84:4343/api/v2/device?fields=name,serial_number,os_version,mode,model,audio,bluetooth,wifi (DATA:  (noshutdown=1)
2020.05.15 17:06:58 5: LaMetric2 lametric: called function LaMetric2_ReceiveCommand() for service 'device':

ERROR:
HTTP RESPONSE HEADER:
HTTP/1.1 200 OK
CONTENT-TYPE: application/json;charset=UTF8
Access-Control-Allow-Origin: *
Connection: close
Transfer-Encoding: chunked
Date: Fri, 15 May 2020 15:06:56 GMT
Server: lighttpd/1.4.35

HTTP RESPONSE BODY:
{ "audio" : { "volume" : 100, "volume_limit" : { "max" : 100, "min" : 0 }, "volume_range" : { "max" : 100, "min" : 0 } }, "bluetooth" : { "active" : false, "address" : "18:BB:26:43:FC:50", "available" : true, "discoverable" : true, "low_energy" : { "active" : true, "advertising" : true, "connectable" : true }, "name" : "LM5783", "pairable" : true }, "mode" : "schedule", "model" : "LM 37X8", "name" : "My LaMetric", "os_version" : "2.0.26", "serial_number" : "SA180903578300W00BS9", "wifi" : { "active" : true, "address" : "18:BB:26:43:D6:0A", "available" : true, "encryption" : "WPA", "essid" : "hk2", "ip" : "192.168.178.84", "mode" : "dhcp", "netmask" : "255.255.255.0", "strength" : 58 } }
2020.05.15 17:06:58 5: LaMetric2 lametric: called function LaMetric2_SendCommand()
2020.05.15 17:06:58 5: LaMetric2 lametric: GET https://192.168.178.84:4343/api/v2/device/apps? (DATA:  (noshutdown=1)
2020.05.15 17:06:58 5: LaMetric2 lametric: called function LaMetric2_SendCommand()
2020.05.15 17:06:58 5: LaMetric2 lametric: GET https://192.168.178.84:4343/api/v2/device/display? (DATA:  (noshutdown=1)
2020.05.15 17:06:58 5: LaMetric2 lametric: called function LaMetric2_ReceiveCommand() for service 'device/apps':

ERROR:
HTTP RESPONSE HEADER:
HTTP/1.1 200 OK
CONTENT-TYPE: application/json;charset=UTF8
Access-Control-Allow-Origin: *
Connection: close
Transfer-Encoding: chunked
Date: Fri, 15 May 2020 15:06:56 GMT
Server: lighttpd/1.4.35

HTTP RESPONSE BODY:
{ "com.lametric.clock" : { "actions" : { "clock.alarm" : { "enabled" : { "data_type" : "bool", "name" : "enabled", "required" : false }, "time" : { "data_type" : "string", "format" : "[0-9]{2}:[0-9]{2}(?::[0-9]{2})?", "name" : "time", "required" : false }, "wake_with_radio" : { "data_type" : "bool", "name" : "wake_with_radio", "required" : false } }, "clock.clockface" : { "icon" : { "data_type" : "string", "name" : "icon", "required" : false }, "type" : { "data_type" : "string", "format" : "weather|page_a_day|custom|none", "name" : "type", "required" : false } } }, "package" : "com.lametric.clock", "title" : "Clock", "triggers" : { "alarm" : { "snooze" : { "data_type" : "bool", "name" : "snooze" } } }, "vendor" : "LaMetric", "version" : "2.2.13", "version_code" : "50", "widgets" : { "08b8eac21074f8f7e5a29f2855ba8060" : { "index" : 0, "package" : "com.lametric.clock", "settings" : { "_title" : "Uhr" } } } }, "com.lametric.countdown" : { "actions" : { "countdown.configure" : { "duration" : { "data_type" : "int", "name" : "duration", "required" : false }, "start_now" : { "data_type" : "bool", "name" : "start_now", "required" : false } }, "countdown.pause" : {  }, "countdown.reset" : {  }, "countdown.start" : {  } }, "package" : "com.lametric.countdown", "title" : "\u0422\u0430\u0439\u043c\u0435\u0440", "triggers" : { "finished" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "paused" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "reset" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "resumed" : { "duration" : { "data_type" : "int", "name" : "duration" } }, "started" : { "duration" : { "data_type" : "int", "name" : "duration" } } }, "vendor" : "LaMetric", "version" : "1.0.9", "version_code" : "15", "widgets" : { "f03ea1ae1ae5f85b390b460f55ba8061" : { "index" : 4, "package" : "com.lametric.countdown" } } }, "com.lametric.radio" : { "actions" : { "radio.next" : {  }, "radio.play" : {  }, "radio.prev" : {  }, "radio.state" : {  }, "radio.stop" : {  } }, "package" : "com.lametric.radio", "title" : "Radio", "triggers" : {  }, "vendor" : "LaMetric", "version" : "1.0.20", "version_code" : "32", "widgets" : { "589ed1b3fcdaa5180bf4848e55ba8061" : { "index" : 2, "package" : "com.lametric.radio" } } }, "com.lametric.stopwatch" : { "actions" : { "stopwatch.pause" : {  }, "stopwatch.reset" : {  }, "stopwatch.start" : {  } }, "package" : "com.lametric.stopwatch", "title" : "Stopwatch", "triggers" : {  }, "vendor" : "LaMetric", "version" : "1.0.6", "version_code" : "12", "widgets" : { "b1166a6059640bf76b9dfe0455ba8062" : { "index" : -1, "package" : "com.lametric.stopwatch" } } }, "com.lametric.weather" : { "actions" : { "weather.forecast" : {  }, "weather.get.cc" : {  } }, "package" : "com.lametric.weather", "title" : "Weather", "triggers" : {  }, "vendor" : "LaMetric", "version" : "1.0.12", "version_code" : "20", "widgets" : { "380375c4b12c16e3adafb48355ba8061" : { "index" : 1, "package" : "com.lametric.weather", "settings" : { "_title" : "Wetter" } } } } }
2020.05.15 17:06:59 5: LaMetric2 lametric: called function LaMetric2_ReceiveCommand() for service 'device/display':

ERROR:
HTTP RESPONSE HEADER:
HTTP/1.1 200 OK
CONTENT-TYPE: application/json;charset=UTF8
Access-Control-Allow-Origin: *
Connection: close
Transfer-Encoding: chunked
Date: Fri, 15 May 2020 15:06:56 GMT
Server: lighttpd/1.4.35

HTTP RESPONSE BODY:
{ "brightness" : 11, "brightness_limit" : { "max" : 100, "min" : 2 }, "brightness_mode" : "auto", "brightness_range" : { "max" : 100, "min" : 0 }, "height" : 8, "screensaver" : { "enabled" : false, "modes" : { "time_based" : { "enabled" : false, "end_time" : "03:45:00", "local_end_time" : "05:45:00", "local_start_time" : "22:00:00", "start_time" : "20:00:00" }, "when_dark" : { "enabled" : false } }, "widget" : "08b8eac21074f8f7e5a29f2855ba8060" }, "type" : "mixed", "width" : 37 }
2020.05.15 17:07:09 4: HMCCU: [d_ccu : 5167] Build URL = http://192.168.178.36:2001
2020.05.15 17:07:17 5: LaMetric2 lametric: called function LaMetric2_SetApp() app / clock
2020.05.15 17:07:17 5: LaMetric2 lametric: called function LaMetric2_SendCommand()
2020.05.15 17:07:17 5: LaMetric2 lametric: POST https://192.168.178.84:4343/api/v2/device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions (DATA: {"id":"clock.clockface","params":{"icon":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAOklEQVQYlWNUVFBgwAeYcEncv//gP04FMEmsCmCSiooKjHAFMEF0SRQTsEnCFcAE0SUZGBgYGAl5EwA+6RhuHb9bggAAAABJRU5ErkJggg=="}} (noshutdown=1)
2020.05.15 17:07:17 5: LaMetric2 lametric: called function LaMetric2_ReceiveCommand() for service 'device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions':

ERROR:
HTTP RESPONSE HEADER:
HTTP/1.1 201 Created
CONTENT-TYPE: application/json;charset=UTF8
Access-Control-Allow-Origin: *
Connection: close
Transfer-Encoding: chunked
Date: Fri, 15 May 2020 15:07:15 GMT
Server: lighttpd/1.4.35

HTTP RESPONSE BODY:
{ "success" : { "data" : {  }, "path" : "/api/v2/device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions" } }

Der Vollständigkeit halber noch ein List vom Device

Internals:
   CFGFN     
   DEF        192.168.178.84 <geschwärzt>
   FUUID      5ebc3da6-f33f-638b-18ed-2ba194155bb7959f
   FVERSION   70_LaMetric2.pm:v2.3.3-s19708/2019-06-25
   HOST       192.168.178.84
   INTERVAL   60
   MODEL      LM 37X8
   NAME       lametric
   NR         112003
   PORT       4343
   STATE      on
   TYPE       LaMetric2
   VERSION    v2.1.0
   Helper:
     DBLOG:
       bluetooth:
         logdb:
           TIME       1589394856.61014
           VALUE      off
       bluetoothAddress:
         logdb:
           TIME       1589394856.61014
           VALUE      18:BB:26:43:FC:50
       bluetoothAvailable:
         logdb:
           TIME       1589394856.61014
           VALUE      1
       bluetoothDiscoverable:
         logdb:
           TIME       1589394856.61014
           VALUE      1
       bluetoothName:
         logdb:
           TIME       1589394856.61014
           VALUE      LM5783
       bluetoothPairable:
         logdb:
           TIME       1589394856.61014
           VALUE      1
       brightness:
         logdb:
           TIME       1589480020.64366
           VALUE      11
       brightnessMode:
         logdb:
           TIME       1589394856.95459
           VALUE      auto
       deviceMode:
         logdb:
           TIME       1589397076.96989
           VALUE      schedule
       deviceName:
         logdb:
           TIME       1589394856.61014
           VALUE      My LaMetric
       deviceOsVersion:
         logdb:
           TIME       1589394856.61014
           VALUE      2.0.26
       deviceSerialNumber:
         logdb:
           TIME       1589394856.61014
           VALUE      <geschwärzt>
       lastCommand:
         logdb:
           TIME       1589552080.71702
           VALUE      device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions (POST)
       lastCommandResult:
         logdb:
           TIME       1589552080.71702
           VALUE      { "success" : { "data" : {  }, "path" : "/api/v2/device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions" } }
       lastMessage:
         logdb:
           TIME       1589475156.04373
           VALUE      test
       lastNotificationIconType:
         logdb:
           TIME       1589475156.04373
           VALUE      info
       lastNotificationLifetime:
         logdb:
           TIME       1589475156.04373
           VALUE      120
       lastNotificationPriority:
         logdb:
           TIME       1589475156.04373
           VALUE      info
       lastNotificationSound:
         logdb:
           TIME       1589475156.04373
           VALUE      off
       lastNotificationTitle:
         logdb:
           TIME       1589475156.04373
           VALUE     
       lastNotificationType:
         logdb:
           TIME       1589475156.04373
           VALUE      msg
       mute:
         logdb:
           TIME       1589394856.61014
           VALUE      off
       power:
         logdb:
           TIME       1589471487.23546
           VALUE      on
       presence:
         logdb:
           TIME       1589394856.61014
           VALUE      present
       screensaver:
         logdb:
           TIME       1589480020.64366
           VALUE      off
       screensaverEndTime:
         logdb:
           TIME       1589471487.23546
           VALUE      04:45:00
       screensaverStartTime:
         logdb:
           TIME       1589471487.23546
           VALUE      21:00:00
       state:
         logdb:
           TIME       1589552080.23445
           VALUE      app clock clockface icon='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAOklEQVQYlWNUVFBgwAeYcEncv//gP04FMEmsCmCSiooKjHAFMEF0SRQTsEnCFcAE0SUZGBgYGAl5EwA+6RhuHb9bggAAAABJRU5ErkJggg=='
       stateAV:
         logdb:
           TIME       1589471487.23546
           VALUE      on
       volume:
         logdb:
           TIME       1589394856.61014
           VALUE      100
       wifiActive:
         logdb:
           TIME       1589394856.61014
           VALUE      1
       wifiAddress:
         logdb:
           TIME       1589394856.61014
           VALUE      <geschwärzt>
       wifiAvailable:
         logdb:
           TIME       1589394856.61014
           VALUE      1
       wifiEncryption:
         logdb:
           TIME       1589394856.61014
           VALUE      WPA
       wifiEssid:
         logdb:
           TIME       1589394856.61014
           VALUE      <geschwärzt>
       wifiIp:
         logdb:
           TIME       1589394856.61014
           VALUE      192.168.178.84
       wifiMode:
         logdb:
           TIME       1589394856.61014
           VALUE      dhcp
       wifiNetmask:
         logdb:
           TIME       1589394856.61014
           VALUE      255.255.255.0
       wifiStrength:
         logdb:
           TIME       1589552518.11889
           VALUE      52
   READINGS:
     2020-05-13 20:34:16   bluetooth       off
     2020-05-13 20:34:16   bluetoothAddress 18:BB:26:43:FC:50
     2020-05-13 20:34:16   bluetoothAvailable 1
     2020-05-13 20:34:16   bluetoothDiscoverable 1
     2020-05-13 20:34:16   bluetoothName   LM5783
     2020-05-13 20:34:16   bluetoothPairable 1
     2020-05-14 20:13:40   brightness      11
     2020-05-13 20:34:16   brightnessMode  auto
     2020-05-13 21:11:16   deviceMode      schedule
     2020-05-13 20:34:16   deviceName      My LaMetric
     2020-05-13 20:34:16   deviceOsVersion 2.0.26
     2020-05-13 20:34:16   deviceSerialNumber <geschwärzt>
     2020-05-15 16:14:40   lastCommand     device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions (POST)
     2020-05-15 16:14:40   lastCommandResult { "success" : { "data" : {  }, "path" : "/api/v2/device/apps/com.lametric.clock/widgets/08b8eac21074f8f7e5a29f2855ba8060/actions" } }
     2020-05-14 18:52:36   lastMessage     test
     2020-05-14 18:52:36   lastNotificationIconType info
     2020-05-14 18:52:36   lastNotificationLifetime 120
     2020-05-14 18:52:36   lastNotificationPriority info
     2020-05-14 18:52:36   lastNotificationSound off
     2020-05-14 18:52:36   lastNotificationTitle
     2020-05-14 18:52:36   lastNotificationType msg
     2020-05-13 20:34:16   mute            off
     2020-05-14 17:51:27   power           on
     2020-05-13 20:34:16   presence        present
     2020-05-14 20:13:40   screensaver     off
     2020-05-14 17:51:27   screensaverEndTime 04:45:00
     2020-05-14 17:51:27   screensaverStartTime 21:00:00
     2020-05-14 17:51:27   state           on
     2020-05-14 17:51:27   stateAV         on
     2020-05-13 20:34:16   volume          100
     2020-05-13 20:34:16   wifiActive      1
     2020-05-13 20:34:16   wifiAddress     <geschwärzt>
     2020-05-13 20:34:16   wifiAvailable   1
     2020-05-13 20:34:16   wifiEncryption  WPA
     2020-05-13 20:34:16   wifiEssid       <geschwärzt>
     2020-05-13 20:34:16   wifiIp          192.168.178.84
     2020-05-13 20:34:16   wifiMode        dhcp
     2020-05-13 20:34:16   wifiNetmask     255.255.255.0
     2020-05-15 16:21:58   wifiStrength    52
   helper:
     apps:
       com.lametric.clock:
         package    com.lametric.clock
         title      Clock
         vendor     LaMetric
         version    2.2.13
         version_code 50
         actions:
           clock.alarm:
             enabled:
               data_type  bool
               name       enabled
             time:
               data_type  string
               format     [0-9]{2}:[0-9]{2}(?::[0-9]{2})?
               name       time
             wake_with_radio:
               data_type  bool
               name       wake_with_radio
           clock.clockface:
             icon:
               data_type  string
               name       icon
             type:
               data_type  string
               format     weather|page_a_day|custom|none
               name       type
         triggers:
           alarm:
             snooze:
               data_type  bool
               name       snooze
         widgets:
           08b8eac21074f8f7e5a29f2855ba8060:
             index      0
             package    com.lametric.clock
             settings:
               _title     Uhr
       com.lametric.countdown:
         package    com.lametric.countdown
         title      Таймер
         vendor     LaMetric
         version    1.0.9
         version_code 15
         actions:
           countdown.configure:
             duration:
               data_type  int
               name       duration
             start_now:
               data_type  bool
               name       start_now
           countdown.pause:
           countdown.reset:
           countdown.start:
         triggers:
           finished:
             duration:
               data_type  int
               name       duration
           paused:
             duration:
               data_type  int
               name       duration
           reset:
             duration:
               data_type  int
               name       duration
           resumed:
             duration:
               data_type  int
               name       duration
           started:
             duration:
               data_type  int
               name       duration
         widgets:
           f03ea1ae1ae5f85b390b460f55ba8061:
             index      4
             package    com.lametric.countdown
             settings:
       com.lametric.radio:
         package    com.lametric.radio
         title      Radio
         vendor     LaMetric
         version    1.0.20
         version_code 32
         actions:
           radio.next:
           radio.play:
           radio.prev:
           radio.state:
           radio.stop:
         triggers:
         widgets:
           589ed1b3fcdaa5180bf4848e55ba8061:
             index      2
             package    com.lametric.radio
             settings:
       com.lametric.stopwatch:
         package    com.lametric.stopwatch
         title      Stopwatch
         vendor     LaMetric
         version    1.0.6
         version_code 12
         actions:
           stopwatch.pause:
           stopwatch.reset:
           stopwatch.start:
         triggers:
         widgets:
           b1166a6059640bf76b9dfe0455ba8062:
             index      -1
             package    com.lametric.stopwatch
             settings:
       com.lametric.weather:
         package    com.lametric.weather
         title      Weather
         vendor     LaMetric
         version    1.0.12
         version_code 20
         actions:
           weather.forecast:
           weather.get.cc:
         triggers:
         widgets:
           380375c4b12c16e3adafb48355ba8061:
             index      1
             package    com.lametric.weather
             settings:
               _title     Wetter
     inputs:
       radio:
         app_id     radio
         name       Radio
         package_id com.lametric.radio
         vendor_id  com.lametric
         widget_id  589ed1b3fcdaa5180bf4848e55ba8061
       stopwatch:
         app_id     stopwatch
         name       Stopwatch
         package_id com.lametric.stopwatch
         vendor_id  com.lametric
         widget_id  b1166a6059640bf76b9dfe0455ba8062
       uhr:
         app_id     clock
         name       Uhr
         package_id com.lametric.clock
         vendor_id  com.lametric
         widget_id  08b8eac21074f8f7e5a29f2855ba8060
       wetter:
         app_id     weather
         name       Wetter
         package_id com.lametric.weather
         vendor_id  com.lametric
         widget_id  380375c4b12c16e3adafb48355ba8061
       таймер:
         app_id     countdown
         name       Таймер
         package_id com.lametric.countdown
         vendor_id  com.lametric
         widget_id  f03ea1ae1ae5f85b390b460f55ba8061
Attributes:
   cmdIcon    play:rc_PLAY channelDown:rc_PREVIOUS channelUp:rc_NEXT stop:rc_STOP muteT:rc_MUTE inputUp:rc_RIGHT inputDown:rc_LEFT
   defaultOnStatus illumination
   defaultScreensaverEndTime 06:00
   defaultScreensaverStartTime 00:00
   defaultVolume 50
   devStateIcon on:rc_GREEN@green:off off:rc_STOP:on absent:rc_RED playing:rc_PLAY@green:pause paused:rc_PAUSE@green:play muted:rc_MUTE@green:muteT fast-rewind:rc_REW@green:play fast-forward:rc_FF@green:play interrupted:rc_PAUSE@yellow:play
   https      1
   icon       time_statistic
   model      LM 37X8
   notificationGoalEnd 100
   notificationGoalIcon a11460
   notificationGoalIconType info
   notificationGoalLifetime 120
   notificationGoalPriority info
   notificationGoalStart 0
   notificationGoalUnit %
   notificationIcon i8919
   notificationIconType info
   notificationLifetime 120
   notificationMetricIcon i9559
   notificationMetricIconType info
   notificationMetricLang en
   notificationMetricLifetime 120
   notificationMetricPriority info
   notificationPriority info
   room       LaMetric2
   stateFormat stateAV
   verbose    5
   webCmd     volume:muteT:channelDown:play:stop:channelUp:inputDown:input:inputUp

VG
tatu123
« Letzte Änderung: 15 Mai 2020, 17:09:35 von tatu123 »

Offline siggi85

  • Full Member
  • ***
  • Beiträge: 348
Antw:[Neues Modul] 70_LaMetric2.pm für LaMetric Smart Clock
« Antwort #52 am: 25 Mai 2020, 18:20:41 »
Probier mal:

set lametric app clock clockface icon='data:image/gif;;base64,R0lGODlhCAAIAKIAACQiJIyKjMzOzPQCFLS2tPTGzPxabAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQJCgAAACwAAAAACAAIAAADEwi6PPbNFBNlpSoEwUUOREgwZAIAIfkECQoAAAAsAAAAAAgACACCJCIkjIqMzM7M/FpstLa09MbMAAAAAAAAAxMIujw+rbg2JJ0qBMFFDkRIMGQCACH5BAkKAAAALAAAAAAIAAgAAAMUCLpsPqy8JuFyxoIQhBcKR4wEYyYAIfkECQoAAAAsAAAAAAgACAAAAxQIumw2o724ypRwhSC6UBshEkyZAAAh+QQJCgAAACwAAAAACAAIAIIkIiSMioz0AhS0trT8WmzMzswAAAAAAAADFAi6TCKkvbgclFeFUHrRwSAOTJkAACH5BAkKAAAALAAAAAAIAAgAAAMTCLo8Y6a9ImGNKgTBRQ5ESDBkAgA7'
EDIT: Mir ist aufgefallen, dass es nur funktioniert, wenn 2 Semikolon vor "base64" stehen. (das zweite Semikolon musste ich bisher immer manuell dazuschreiben wenn ich die base64 Werte bestehender Icons ermittelt habe)
« Letzte Änderung: 25 Mai 2020, 18:23:43 von siggi85 »

 

decade-submarginal