Seite 2 von 2
Re: FOSHKplugin: Einbinden externer Datenquellen - Sensoren emulieren
Verfasst: 16 Jun 2025, 17:32
von rsgaf
Hi,
hab die Zeile eingefügt und das Script manuell ausgeführt:
Code: Alles auswählen
pi@raspberrypi:/opt/FOSHKplugin $ addScript.sh dies=das&jenes=nix
[1] 23003
pi@raspberrypi:/opt/FOSHKplugin $ bash: addScript.sh: Kommando nicht gefunden.
Neugierhalber habe ich auch mal nur das Script ohne dies=das&jenes=nix ausgeführt:
Code: Alles auswählen
i@raspberrypi:/opt/FOSHKplugin $ sudo ./addScript.sh
*<?xml version='1.0' encoding='ISO-8859-1' ?><state><datapoint ise_id='HmIP-RF.002762698ABB74:1.RAINING' value='false'/></state>*
&srain_piezo=0
pi@raspberrypi:/opt/FOSHKplugin $
Re: FOSHKplugin: Einbinden externer Datenquellen - Sensoren emulieren
Verfasst: 16 Jun 2025, 18:16
von olicat
Hi!
Der Aufruf sollte schon dieser sein:
Ansonsten sieht die Antwort doch deutlich anders aus als gestern mitgeteilt.
Das Script sucht den Substring value="true" - Deinem Beitrag nach wird das value aber nicht in doppelten sondern in einfachen Anfruehrungszeichen geschickt: value='true".
Somit muss man dann natuerlich auch danach innerhalb des Scriptes suchen:
Code: Alles auswählen
#!/bin/bash
# name this script addScript.sh and place it in the FOSHKplugin directory
# make script executable - chmod ug+x addScript.sh
# use in config file as Export\ADD_SCRIPT = ./addScript.sh
# the original output data from FOSHKplugin
instr="$@"
# address to gather the state from
address="http://foshkplugin.phantasoft.de/temp/rsgaf.html?sid=INSERTTOKEN&datapoint_id=HmIP-RF.002762698ABB74:1.RAINING"
# if sensor outputs 0 for no rain and 1 for is raining via http call
statetext=`curl -s $address`
#echo *"$statetext"*
if [ ! -z "${statetext}" ]; then
if [[ $statetext == *"value='true'"* ]]; then
statestring="&srain_piezo=1"
else
statestring="&srain_piezo=0"
fi
fi
# merge the original string with the new components
echo "${instr}${statestring}"
Oliver
Re: FOSHKplugin: Einbinden externer Datenquellen - Sensoren emulieren
Verfasst: 16 Jun 2025, 19:22
von rsgaf
Hi,
Code: Alles auswählen
Ansonsten sieht die Antwort doch deutlich anders aus als gestern mitgeteilt.
Das Script sucht den Substring value="true" - Deinem Beitrag nach wird das value aber nicht in doppelten sondern in einfachen Anfruehrungszeichen geschickt: value='true".
Sorry dafür, war keine Absicht. Das wird mir leider so in jedem Browser ausgegeben:

- Unbenannt.PNG (17.7 KiB) 257 mal betrachtet
Mit dem angepassten Script bekomme ich leider gar keine Ausgabe:
Oh man, aus versehen einen Absatz doppelt in das Script kopiert....
Jetzt funktioniert alles wie es soll.
Vielen Dank für Deine Hilfe und Geduld!
Re: FOSHKplugin: Einbinden externer Datenquellen - Sensoren emulieren
Verfasst: 16 Jun 2025, 19:41
von olicat
Hi!
Vermutlich musst Du die address noch entsprechend anpassen?
In Zeile 15 kannst Du versuchsweise das # am Anfang der Zeile entfernen, damit wir den Inhalt der Variable statetext angezeigt bekommen.
Das wird mir leider so in jedem Browser ausgegeben:
Interessant. Mir war nicht bewusst, dass Browser den Inhalt anders anzeigen koennen als curl.
Massgeblich ist aber, was curl sieht.
Ah, schon erledigt. Wunderbar.
Oliver