Projekt: Apps für LaMetric-Time mit FHEM ansteuern

Mit ** gekennzeichne Links auf dieser Seite sind Affiliatelinks.

Als ich mir die LaMetric Time zugelegt habe, gab es noch gar keine Integration für FHEM oder andere Smart Home Systeme. Also musste ich das Modul selbst entwickeln. Seitdem nutze ich die LaMetric für Notifications aller Art. Nun werden Notifications aber nur kurz angezeigt und verschwinden dann sofort wieder. Zusatzinfos wie z.B. die aktuelle Raumtemperatur oder andere Daten kann man so nicht darstellen. Klar, man könnte alle paar Sekunden eine Notification ohne Ton versenden - aber wie nervig wäre das? Also zeige ich Dir in diesem Video, wie Du eine eigene private App für die LaMetric erstellst und diese mit Daten fütterst.

Was Du brauchst?

  • Eine FHEM-Installation
  • Eine LaMetric-Time
  • Einen Developer-Account bei LaMetric

Video

FHEM-Kurs

Befehle

##############################################
# $Id: myUtilsTemplate.pm 7570 2015-01-14 18:31:44Z rudolfkoenig $
#
# Save this file as 99_myUtils.pm, and create your own functions in the new
# file. They are then available in every Perl expression.

package main;

use strict;
use warnings;
use POSIX;
use HttpUtils;

sub myLaMetricUtils_Initialize($$) {
  my ($hash) = @_;
}

# Enter you functions below _this_ line.

sub sendToLametricApp($$) {
    my ($icon, $text) = @_;

    my $data = '{
        "frames": [
            {
                "text": "' . $text . '",
                "icon": "' . $icon . '",
                "index": 0
            }
        ]
    }';

    HttpUtils_NonblockingGet(
        {
            method     => 'POST',
            url        => 'https://192.168.44.59:4343/api/v1/dev/widget/update/com.lametric.50fded02d728611fbcbeb7d29eea6244/1',
            timeout    => 3,
            data       => $data,
            header     => "X-Access-Token: Zj...WI0Nw==",
            callback   => sub($$$) {
                #Log(1, "ERR: $_[1] DATA: " . length($_[2]));
            }
        }
    );
}

1;
{sendToLametricApp('i7997', 'klappt')}

{sendToLametricApp('a5836', ReadingsVal('WZ_HeizungZentrale_Climate', 'measured-temp', '?') . '°C')}
define n_LaMetricDisplayFrame notify WZ_HeizungZentrale_Climate:measured-temp:.* {sendToLametricApp('a5836', ReadingsVal('WZ_HeizungZentrale_Climate', 'measured-temp', '?') . '°C')}
attr n_LaMetricDisplayFrame alias LaMetric: Aktuelle Temperatur im Wohnzimmer darstellen
attr n_LaMetricDisplayFrame group DeviceLogik
attr n_LaMetricDisplayFrame room Logik

Alternativ geht natürlich auch

define n_LaMetricDisplayFrame notify WZ_HeizungZentrale_Climate:measured-temp:.* {sendToLametricApp('a5836', $EVTPART1 . '°C')}
attr n_LaMetricDisplayFrame alias LaMetric: Aktuelle Temperatur im Wohnzimmer darstellen
attr n_LaMetricDisplayFrame group DeviceLogik
attr n_LaMetricDisplayFrame room Logik

Newsletter

Trage Dich jetzt in den Newsletter ein und genieße dadurch viele Vorteile:

  • 5€-Gutschein als Dankeschön
  • Zugang zu exklusiven Inhalten
  • Rabattaktionen für Kurse
  • Angebote für Produkte

* Durch Angabe meiner E-Mail-Adresse erkläre ich mich damit einverstanden, dass mir regelmäßig Informationen und Produktempfehlungen aus dem Fachgebiet Smart Home zugesendet werden. Mit dem Eintrag akzeptieren Sie unsere Datenschutzbestimmungen. Meine Einwilligung kann ich jederzeit widerrufen.

Matthias Kleine

Matthias Kleine

Großer Fan und Anhänger von OpenSource-Projekten und erweiterbaren Haus-Automatisierungskomponenten. Je offener und flexibler das System, desto besser. Ich lege mich ungern auf einzelne Protokolle oder Standards fest, sondern probiere aus allen Welten das Beste zu verheiraten. Unterwegs als Softwareentwickler, Trainer und Blogger im Bereich Smart Home.

Auf YouTube und hier im Blog gibt es bereits unzählige kostenlose Videos, Informationen und Tutorials. Wenn Dir das noch nicht reicht, ist ein Training genau das richtige für Dich! Die folgenden Trainings haben den Vorteil, dass immer von Anfang an gestartet wird und Du ohne Vorwissen teilnehmen kannst.