FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Helmi55 am 07 September 2015, 19:25:40

Titel: Sysmon und Pushover
Beitrag von: Helmi55 am 07 September 2015, 19:25:40
Hallo guten Abend
bitte um einen klaps auf den Hinterkopf - der Code will nicht!

define pushRPi at +*00:01:00 {\

my $sysinfo=SYSMON_ShowValuesText("sysmon", "fhemuptime_text:fhem up time", "0");;\ set Pushover1 msg 'Titel' 'Fhem up time.' '' 0 ''\ }

Ich habe Sysmon eingerichtet und liefert Werte. Pushover ist auch eingerichtet und geprüft - Testpush kommt aufs iPhone.
Zum Testen habe ich auf Minutenintervall gestellt.
Endziel: ich möchte mir ein oder zweimal am Tag eine Pushnachricht über die Uptime von FHEM schicken

Danke für eure Hilfe
Gruß
Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Puschel74 am 07 September 2015, 19:39:19
my $sysinfo=SYSMON_ShowValuesText("sysmon", "fhemuptime_text:fhem up time", "0")
so
my $sysinfo=ReadingsVal("sysmon", "fhemuptime_text", "0")
wäre für mich logischer.
In Pushover musst du dann nur noch die Variable $sysinfo mitsenden lassen.

Aber das ist doch Grundlage und in jeder erdenklichen Variante bereits zigfach im Forum und im Wiki zu finden  ???
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 07 September 2015, 20:35:42
Sorry aber ich werd nicht schlau (hab den ganzen PushoverFred heute durchgekaut...)
So siehts jetzt aus

define pushRPi at +*00:01:00 {\

my $sysinfo=ReadingsVal("sysmon", "fhemuptime_text:fhem up time", "0");;\ set Pushover1 msg 'Titel' 'Fhem up time.' '' 0 ''\ }


pushRPi ist als attr in meiner Pushover1

