Modul für Pushover

Begonnen von Johannes_B, 07 November 2013, 13:28:08

Vorheriges Thema - Nächstes Thema

Benni

Hallo Mitch!

Da bin ich ja mal froh, dass es nicht nur mir so geht.

Im Endeffekt habe ich seit 13. Januar immer wieder Probleme, dass Meldungen an Pushover nicht abgesetzt werden können, mit entsprechendem Fehlereintrag im Log. Habe mir mittlerweile sogar schon ein "2. Standbein" mit Pushbullet aufgebaut. Auch kann ich die Internetseit pushover.net nur schlecht, meistens gar nicht erreichen.

Ich hatte bei mir bisher allerdings den Internetprovider in Verdacht (1&1), denn über mein Smartphone über die mobile Datenverbindung konnte ich die Probleme bisher nicht nachvollziehen. (speziell die nicht erreichbare Internetseite)

Wie auch immer, solltes du was von Pushover hören, teile es uns doch bitte hier mit.

Danke!

Gruß Benni.

Icinger

Hallo Johannes,

besteht die Möglichkeit, ins Modul noch ein parsen nach \n einzubauen?
Laut der Pushover-API bzw. FAQ kann man ein chr(10) mitsenden, um mehrzeilige Nachrichten zu erhalten.
ZitatTo send multi-line notifications with line-breaks, send regular newline ("\n", ASCII 10) characters in your message.

