FOSHK an einen Loxone-Miniserver
- olicat
- Beiträge: 1776
- Registriert: 07 Dez 2020, 20:33
- Wohnort: Hohen Neuendorf
- Hat sich bedankt: 22 mal
- Danksagung erhalten: 345 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Hi!
Ja, die erste Zeile sollte den Header beinhalten.
Füge den mal bitte ein und probiere, ob WSWin dann die Datei akzeptiert.
Oliver
Ja, die erste Zeile sollte den Header beinhalten.
Füge den mal bitte ein und probiere, ob WSWin dann die Datei akzeptiert.
Oliver
- moppedhausi
- Beiträge: 160
- Registriert: 08 Dez 2020, 09:17
- Wohnort: Willich
- Hat sich bedankt: 55 mal
- Danksagung erhalten: 5 mal
- Kontaktdaten:
- moppedhausi
- Beiträge: 160
- Registriert: 08 Dez 2020, 09:17
- Wohnort: Willich
- Hat sich bedankt: 55 mal
- Danksagung erhalten: 5 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Jetzt die Frage aller Fragen Oliver,
wie bekomme ich dauerhaft diese Zeile in diese wswin.csv?
wie bekomme ich dauerhaft diese Zeile in diese wswin.csv?
- olicat
- Beiträge: 1776
- Registriert: 07 Dez 2020, 20:33
- Wohnort: Hohen Neuendorf
- Hat sich bedankt: 22 mal
- Danksagung erhalten: 345 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Hi!
Ich verstehe die Frage nicht - wenn die Zeile erstmal drin ist, bleibt sie doch auch dort?
Was also meinst Du?
Oliver
Ich verstehe die Frage nicht - wenn die Zeile erstmal drin ist, bleibt sie doch auch dort?
Was also meinst Du?
Oliver
- moppedhausi
- Beiträge: 160
- Registriert: 08 Dez 2020, 09:17
- Wohnort: Willich
- Hat sich bedankt: 55 mal
- Danksagung erhalten: 5 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Leider nicht, denn WsWin löscht die Datei nachdem sie eingelesen wurde.
- olicat
- Beiträge: 1776
- Registriert: 07 Dez 2020, 20:33
- Wohnort: Hohen Neuendorf
- Hat sich bedankt: 22 mal
- Danksagung erhalten: 345 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Hi!
Wie kann denn WSWin eine Datei auf dem Webserver loeschen?
Oder wie kommt WSWin an die Datei ran?
FOSHKplugin schreibt bei Uebertragung per http/POST die Datei nicht selbst - kann somit nicht wissen, ob die Datei bereits vorhanden ist und ob ein passender CSV-Header enthalten ist. Das Dateihandling uebernimmt in diesem Fall ja der Webserver bzw. das annehmende Script.
Daher kann FOSHKplugin in diesem Fall auch den Header nicht mitliefern - es weiss ja nicht, ob der gerade erforderlich ist oder nicht.
Bei den anderen Verfahren (FTP(S), Dateisystem) hat FOSHKplugin die Kontrolle und schreibt ggf. den Header in die Datei.
Du koenntest aber das Empfangsscript leicht modifizieren, das es bei Fehlen der Datei den CSV-Header reinschreibt:
Oliver
Wie kann denn WSWin eine Datei auf dem Webserver loeschen?
Oder wie kommt WSWin an die Datei ran?
FOSHKplugin schreibt bei Uebertragung per http/POST die Datei nicht selbst - kann somit nicht wissen, ob die Datei bereits vorhanden ist und ob ein passender CSV-Header enthalten ist. Das Dateihandling uebernimmt in diesem Fall ja der Webserver bzw. das annehmende Script.
Daher kann FOSHKplugin in diesem Fall auch den Header nicht mitliefern - es weiss ja nicht, ob der gerade erforderlich ist oder nicht.
Bei den anderen Verfahren (FTP(S), Dateisystem) hat FOSHKplugin die Kontrolle und schreibt ggf. den Header in die Datei.
Du koenntest aber das Empfangsscript leicht modifizieren, das es bei Fehlen der Datei den CSV-Header reinschreibt:
Code: Alles auswählen
<?php
# WSWin header for CSV files
$WSWinCSVHeader = ";;1;17;133;2;18;35;36;45;134;42;41;3;19;4;20;5;21;6;22;7;23;8;24;29;30;31;32;25;26;27;28;37;13;14;15;16\r\n";
# set user & password to allow upload
$known_user = "user";
$known_password = "password";
# set another user & password to allow upload
$known_user2 = "user2";
$known_password2 = "password2";
$content = $_POST['content'];
$filename = $_POST['filename'];
$user = $_POST['user'];
$password = $_POST['password'];
$append = $_POST['append'];
if (($known_user == $user and $known_password == $password) or ($known_user2 == $user and $known_password2 == $password)) {
$file = $filename;
$writeHeader = !(file_exists($file));
if ($append == "True") { $Saved_File = fopen($file, 'a'); } else { $Saved_File = fopen($file, 'w'); }
if ($writeHeader) { fwrite($Saved_File, $WSWinCSVHeader); }
fwrite($Saved_File, $content);
fclose($Saved_File);
echo "ok";
http_response_code(200);
} else {
echo "unauthorized access!";
http_response_code(401);
}
?>
- olicat
- Beiträge: 1776
- Registriert: 07 Dez 2020, 20:33
- Wohnort: Hohen Neuendorf
- Hat sich bedankt: 22 mal
- Danksagung erhalten: 345 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Als Nachtrag:
Aber Vorsicht!
Das Empfangsscript nimmt jegliche Dateien an und schreibt IMMER den CSV-Header rein, wenn es die Datei nicht gibt.
Im Falle der WSWin-CSV ist das hilfreich. Bei clientraw.txt, realtime.txt und den anderen Ausgabeformen ist das aber kontraproduktiv.
Dieses Script ist also nur und ausschließlich bei WSWin-Export sinnvoll!
Vielleicht optimiere ich da das FOSHKplugin nochmal, so daß es dem Script auch das Ausgabeformat mitteilt. Dann kann das Script explizit auf WSWin-Export reagieren und nur dann den Header schreiben.
Nachtrag zum Nachtrag:
In der naechsten FOSHKplugin-Version wird das auszugebende Format per http/POST mit uebergeben. Das Empfangsscript kann dann darauf reagieren und nur bei Bedarf (und Sinnhaftigkeit) den CSV-Header schreiben.
Oliver
Aber Vorsicht!
Das Empfangsscript nimmt jegliche Dateien an und schreibt IMMER den CSV-Header rein, wenn es die Datei nicht gibt.
Im Falle der WSWin-CSV ist das hilfreich. Bei clientraw.txt, realtime.txt und den anderen Ausgabeformen ist das aber kontraproduktiv.
Dieses Script ist also nur und ausschließlich bei WSWin-Export sinnvoll!
Vielleicht optimiere ich da das FOSHKplugin nochmal, so daß es dem Script auch das Ausgabeformat mitteilt. Dann kann das Script explizit auf WSWin-Export reagieren und nur dann den Header schreiben.
Nachtrag zum Nachtrag:
In der naechsten FOSHKplugin-Version wird das auszugebende Format per http/POST mit uebergeben. Das Empfangsscript kann dann darauf reagieren und nur bei Bedarf (und Sinnhaftigkeit) den CSV-Header schreiben.
Oliver
- moppedhausi
- Beiträge: 160
- Registriert: 08 Dez 2020, 09:17
- Wohnort: Willich
- Hat sich bedankt: 55 mal
- Danksagung erhalten: 5 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Guten Tag zusammen.
Nun läuft PWSDashboard zu meiner Zufriedenheit auf meinem lokalen Server.
Nun möchte ich es aber auch auf meiner Webspace installieren.
In der foshkplugin.conf habe ich folgendes eingetragen:
[Forward-6]
FWD_TYPE = EW
FWD_CMT = wetter-willich.de
FWD_URL = ftp://mein_Server.com:80/wetter/pwsneu/ecowitt/
FWD_SID = Benutzername
FWD_PWD = mein_Passwort
FWD_INTERVAL = 20
FWD_ENABLE = True
Es kommt die Fehlermeldung in der log-foshkplugin.log:
22.11.2022 14:43:26.354 <WARNING> FWD-06: URL must start with "http://" - adapted to http://ftp://mein_Server.com:80/wetter/pwsneu/ecowitt/
Wie bekomme ich die ecco_lcl.arr auf meinem Webspace?
Nun läuft PWSDashboard zu meiner Zufriedenheit auf meinem lokalen Server.
Nun möchte ich es aber auch auf meiner Webspace installieren.
In der foshkplugin.conf habe ich folgendes eingetragen:
[Forward-6]
FWD_TYPE = EW
FWD_CMT = wetter-willich.de
FWD_URL = ftp://mein_Server.com:80/wetter/pwsneu/ecowitt/
FWD_SID = Benutzername
FWD_PWD = mein_Passwort
FWD_INTERVAL = 20
FWD_ENABLE = True
Es kommt die Fehlermeldung in der log-foshkplugin.log:
22.11.2022 14:43:26.354 <WARNING> FWD-06: URL must start with "http://" - adapted to http://ftp://mein_Server.com:80/wetter/pwsneu/ecowitt/
Wie bekomme ich die ecco_lcl.arr auf meinem Webspace?
- olicat
- Beiträge: 1776
- Registriert: 07 Dez 2020, 20:33
- Wohnort: Hohen Neuendorf
- Hat sich bedankt: 22 mal
- Danksagung erhalten: 345 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Hi!
Die baut sich PWSDashboard durch die eingehenden Daten selbst.
Du musst also nicht das LCL dorthin senden, sondern die Daten der Wetterstation selbst.
Auf dem Webserver muss im Verzeichnis /wetter/pwsneu/ecowitt/ dann die um Deinen PASSKEY ($passkey1) ergaenzte index.php liegen.
Oliver
Die baut sich PWSDashboard durch die eingehenden Daten selbst.
Du musst also nicht das LCL dorthin senden, sondern die Daten der Wetterstation selbst.
Code: Alles auswählen
[Forward-6]
FWD_TYPE = EW
FWD_CMT = wetter-willich.de
FWD_URL = http://mein_Server.com/wetter/pwsneu/ecowitt/
FWD_INTERVAL = 20
FWD_ENABLE = True
Oliver
- moppedhausi
- Beiträge: 160
- Registriert: 08 Dez 2020, 09:17
- Wohnort: Willich
- Hat sich bedankt: 55 mal
- Danksagung erhalten: 5 mal
- Kontaktdaten:
Re: FOSHK an einen Loxone-Miniserver
Danke Oliver.
Jetzt blicke ich wieder durch.
Irgendwo habe ich in diesem Forum gelesen, es gibt Probleme bei https, ich finde es aber nicht mehr.
EDIT:
habs mit einer Subdomain lösen können. Danke.
Jetzt blicke ich wieder durch.
Irgendwo habe ich in diesem Forum gelesen, es gibt Probleme bei https, ich finde es aber nicht mehr.
EDIT:
habs mit einer Subdomain lösen können. Danke.