In der Logdatei finde ich das
2015.09.07 20:28:54 3: pushRPi: Unrecognized character \xE2; marked by <-- HERE after {\<-- HERE near column 3 at (eval 40) line 1.

ICH sehe leider kein falsches Zeichen  Die " habe ich gecheckt?
Hau ordentlich zu und schubs mich bitte drauf.
Ich krieg das nur learning by doing hin. Wenn ich den richtigen Code habe dann kann ich da drauf wieder aufbauen  DANKE
Gruß
Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Puschel74 am 07 September 2015, 20:41:32
Du benutzt den falschen Editor - aber auch das hättest du "learning by doing" über die SuFu rausgefunden.
Und was soll das at als Attribut?
Damit werden keine Variablen übergeben.
GN8
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 07 September 2015, 22:25:56
Hallo
habe jetzt direkt mit sudo nano editiert.

Sieht nun so aus:
define Pushover1 Pushover xyz (PushoverToken)

define pushRPi at +*00:01:00 {\
my $sysinfo=ReadingsVal("sysmon", "fhemuptime_text: fhem uptime", "0");;\ set Pushover1 msg 'Titel' 'fhem up time'
" 0 "\ }

Funktioniert leider nicht
wer kann mir bitte den richtigen Code hier schreiben - DANKE
Gruß
Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 08 September 2015, 08:31:51
Bitte helft mir - Danke
Ich will ja keine aufwendigen Codes schreiben - ich möchte bitte nur das dies hier funktioniert
Tx
Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 08 September 2015, 18:58:14
Habe jetzt so probiert

define RPiDatenPushover at +*00:01:00 {$RPiDaten = ReadingsVal("sysmon","uptime_text", "");;  fhem ("set Pushover1 pushover msg =RPi
Daten $RPiDaten" " 0 ")}\

ohne Erfolg...... :( :(
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 08 September 2015, 21:48:31
Keiner Mitleid und schreibt mir den richtigen Code ?
Ich bekommes nicht auf die Reihe
D a n k e
Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Brice am 09 September 2015, 14:26:20
Viel gesucht hast du anscheinend nicht, und: Gewöhn dir bitte an, deinen Code und auch die Fehlermeldungen als Code zu schreiben und benutze bitte das Tag (Schaltfläche #).

Ich habe mir gerade mal Sysmon eingerichtet und die Push-Meldung über PushNotifier eingerichtet. Wie schon erwähnt wurde, muss '$sysinfo' für die Pushnachricht übergeben werden. Bei mir funktioniert z.B.

define TestPush *13:36:30 {
my $sysinfo=SYSMON_ShowValuesText('sysmon', ('date', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time'));;
fhem ("set PushNachricht message '' '$sysinfo' ''  ''")
}


Also müsste es bei dir wie folgt aussehen:

define RPiDatenPushover at +*00:01:00 {
my $sysinfo=SYSMON_ShowValuesText('sysmon', ('date:Datum', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time'));;
fhem ("set Pushover1 msg 'Titel' '$sysinfo' '' 0 ''")
}


Titel und die 0 fehlen bei mir, da ich mir Pushnachrichten von FHEM auf dem Mobiltelefon vorlesen lasse, und da stört das nur :-)

Edit: Fehler im Code (Kopierfehler :-) )
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 09 September 2015, 18:26:00
Hallo herzlichen Dank für deine Antwort.
Ich habe mich gestern und heute wirklich eingehendste damit beschäftigt. Programmieren ist halt leider nicht (noch nicht) meins.
Ich scheitere halt schon an den Kleinigkeiten
Aber so wies aussieht bin ich zu blöd dazu.....
2015.09.09 18:16:56 2: Error messages while initializing FHEM: configfile: Unknown command my, try help. Unknown command fhem, try help. Unknown command }, try help.

Ich habe das System gestoppt Im Terminal mit sudo nano die cfg editiert
aber ohne Erfolg. (Ich glaube in der letzten Zeile ist ein "set" zuviel oder?


define RPiDatenPushover at +*00:01:00 {
my $sysinfo=SYSMON_ShowValuesText('sysmon', (date:Datum', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time'));;
fhem ("set Pushover1 msg 'Titel' '$sysinfo' " 0 "")
}


Gruß
Helmut
PS Pushover funktioniert das habe ich getestet.....
Titel: Antw:Sysmon und Pushover
Beitrag von: Puschel74 am 09 September 2015, 19:41:41
Ich hab mal versucht dein "Problem" nachzustellen und muss dir leider sagen das bei mir ein:
Test:Start {
  my $sysmon=ReadingsVal("sysmon","fhemuptime_text","undef");
  Log(1,"$sysmon");
  DebianMail(vorname.nachname@@provider.land','Achtung! Test',$sysmon);
}

als Mail ein
Zitat5 days, 16 hours, 02 minutes
liefert
Und das steht im Reading fhemuptime_text  in sysmon:
Zitat5 days, 16 hours, 02 minutes

Test:Start ist bei mir nur ein Dummy mit Namen Test und attr webCmd Start (den und das notify hab ich extra für diesen Versuch angelegt).
Und ich hab weder das System gestoppt noch die Konfig direkt bearbeitet da ich alles über die FHEM-Befehlszeile resp. danach über das jeweilige DEF mache.

Pushover werde ich mir aber nicht extra für dich kaufen - eher lege ich dir das Wiki ans Herz (http://www.fhemwiki.de/wiki/Pushover (http://www.fhemwiki.de/wiki/Pushover)) und dort der Punkt Erinnerungsfunktion mit Hilfe des Kalendermoduls

ZitatIch will ja keine aufwendigen Codes schreiben - ich möchte bitte nur das dies hier funktioniert
Besser du lernst es von Anfang an - deine Begehrlichkeiten werden wachsen und da FHEM keinen kommerziellen Support bietet wirst du dich selbst um deine Codes kümmern (müssen).
Fragen sind kein Thema aber du musst dich mit den Antworten schon auch zufrieden geben, bereit sein zu suchen und zu lesen (und zu verstehen) - und vor allem Geduld haben und nicht alle x Stunden um Hilfe betteln.
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 09 September 2015, 21:30:13
Herzlichen Dank für eure Hilfe.
Ehrlich, ich habe mich mit dem Thema intensiv beschäftigt. Allerdings ohne Erfolg.
Ich hätte nur gerne EIN Erfolgserlebnis. Ich verstehe nicht, warum, wenn Brice das 1:1 nachgebaut hat, bei mir nicht funktioniert. Ich habe es nicht mit copy Paste eingefügt.
Aber gut, ich werde morgen die Version mit der e-Mail testen.
Ich werde die config per Eingabezeile editieren und werde wieder die Wiki studieren
Nochmals Danke für eure Hilfe
Nice Eve Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 10 September 2015, 18:35:09
Hallo liebe Helfer,
so ich habe heute versucht das Ganze aufzuteilen.
Der erste Teil ich wollte nur 3 Dinge aus dem Sysmon auslesen - habe ich so gelöst. Erscheint auch jetzt in meinem Dashboard unter dem Reiter Technik
define RPiDaten weblink htmlCode {SYSMON_ShowValuesHTML('sysmon', ('date:Datum', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time:'))}
attr RPiDaten group Technik
attr RPiDaten room Technik

Zum zweiten habe ich versucht mir eine Pushmitteilung bei Neustart zu senden - funktioniert auch
define notify_fhem_reload notify global:INITIALIZED set Pushover1 msg 'fhem' 'Achtung NEUSTART! - ' '' 0 ''


Nur den Code von Brice bekomme ich nicht zum Laufen. Habe auch wie von Puschel74 beschrieben die Erinnerungsfunktion mit Kalender angesehen
und dort spezielle auf die Zeile geachtet dieser Befehl muss ohne Zeilenumbrüche in die Konfiguration übernommen werden, vorzugsweise durch Eingabe in das Befehlsfeld):
So habe ich den Code jetzt eingegeben
define RPiTestDatenPushover at +*00:01:00 { my $sysinfo=SYSMON_ShowValuesText('sysmon', ('date:Datum', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time'));; fhem ("set Pushover1 msg 'Titel' '$sysinfo' " 0 "")}
Den Namen habe ich nur umgeändert damit in der Eingabezeile keine Vorschläge kommen......
Das ist mein LogFile: wobei ich nicht verstehe wieso hier vor hem nur 1 Semikolon angezeigt wird?
2015.09.10 18:31:43 1: PERL WARNING: Number found where operator expected at (eval 112) line 1, near ""set Pushover1 msg 'Titel' '$sysinfo' " 0"
2015.09.10 18:31:43 3: eval: {my $sysinfo=SYSMON_ShowValuesText('sysmon', ('date:Datum', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time')); fhem ("set Pushover1 msg 'Titel' '$sysinfo' " 0 "")}
2015.09.10 18:31:43 1: PERL WARNING: String found where operator expected at (eval 112) line 1, near "0 """
2015.09.10 18:31:43 3: eval: {my $sysinfo=SYSMON_ShowValuesText('sysmon', ('date:Datum', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time')); fhem ("set Pushover1 msg 'Titel' '$sysinfo' " 0 "")}
2015.09.10 18:31:43 3: RPiTestDatenPushover: syntax error at (eval 112) line 1, near ""set Pushover1 msg 'Titel' '$sysinfo' " 0"


Vielleicht kann ich es ja doch mit eurer Hilfe heute endlich abschliessen

Gruß Helmut
Titel: Antw:Sysmon und Pushover
Beitrag von: Puschel74 am 10 September 2015, 19:18:13
Selbst wenn ich den Code von Brice verwende klappt es bei mir.

Test:Start {
  my $sysmon=SYSMON_ShowValuesText('sysmon', ('date', 'uptime_text:System up time:', 'fhemuptime_text:FHEM up time'));
  Log(1,"$sysmon");
}

Die Ausgabe dazu:
Zitat2015.09.10 19:11:34 1: Date                    : 10.09.2015 19:11:34
System up time          : 6 days, 15 hours, 42 minutes
FHEM up time            : 6 days, 15 hours, 42 minutes

Dein System ist aber aktuell - d.h. du hast ein update gemacht nachdem du FHEM installiert hast?
Vielleicht lässt du Pushover erstmal weg und versuchst es mit Log - so wie ich es grad gepostet habe.
Titel: Antw:Sysmon und Pushover
Beitrag von: Helmi55 am 10 September 2015, 20:07:51
Servus und guten Abend,

ja hab den RPi erste vorgestern "Neu gemacht" (raspberrypi 4.1.6-v7+) und selbstverständlich gleich ein Update von fhem
Jetzt habe ich noch einen updatecheck gemacht und habe gesehen dass es ein Update für Pushover gibt    regex error handling
Habe jetzt eingespielt und werde dann den Code nochmals eingeben.
Als Lösung habe ich ja jetzt die Werte wie oben beschrieben.
Möchte natürlich auch den richtigen Code zum Laufen bringen
Gruß
Helmut