Leider geht das aber scheinbar nicht, da ein:
set Pushover1 msg 'Heizöl' 'Heizölstand niedrig! Bitte nachbestellen! \n Firma MMM \n KundenNr. xxxxx \n Tel:05 77 240' '' 1 ''
ohne Zeilenumbruch am Handy ankommt :(

lg, Ici
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Johannes_B

Hi,

probier mal %0A statt \n.

Ich denke, ich werde wohl demnächst mal das URL-Encoding einbauen.


Gruß,

Johannes
FHEM Control - an iOS app - available on the App Store:
https://itunes.apple.com/app/id936674170

jonien

Hallo, ich bin neu in diesem Bereich; vielleicht kann mir jemand weiterhelfen: Das SSL attr läßt sich bei mir nicht über "attr pushoverxyz ssl 0" ändern. Wenn ich die Pushover.pm manuell anpasse (z.B. Url="http"; if (1==ssl.... "1 zB auf 2 ändere", dann funktioniert alles reibungslos. Was kann ich tun? Danke für eure Hilfe: Jörg

jonien

Hallo, habe nun das "attr ssl 0" über das Web Interface des Pushover-Gerät gesetzt: ...und es funktioniert.  :)  Hätte zuvor direkt in der fhem.cfg (wie gewohnt) das "attr" gesetzt: ohne Erfolg. Einen Unterschied zum händischen Eintrag in der fhem.cfg kann ich nicht erkennen... :-\. Hauptsache es funktioniert....

Marthinx

Hallo,
ich habe leider ein Problem mit Pushover.
Ich kann keine Variablen übergeben:
Die Pushnachricht lautet immer:
"Anruf von $name mit Nr. $nummer um $zeit zu Hause"

also leider ohne Werte.
Wo liegt denn der Fehler habe schon Stunden gesucht.

Für Hilfe wäre ich sehr dankbar ;)

my $nummer=(ReadingsVal("Fritzbox","external_number","unbekannnt"));
  if ($nummer != '0800xxxxx'){
    my $name=(ReadingsVal("Fritzbox","external_name","unbekannnt"));
    my $zeit=EventZeit();
    my $message="Anruf von $name mit Nr. $nummer um $zeit zu Hause";
    set pushmsg msg "fhem" "Anruf von $name mit Nr. $nummer um $zeit zu Hause";

Danke

Johannes_B

Hm, gute Frage, ich bin leider nicht so der Perl Profi...
Irgendwie scheint die Interpolation nicht zu greifen.

Vielleicht hat da jemand anderes eine Idee...


Gruß,

Johannes
FHEM Control - an iOS app - available on the App Store:
https://itunes.apple.com/app/id936674170

Benni

Versuche es doch anstatt mal explizit mit einer Zeichenkettenverknüpfung:


set pushmsg msg "fhem" 'Anruf von '.$name.' mit Nr. '.$nummer.' um '.$zeit.' zu Hause';



Marthinx

Danke für den Tip.
Leider ist das Ergebnis der Pushmeldung:
Anruf von '.$name.' mit Nr. '.$nummer.' um '.$zeit.' zu Hause

Wo liegt denn der Fehler? Es sollte doch möglich sein Variaben zu senden, oder?

Icinger

my $nummer=(ReadingsVal("Fritzbox","external_number","unbekannnt"));
  if ($nummer != '0800xxxxx'){
    my $name=(ReadingsVal("Fritzbox","external_name","unbekannnt"));
    my $zeit=EventZeit();
    my $message="Anruf von $name mit Nr. $nummer um $zeit zu Hause";
    set pushmsg msg "fhem" "Anruf von $name mit Nr. $nummer um $zeit zu Hause";


Wo steht das ganze? direkt in der DEF? Du hast da FHEM- und Perl durchgemixt....mAn kann des so eigentlich nicht gehen.

Poste doch mal ein list <device>.
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

Marthinx

#265
Hallo Icinger,

genau das ganz steht in der DEV.
Wie macht man es denn richtig?

hier die Ausgabe von: list anrufPush

Internals:
   DEF        Fritzbox:event.*ring.* {
my $nummer=(ReadingsVal("Fritzbox","external_number","unbekannnt"));
  if ($nummer != '0800xxxxx'){
    my $name=(ReadingsVal("Fritzbox","external_name","unbekannnt"));
    my $zeit=EventZeit();
    set push_Nachricht "Anruf von $name mit Nr. $nummer um $zeit bei uns zu Hause";
    set pushmsg msg "fhem" 'Anruf von '.$name.' mit Nr. '.$nummer.' um '.$zeit.' zu Hause';
   NAME       anrufPush
   NOTIFYDEV  Fritzbox
   NR         253
   NTFY_ORDER 50-anrufPush
   REGEXP     Fritzbox:event.*ring.*
   STATE      active
   TYPE       notify
Attributes:
   room       Anrufe

Vielen Dank für die Hilfe ;)

Brockmann

Zitat von: Marthinx am 14 März 2015, 16:57:59
Wie macht man es denn richtig?

set ist kein Perl-Befehl, sondern fhem. Also anstelle von


set pushmsg msg "fhem" 'Anruf von '.$name.' mit Nr. '.$nummer.' um '.$zeit.' zu Hause';


in etwa so:

fhem("set pushmsg 'FHEM' 'Anruf von $name mit Nr. $nummer um $zeit zu Hause'");

Marthinx

Danke das war der entscheidende Tip.
jetzt musste ich aber etwas umbauen.
So funktioniert es jetzt in der def:

Fritzbox:event.*ring.* {
my $nummer=(ReadingsVal("Fritzbox","external_number","unbekannnt"));
my $name=(ReadingsVal("Fritzbox","external_name","unbekannnt"));
fhem("set pushmsg msg  'Titel' 'Anruf von $name mit Nr. $nummer (Wohnzimmer) '");
}

Vielen Dank für die Hilfe

raimundl

Zitat von: Marthinx am 15 März 2015, 12:04:29

So funktioniert es jetzt in der def:

Fritzbox:event.*ring.* {
my $nummer=(ReadingsVal("Fritzbox","external_number","unbekannnt"));
my $name=(ReadingsVal("Fritzbox","external_name","unbekannnt"));
fhem("set pushmsg msg  'Titel' 'Anruf von $name mit Nr. $nummer (Wohnzimmer) '");
}


Das ganze ist ein "notify" - oder??

LG
Homematic: Licht, Heizung, Alarm, Alexa ... auf einen RaspberryPi3+mit OS "Stretch" und RPI-RF-MOD mit piVCCU3 (HMCCU), ca. 40 HM Komponenten, alexa, MobileAlerts, Hue Ledstripes....

pointde

Ich habe zwei Info-Dummies. Einer heißt PapierIn, einer RestmuellIn.
Wenn nun auf beiden die Zahl 1 steht, soll jeweils um 16:00 Uhr eine Nachricht mit folgendem Text geschickt werden:
Morgen Papiertonne, bitte raus stellen!
Morgen Restmüll, bitte rausstellen!

Kann man das mit einer Programmzeile bewerkstelligen?