Hauptmenü

Neueste Beiträge

#1
Perl für FHEM-User / Aw: Basic Auth klappt nicht mi...
Letzter Beitrag von passibe - 20 Januar 2026, 20:23:02
Ich habe jetzt keine Lösung parat, aber ich glaube, dass das hier einfach kein Basic Auth ist.

Basic Auth funktioniert allein über den Authorization-Header, also mit Authorization: Basic base64encode(user:pass) (Pseudocode). Wenn das nicht funktioniert bzw. es irgendwelche Cookies oder auf andere Weise übermittelte Token braucht, handelt es sich nicht um Basic Auth.
#2
TabletUI / Aw: FTUI3 Button-Icon undefine...
Letzter Beitrag von Salvi5 - 20 Januar 2026, 20:19:37
Für jemanden, der es mal braucht:
Der Browser auf dem Raspberry blockiert fetch() auf icons/*.svg,
weil die Seite mit Credentials in der URL geladen wird. Das habe ich jetzt geändert und es läuft.

Gruß Mike
#3
Codeschnipsel / Aw: 📬 NTFY.sh: Push Nachrichte...
Letzter Beitrag von passibe - 20 Januar 2026, 20:10:01
Nur zur Info, das hier
Zitat von: byterazor am 02 März 2024, 13:00:19Es gibt für NTFY_CLIENT jetzt eine update URL: https://rm.byterazor.de/upd-fhem-ntfy/controls_byterazor-fhem-ntfy.txt
scheint nicht mehr zu funktionieren. Die Seite ist offline (siehe hier).

Vielleicht müsste man darauf im Wiki hinweisen? Oder man kann das Modul irgendwo anders bereitstellen?



Ansonsten hier noch meine eher minimale und vermutlich verbesserungswürdige Implementierung, die aber für meinen Anwendungsfall ausreicht. Sie unterstützt keine Anhänge (weil iOS), aber das Senden von Kommandos über Buttons (ntfy nennt das "Actions").

Die ntfy-App am Handy sendet dazu über eine URL das jeweilige JSON-Objekt an eine Flask-Middleware, die dann wiederum den Befehl an FHEM sendet (und sich um so Dinge wie die Authentifizierung und den CSRF-Token kümmert; den Flask-Part kann ich, falls Interesse besteht, demnächst auch mal teilen).

Hier der Code für 99_myUtils.pm:
sub ntfy {
    my ($message, $priority, $tags, $title, $cmd1, $button1, $cmd2, $button2, $cmd3, $button3) = @_;
   
    # Set defaults
        if (!defined $priority) {$priority = 3}
        if (!defined $tags) {$tags = "house_with_garden"};
        if (!defined $title or $title eq "") {$title = "FHEM"}
        if ($tags !~ m/house_with_garden/) {
            $tags = $tags.",house_with_garden";
        }

    # Prepare headers
        my $param = {
            url => "https://ntfy.example.org/fhem",
            method => "POST",
            timeout => 10,
            callback => sub() {},
            header => "Content-Type: application/json\r\nAuthorization: Bearer REDACTED\r\np: $priority\r\nta: $tags\r\nt: $title",
            data => $message
        };

    # For actions:
        my $actions = "";
        my $url = "https://example.org/REDACTED";
        my $type = "http";
        my $jsonheader = "headers.Content-Type=application/json";

        # Build action header
        if (defined $cmd1) {
            $actions = "$type, $button1, $url, $jsonheader, body={\"cmd\":\"$cmd1\"}";
        }
        if (defined $cmd2) {
            $actions .= "; $type, $button2, $url, $jsonheader, body={\"cmd\":\"$cmd2\"}";
        }
        if (defined $cmd3) {
            $actions .= "; $type, $button3, $url, $jsonheader, body={\"cmd\":\"$cmd3\"}";
        }

        # Add header
        if ($actions ne "") {
            $param->{header} .= "\r\nActions: $actions";
        }

    # Make request
    HttpUtils_NonblockingGet($param);
}

sub ntfyBat {
    my ($msg, $tags) = @_;
    $tags = defined $tags && length $tags ? ",$tags" : "";
    ntfy($msg,4,"battery".$tags)
}

sub ntfyError {
    my ($msg, $tags) = @_;
    $tags = defined $tags && length $tags ? ",$tags" : "";
    ntfy($msg, 5, "x".$tags);
}

sub ntfyErrorSilent {
    my ($msg, $tags) = @_;
    $tags = defined $tags && length $tags ? ",$tags" : "";
    ntfy($msg,2,"x".$tags)
}

sub ntfyOk {
    my ($msg, $tags) = @_;
    $tags = defined $tags && length $tags ? ",$tags" : "";
    ntfy($msg,2,"white_check_mark".$tags)
}

Nutzung z.B.:
ntfy("Nicht Stören aktiviert.",4,"shushing_face,crescent_moon","","set sys_dnd off","Deaktivieren");Sieht dann aus wie im angehängten Screenshot.

Geht natürlich z.B. auch für eine eigentlich dumme Spülmaschine, die nur über eine Leistungsmesssteckdose smart gemacht wurde, damit man direkt vom Handy aus mit Klick auf die "Spülmaschine fertig"-Benachrichtigung den Status wieder auf "ausgeräumt" setzen kann.

Oder ohne Action dann z.B.:
ntfy("Spülmaschine läuft!",2,"plate_with_cutlery,arrows_counterclockwise");und z.B. für eine Batteriebenachrichtigung:
ntfyBat("Die Batterie von ".AttrVal($NAME,"alias","")." ist fast leer! (".$EVTPART1." %)");
#4
FHEM Code changes / Revision 30760: 00_ElsnerWS: a...
Letzter Beitrag von System - 20 Januar 2026, 20:01:15
Revision 30760: 00_ElsnerWS: autocreate modified

00_ElsnerWS: autocreate modified

Source: Revision 30760: 00_ElsnerWS: autocreate modified
#5
FHEM Code changes / Revision 30759: 98_ModbusElsne...
Letzter Beitrag von System - 20 Januar 2026, 20:01:15
Revision 30759: 98_ModbusElsnerWS: autocreate modified

98_ModbusElsnerWS: autocreate modified

Source: Revision 30759: 98_ModbusElsnerWS: autocreate modified
#6
Multimedia / Aw: Modul für Denon (Marantz) ...
Letzter Beitrag von Bartimaus - 20 Januar 2026, 19:58:55
Hi,

gerade mal das Update geladen. DAB-Infos werden leider nicht aktualisiert.
Was kann ich noch an Input liefern ?

LG

@Shadow3561
Deine DAB-Modifikationen funktionieren bei meinem Marantz tadellos....
#7
Sonstige Systeme / Aw: Neues Modul LG-ThinQ
Letzter Beitrag von Shadow3561 - 20 Januar 2026, 19:38:52
danke
#8
Heizungssteuerung/Raumklima / Aw: THZ Tecalor (LWZ Stiebel E...
Letzter Beitrag von willybauss - 20 Januar 2026, 19:29:26
Es gäbe eine Alternative - die allerdings mit Kosten verbunden ist:
Die SOL-Anlagen haben ja einen Anschluss für thermische Solarzellen. Da kann man was anschließen ... es müssen ja nicht unbedingt Solarzellen sein, sondern z.B. auch ein Durchlauferhitzer ... Wenn der immer nur aktiv ist, wenn Sonnenstrom-Überschuss herrscht, dürfte das Verhalten ziemlich genau dem entsprechen, was Solarzellen auch machen würden. Lediglich auf den Frostschutz im "Solar"-Wasserkreis kann man verzichten, weil ja alles in Haus abläuft. Lediglich Frostschutz in den Kupferleitungen der PF-Anlage wäre zu überlegen  ::)
#9
Solaranlagen / Aw: Modul für Ecoflow-Komponen...
Letzter Beitrag von MasterRay - 20 Januar 2026, 19:17:12
Zitat von: dergolem am 14 Januar 2026, 06:58:12... "xtamp" gefunden...

Gruß Denis 

"xtamp" habe ich auch in der Antwort
...&nonce=61356×tamp=17... und es macht keine Probleme.
#10
Sonstige Systeme / Aw: Neues Modul LG-ThinQ
Letzter Beitrag von ixsus300 - 20 Januar 2026, 19:16:41
nein nur get