{system("....")} - Aufruf, Ergebnis nicht ins Log, sondern in eine FHEM-Variable

Begonnen von Ralph, 06 Juni 2018, 14:38:59

Vorheriges Thema - Nächstes Thema

Ralph

Hallo,
ich sehe mal wieder den Wald vor lauter Bäumen nicht.

Ich möchte das 0 = false / 1 = true von

{system("ping -c 1 www.irgendeinedomain.de"|grep -c " 0%")} (auf dem RasPi)

in einer FHEM-Variable als Reading oder sonstwie haben.

Ich schnalls nicht. Mag mir wer bitte helfen ?
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

Otto123

Hi,

ich hatte das mal ausführlich in mein Notizheft geschrieben :)
Und es gab den kleinen Kurs von Rudi.
Nicht die direkte Lösung aber hilft das Dir?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Christoph Morrison

Externe Hosts kannst du auch mit PRESENCE und lan-ping überwachen. Dazu musst du nicht unbedingt extra Perl dazu machen.

Otto123

Für die Lösung mit Presence noch diese Ergänzung falls der externe Host auf normales Ping nicht reagiert:
https://forum.fhem.de/index.php/topic,87065.msg795233.html#msg795233

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Wernieman

Würde aber eher Rudis Weg empfehlen. Der Direkte Weg führt zum blockieren von FHEM. Wenn dagegen das Script von Sich aus die Daten per telnet zurückpushd ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Ralph

Ich danke Euch sehr für die bisherigen Hinweise, Tips und Links.

Das Problem ist mehrschichtig. Am nächsten kommt dem dieses
Zitat von: fiedel am 18 April 2018, 04:37:42
Es gibt auch den Zustand wo die Box verbunden ist und eine IP hat, das Netz aber trotzdem nicht erreichbar ist.
Daher ist die beste Lösung "Presence auf externen (DNS-) Server".
Signalisieren lasse ich mir das über einen Surfstick mit einer Discotel- Karte, der mir eine SMS schickt.
Übrigens benutze ich noch ein Presence auf die interne IP der FB (ohne USV)
und erkenne damit Stromausfälle (FHEM- Server mit USV), die dann auch über den Surfstick rausgehen.

Ein guter Hint ist grundsätzlich auch
Zitat von: tupol am 18 April 2018, 21:29:53
box_connect != 5 sollte auf eine fehlende DSL Verbindung hinweisen.
Geht aber hier nicht, weil die Box kein eigenes DSL hat,
sondern mit LAN 1 über eine Ethernet-Weiche
entweder an einem WLAN-Empfänger
oder einem GigaCube hängt, je nachdem, was gerade geht.
Da kommt ja dann die Antwort vom vorgeschalteten Teil und nicht von ganz Außen.
Weswegen das mit "box_ipExtern" auch nicht geht.

Ottos Antwort #1 hatte ich gefunden, gelesen, aber wohl nicht verstanden.

Christophs Antwort #2 passt (siehe oben) am besten für diesen Fall, kam ich aber nicht drauf.

Und Wernieman hat in Antwort #4 natürlich auch recht.

Was ich mir auch erhofft hatte:
Die grundsätzliche Antwort auf die Frage,
wie man die Returnwerte der {system}-Aufrufe nach FHEM bringt ?

Das habe ich noch nicht verstanden. Vielleicht mag mir das noch wer verklickern ?
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

Otto123

Zitat von: Ralph am 06 Juni 2018, 17:53:30
wie man die Returnwerte der {system}-Aufrufe nach FHEM bringt ?
eigentlich gar nicht. Der gibt nichts sinnvolles zurück.
qx gibt die Standardausgabe zurück.

Wenn Du unbedingt system willst, musst Du Deinen Wert im Aufruf (mach bitte eine Script!!!) über ein fhem Kommando setzen. In Rudi Kurs gut erklärt!

Besser als in meinem Artikel kann ich es nicht erklären  ???


Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Ralph

Zitat von: Christoph Morrison am 06 Juni 2018, 14:45:09
Externe Hosts kannst du auch mit PRESENCE und lan-ping überwachen. Dazu musst du nicht unbedingt extra Perl dazu machen.

Habe ich benutzt.
Und nun brauche ich dasselbe ein 2tes und ein drittes Mal für einen anderen Host. Geht aber nur einmal.

Erbitte Lösung.
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

MadMax-FHEM

Zitat von: Ralph am 17 Februar 2021, 14:54:33
Habe ich benutzt.
Und nun brauche ich dasselbe ein 2tes und ein drittes Mal für einen anderen Host. Geht aber nur einmal.

Erbitte Lösung.

Warum soll PRESENCE mit lan-ping nur einmal gehen!!?

Ich habe davon mind. 4-5 laufen mit unterschiedlichen IPs...

Du brauchst nat. für jeden Host ein eigenes PRESENCE-Device ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Ralph

Zitat von: MadMax-FHEM am 17 Februar 2021, 14:59:06
Warum soll PRESENCE mit lan-ping nur einmal gehen!!?
Das habe ich mich auch gefragt.
Den ganzen Nachmittag hat er mir gesagt PRESENCE wird schon verwendet.
Nach deinem Hinweis habe ich mal neu gestartet.
Nun gehts.
Sorry für die dumme Frage.
FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

Wernieman

OT:
ZitatSorry für die dumme Frage.
Eigentlich giebt es keien Dummen Fragen, nur "Dumme" Frager .... da Du aber selber auf Deine Antwort gekommen bist und es noch erwähnst, kannst Du dieses nicht sein ..

Die einzigsten "Dummen Fragen" hier im Forum sind:
- Fragen fragen, die schon mal beantwortet wurden (Stichwort: Zu faul zum Suchen)
- Fragen ohne "Daten zu liefern"
- Beratungsresistente Frager (Es muß so gehen, wie der Frager es will, ohne Alternativen zu erlauben)
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html