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

Offline siggi85

  • Full Member
  • ***
  • Beiträge: 342
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: 211
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: 342
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 »

Online Thyraz

  • Sr. Member
  • ****
  • Beiträge: 978
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, Lacrosse, Hue, Harmony, Solo4k, LaMetric, Snips, ...
Gefällt mir Gefällt mir x 1 Liste anzeigen