Hallo,
Um mein Tablet per Notify zu wecken möchte ich gerne ein UDP-Telegramm zur Woli App "https://play.google.com/store/apps/details?id=at.asp1.woli&hl=de" auf meinem Tablet senden. Ich weiß leider überhaupt nicht wie sich der Befehl zusammensetzt.
Mit einem "Packet-Sender" (siehe Anhang) lässt sich das Display wunderbar aktivieren und deaktivieren. Was müsste ich da ins Notify schreiben?
Vielleicht kennt sich jemand aus und kann mir helfen.
hat niemand eine Idee?
ohne deine Woli App zu kennen , wenn ich ein UDP Paket auf Port 6666 in meinem Netz an einen Host schicken wollte würde ich in der 99_myUtils mir zuerst einen Funktion anlegen :
use IO::Socket;
sub UDP_Msg($$)
{
my ($dest,$cmd) = @_;
my $sock = IO::Socket::INET->new(
Proto => 'udp',
PeerPort => 6666,
PeerAddr => $dest
) or die "Could not create socket: $!\n";
$sock->send($cmd) or die "Send error: $!\n";
return "send $cmd";
}
und dann mit einem notify ala
define sende_woli_on notify mein_schalter:on {UDP_Msg("192.168.2.7" , "wolido:displayon");}
Vielen Dank schon mal für die Hilfe.
Ich habe 99_myUtils.pm erstellt und den Code hineinkopiert. (habe als letzte Zeile noch 1; eingefügt)
Dann habe ich {UDP_Msg("192.168.2.7" , "wolido:displayon");} in mein vorhandenes funktionierendes Notify eingefügt.
Leider tut sich nichts beim auslösen. Muss ich an dem Code noch etwas ändern?
Zitat von: eberlrudi am 25 Februar 2015, 14:05:34
Ich habe 99_myUtils.pm erstellt
oh oh ..., aber hoffentlich so http://www.fhemwiki.de/wiki/99_myUtils_anlegen ?
Klar. Genau so. ;)
Daher weiß ich auch dass man mit 1; abschließen soll
was kann ich jetzt noch versuchen? Oder muss die Funktion erst aktiviert werden?
##############################################
# $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;
sub
myUtils_Initialize($$)
{
my ($hash) = @_;
}
# Enter you functions below _this_ line.
use IO::Socket;
sub UDP_Msg($$)
{
my ($dest,$cmd) = @_;
my $sock = IO::Socket::INET->new(
Proto => 'udp',
PeerPort => 6666,
PeerAddr => $dest
) or die "Could not create socket: $!\n";
$sock->send($cmd) or die "Send error: $!\n";
return "send $cmd";
}
1;
Muss Ich evtl. im Server etwas freischalten oder installieren?
Fhem läuft auf einem Debian-Server
nach dem Erstellen ein reload 99_myUtlis gemacht ?
was sagt denn dein Logfile ?
da sollte doch irgend etwas drin stehen, egal ob es geklappt hat oder nicht !?!
reload 99_myUtils.pm gemacht.
Logfile - finde ich nicht ??? Ich habe nur für meine Autoren, Sensoren und Wetter Logfiles... (vielleicht mal ausversehen gelöscht).
...stöhn ... und was steht bei Dir im Webinterface über dem Wort bzw Link Commandref ?
Halt stop nicht sofort antworten, einfach draufklicken ,lesen , kopieren und "richtig" mit Code Tags posten ...
Sorry dass ich immer falsch gepostet habe.
Wahrscheinlich habe ich das Logfile beim aufräumen mal gelöscht... :-[
kann ich das wieder erstellen?
Ich habe mir das Logfile wieder erstellt und eine Fehlermeldung entdeckt, wenn ich reload 99_myUtils.pm mache.
2015.02.25 16:59:52 0: Server started with 46 defined entities (version $Id: fhem.pl 8066 2015-02-22 13:33:26Z rudolfkoenig $, os linux, user fhem, pid 3598)
2015.02.25 17:00:28 1: PERL WARNING: Subroutine myUtils_Initialize redefined at ./FHEM/99_myUtils.pm line 15.
2015.02.25 17:00:28 1: PERL WARNING: Subroutine UDP_Msg redefined at ./FHEM/99_myUtils.pm line 23.
Das sind keine Fehler sondern nur Warnings, wie es auch dort steht.
Hast du mal
{UDP_Msg("192.168.2.7" , "wolido:displayon")}
In die Kommandozeile eingegeben?
:o Ich weiß grad nicht was vorher falsch war aber mit dem Code den du JETZT gepostet hast geht es ;D
Vielen Dank für die Hilfe!
Hinten war ein Semikolon zu viel...
Es war das Semikolon...
Hallo,
auch wenn dieses Thema schon etwas älter ist... für mich im Moment doch sehr aktuell. Deshalb knüpfe ich hier mal an.
Ich habe mir mit einem FS20 Klingeltaster eine Klingel gebaut. Funktioniert mit einem Gong soweit ganz gut. Nun möchte ich dazu noch eine Benachrichtigung auf mein AndroidPhone bekommen... Ton, Text der Display an ist erstmal nebensächlich. Da ich mich nur wenn ich ein bisl Zeit habe einer FHEM Baustelle widmen kann, sind mir die ganzen Lösungen mit Pushover & Co erstmal zu kompliziert. Letzte Woche habe ich dann die App Woli entdeckt. Sollte genau das rsein was ich brauche.
Leider funktioniert es nicht. Habe die 99_myUtils.pm nach der Anleitung erstellt und dann versucht mit {UDP_Msg("192.168.2.7" , "wolido:displayon")} eine Aktion auszulösen.
Was ich nicht verstehe - in der App lege ich ja eine Aktion mit einer ID an, z.B.Sounds ID 3 oder aber WakeLock für Display an. In dem UDP Befehl steht aber "wolido:displayon". Und wie ich es hier lesen kann, funktioniert es. Müssten da nicht direkt die jeweiligen ID's angegeben werden? Hatte aber auch alle Varianten durchprobiert... nix. Bin nun etwas ratlos und auf Hilfe angewiesen.
Vieleicht liegt das Problem ja auch woanders.
Meine 99_myUtils.pm
##############################################
# $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;
sub
myUtils_Initialize($$)
{
my ($hash) = @_;
}
# Enter you functions below _this_ line.
use IO::Socket;
sub UDP_Msg($$)
{
my ($dest,$cmd) = @_;
my $sock = IO::Socket::INET->new(
Proto => 'udp',
PeerPort => 6666,
PeerAddr => $dest
) or die "Could not create socket: $!\n";
$sock->send($cmd) or die "Send error: $!\n";
return "send $cmd";
}
1;
Und der Eintrag aus dem Logfile
22016.10.28 17:18:38 3: FS20 set Klingeltaster on
2016.10.28 17:18:38 1: devspec2array {UDP_Msg("192.168.0.4": Unmatched ( in regex; marked by <-- HERE in m/^( <-- HERE {UDP_Msg("192.168.0.4")$/ at fhem.pl line 1162.
2016.10.28 17:18:38 3: Klingel_notify return value: Please define {UDP_Msg("192.168.0.4" first
Hallo,
Bei mir war es damals ähnlich.
Ich löse mittels Videoserver an der Klingelkamera ein Motion-detect aus, welches mittels UDP das Wandterminal aufweckt und den Klingelton abspielt. Das war auch ein sehr steiniger Weg.
Zunächst muss dein Smartphone zwingend eine Statische iP bekommen.
sub UDP_Msg($$)
{
my ($dest,$cmd) = @_;
my $sock = IO::Socket::INET->new(
Proto => 'udp',
PeerPort => 6666,
PeerAddr => $dest
) or die "Could not create socket: $!\n";
$sock->send($cmd) or die "Send error: $!\n";
return "send $cmd";
}
1;
Damit hört FHEM auf die UDP-Befehle Port 6666
Hier die Woli2 Befehle:
https://knx-user-forum.de/forum/öffentlicher-bereich/knx-eib-forum/diy-do-it-yourself/33661-woli2/page2
Den richtigen Durchblick habe ich leider auch nicht.
Ich habe damals auch viel Hilfe dazu gebraucht.
Ich hoffe, ich könnte dir auf den richtigen Weg helfen
Installier Dir das AMAD Modul. Dann kannst noch mehr Steuern später mal.
https://forum.fhem.de/index.php/topic,50108.0.html
Erstmal Danke für die Antworten...
@eberlrudi
In dem KNX Forum sind die Befehle zwar teilweise aufgeführt, aber trotz ausführlichem Probieren bekomme ich das einfach nicht zum laufen.
@CoolTux
Habe mal geschaut... die Möglichkeiten sind wirklich umfangreicher. Ich brauche aber wirklich nur eine Benachrichtigung wenn es klingelt... und später dann noch die Möglichkeit ein Tablet an der Wand aufzuwecken.
Bekomme ich das Modul relativ einfach zum Laufen, dann lese ich mich da gerne ein? Zum Vergleich - die ganzen Push Möglichkeiten waren mir vielleicht nicht zu kompliziert, jedoch erstmal doch sehr zeitintensiv.
Und... ist die App Automagic zwingend erforderlich? Ich benutze eigentlich seit Jahren Tasker.
Hallo,
Ja Automagic ist erforderlich. Ohne geht es nicht. Das einrichten ist relativ einfach und schnell gemacht.
Gru
Okay... danke.
Dann werde ich mich mal einlesen... und wenn ich nicht mehr weiter weiß dich mit meinem Fragen Löchern ;-)
VG
Gesendet von meinem XT1068 mit Tapatalk
@CoolTux
Gestern Abend noch schnell das Wiki gelesen, installiert und... ja es läuft. Einfach und schnell einzurichten war es auch. Danke für den Tipp und Kompliment für das Modul.
Bin dann hier raus ;)
VG
Danke für die Blumen und viel Spaß mit dem Modul :)
Grüße