Ab jetzt kann getestet werden!
Moderator: Ulrich
- Ulrich
- Administrator
- Beiträge: 5950
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 152 Mal
- Danksagung erhalten: 828 Mal
- Kontaktdaten:
Ab jetzt kann getestet werden!
Wie man über die neue API Daten in die Influx Datenbank der Solaranzeige schreiben kann, steht in dieser Anleitung: API.pdf Für den absoluten Laien ist das nichts, ich hoffe aber, dass Mitglieder behilflich sein werden. Mit XML Dokumenten muss man sich ein klein wenig auskennen.
Wer weitere Ideen hat, nur her damit. Die API wird noch weiter ausgebaut, je nach Bedarf.
Wer weitere Ideen hat, nur her damit. Die API wird noch weiter ausgebaut, je nach Bedarf.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
Re: Ab jetzt kann getestet werden!
Moin,
dazu hab ich ja idee, also probier ich es aus...
zuerstmal habe ich /usr/local/bin/update aufgerufen, um alles auf dem aktuellen Stand zu haben...
In der send.sh hast Du als destination host "http://rpisteuerung.local" angegeben, bei mir wird der Host nicht aufgelöst.
Geändert auf http://localhost/api/control.php erhalte ich ein 403. Da mault also der lighttpd rum. das Verzeichnis api
Da kann der www-user also nicht rein...
also mit "chmod 755 /var/www/html/api" versehen und noch ein Versuch...
Das ergab:
Ich habe im /var/log/lighttpd error.log keinen Eintrag und in /var/www/html/api/ ist auch kein log, nur die 4 Dateien, die auch vorher schon da waren.
Entgegen der Fehlermeldung wurde der Eintrag in die DB geschrieben.
Weiter kann ich noch nix dazu sagen.
Grüße
Markus
Edit sagt: Eleganter wäre, des Verzeichnis /var/www/html/api per chown -R www-data:www-data /var/www/html/api dem passenden Benutzer zu geben.
dazu hab ich ja idee, also probier ich es aus...
zuerstmal habe ich /usr/local/bin/update aufgerufen, um alles auf dem aktuellen Stand zu haben...
In der send.sh hast Du als destination host "http://rpisteuerung.local" angegeben, bei mir wird der Host nicht aufgelöst.
Geändert auf http://localhost/api/control.php erhalte ich ein 403. Da mault also der lighttpd rum. das Verzeichnis api
Code: Alles auswählen
drwxr--r-- 2 root root 4096 Feb 2 20:06 api
also mit "chmod 755 /var/www/html/api" versehen und noch ein Versuch...
Das ergab:
Code: Alles auswählen
root@solaranzeige:/var/www/html/api# ./send.sh api_test.xml
<?xml version="1.0" encoding="UTF-8"?><solaranzeige><version>1.0</version><in-out>in</in-out>
<error_code>1</error_code>
<error>Datenbank Eintrag nicht erfolgt. Bitte LOG Datei prüfen.</error></solaranzeige>root@solaranzeige:/var/www/html/a pi
Entgegen der Fehlermeldung wurde der Eintrag in die DB geschrieben.
Weiter kann ich noch nix dazu sagen.
Grüße
Markus
Edit sagt: Eleganter wäre, des Verzeichnis /var/www/html/api per chown -R www-data:www-data /var/www/html/api dem passenden Benutzer zu geben.
Re: Ab jetzt kann getestet werden!
Der Fehler kam heraus, weil der zweite teil des .xml eine nicht existierende Datenbank anspricht.
Also entweder die XML anpassen oder die zweite DB erzeugen.
So funktionierts fehlerlos.
Also entweder die XML anpassen oder die zweite DB erzeugen.
So funktionierts fehlerlos.
- Ulrich
- Administrator
- Beiträge: 5950
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 152 Mal
- Danksagung erhalten: 828 Mal
- Kontaktdaten:
Re: Ab jetzt kann getestet werden!
Hallo Markus,
vielen Dank für die Hinweise!
Werde alles sofort ändern.
Die LOG Datei heißt: /var/www/log/api.log
Die Beschreibung "API.pdf" habe ich auch angepasst. Bitte noch einmal herunterladen.
vielen Dank für die Hinweise!
Werde alles sofort ändern.
Die LOG Datei heißt: /var/www/log/api.log
Die Beschreibung "API.pdf" habe ich auch angepasst. Bitte noch einmal herunterladen.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
Re: Ab jetzt kann getestet werden!
Ein Wunsch kam auf...
ich würde über diese commandozeilen basierte Api gern in die Remote DB schreiben, ohne dort einen Webserver öffnen zu müssen und dort die Api zu installieren.
Wäre das über die send.php bzw. control.php machbar und wenn ja, wie hoch ist der Aufwand?
Das wäre eine tolle Möglichkeit, manuell abzulesende Zählerstände im Grafana sichtbar zu machen und nebenbei mit aus zu werten. In der Local DB bringts mich nicht weiter, da ich die "nur" für die whatsapp Nachricht mitlaufen habe und nicht in Grafana darstelle. Der Pi ist mir, auch dank schlechter wlan Anbindung, zu langsam für Grafana.
Grüße
Markus
ich würde über diese commandozeilen basierte Api gern in die Remote DB schreiben, ohne dort einen Webserver öffnen zu müssen und dort die Api zu installieren.
Wäre das über die send.php bzw. control.php machbar und wenn ja, wie hoch ist der Aufwand?
Das wäre eine tolle Möglichkeit, manuell abzulesende Zählerstände im Grafana sichtbar zu machen und nebenbei mit aus zu werten. In der Local DB bringts mich nicht weiter, da ich die "nur" für die whatsapp Nachricht mitlaufen habe und nicht in Grafana darstelle. Der Pi ist mir, auch dank schlechter wlan Anbindung, zu langsam für Grafana.
Grüße
Markus
- Ulrich
- Administrator
- Beiträge: 5950
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 152 Mal
- Danksagung erhalten: 828 Mal
- Kontaktdaten:
Re: Ab jetzt kann getestet werden!
Hallo Markus,
technisch ist das kein Problem. Das mit dem Aufwand ist nicht so einfach zu beantworten. Für einen, der programmieren kann, ist der Aufwand mittelmäßig. Ein Laie bricht sich dabei die Ohren.
technisch ist das kein Problem. Das mit dem Aufwand ist nicht so einfach zu beantworten. Für einen, der programmieren kann, ist der Aufwand mittelmäßig. Ein Laie bricht sich dabei die Ohren.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
- Ulrich
- Administrator
- Beiträge: 5950
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 152 Mal
- Danksagung erhalten: 828 Mal
- Kontaktdaten:
Re: Ab jetzt kann getestet werden!
Nun ist auch das Auslesen der Datenbanken per API implementiert. In der dazugehörigen Dokumentation wird alles genau beschrieben.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
Re: Ab jetzt kann getestet werden!
Moin Ulrich,
dann betrachte das mit dem Schreiben in die Remote DB bitte als feature request. Ich breche mir nicht so gern die Ohren.
Eilt ja nicht.
Grüße
Markus
dann betrachte das mit dem Schreiben in die Remote DB bitte als feature request. Ich breche mir nicht so gern die Ohren.
Eilt ja nicht.
Grüße
Markus
- Ulrich
- Administrator
- Beiträge: 5950
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 152 Mal
- Danksagung erhalten: 828 Mal
- Kontaktdaten:
Re: Ab jetzt kann getestet werden!
my2cents hat geschrieben: ↑Mo 7. Feb 2022, 12:35Ein Wunsch kam auf...
ich würde über diese commandozeilen basierte Api gern in die Remote DB schreiben, ohne dort einen Webserver öffnen zu müssen und dort die Api zu installieren.
Wäre das über die send.php bzw. control.php machbar und wenn ja, wie hoch ist der Aufwand?
Das wäre eine tolle Möglichkeit, manuell abzulesende Zählerstände im Grafana sichtbar zu machen und nebenbei mit aus zu werten. In der Local DB bringts mich nicht weiter, da ich die "nur" für die whatsapp Nachricht mitlaufen habe und nicht in Grafana darstelle. Der Pi ist mir, auch dank schlechter wlan Anbindung, zu langsam für Grafana.
Grüße
Markus
Das sollte mit der send.sh funktionieren, wenn du anstatt "solaranzeige.local" den Remote Rechner Namen einträgst. Natürlich nur, wenn die Influx Datenbank auf dem Remoten Rechner nicht weiter geschützt und mit default Werten installiert wurde. Hast du die Installation geschützt, dann muss der Aufruf in der send.sh angepasst werden. Die zu übertragenden Daten müssen dann in eine xml Datei nach dem Vorbild der api_test.xml eingetragen werden. Alles andere steht in der API Beschreibung.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]