NEWS
Test Adapter google-spreadsheet v0.1.0
-
Aktuelle Test Version 0.1.0 Veröffentlichungsdatum 15.09.2023 Github Link https://github.com/ThomasPohl/ioBroker.google-spreadsheet Hallo zusammen,
ich habe einen Adapter entwickelt mit dem man Daten aus iobroker in Google Tabellen hochladen kann. Für mich ist das ein sinnvoller Weg um Daten aus dem Internet verfügbar zu haben, aber keinen Zugriff direkt auf den iobroker zu erlauben.
Aktuell kann man über javascript oder blockly
- Daten an eine Tabelle anhängen
- Zeilen aus einer Tabelle löschen
- Tabellen anlegen, duplizieren und löschen
Um den Adapter nutzen zu können, muss man ein bisschen was im eigenen Google Account einrichten:
- In der Google Cloud Console ein Projekt anlegen und den API-Zugriff einschalten
- Einen Service Account anlegen
- Den Service Account auf die Tabelle berechtigen
Die Details stehen in der README.md
Ich würde mich freuen wenn ihr den Adapter testen und mir Feedback geben könntet: Gibt es Probleme? Fehlen Features? Was kann man verbessern? Haltet ihr den Adapter für sinnvoll?
Viele Grüße
Thomas -
@thomaspohl Vielen Dank für den Adapter!
Die Einrichtung (Service-Account, etc) ist eine kleine Hürde, aber danach läuft das ganze (für mich) sehr stabil. Mal schauen, ob es hierzu zukünftig noch Vereinfachungen gibt.
Mein Usecase ist das automatische Dokumentieren diverser Zählerstände (Strom, PV, Wärmepumpe, Wallbox, etc) für eine einfache Zugreifbarkeit/Auswertung über das Jahr, sowie in gewisser Weise als "Backup" zum Logging in Influx. Spart mir jetzt den regelmäßigen Gang in den Keller, bzw. das händische Übertragen. Genau das hatte mir noch gefehlt.
Wofür benutzt ihr den Adapter?
Grüße
Jörg -
@thomaspohl Ich habe den Adapter Installiert und das ganze SAPI-Prozedere durchgeführt. Soweit sieht alles gut aus.
Ich habe eine Tabelle eingerichtet und geteilt.
Wenn ich mit Blockly was reinschreiben will kommt:google-spreadsheet.0 2023-09-27 15:29:42.248 error Error while sending data to Google Spreadsheet:Error: error:1E08010C:DECODER routines::unsupported
Irgendwie ist mir nicht klar wie ich die Zieltabelle und die Zielzelle angeben kann.
Gibt es eine detailliertere Anleitung? -
Hi @docgame,
vielen Dank fürs Testen!
Es gab schon mal ein ähnliches Problem. Da war das Thema, dass der Private Key keine Zeilenumbrüche sondern \n (genau diese Zeichenfolge) verwendet hat. Das entsteht beim Kopieren aus dem File das man von Goole runterlädt.Wenn das bei dir das gleiche Problem ist, würde ich das in der README ergänzen. Vielleicht kann man da auch eine programmatische Lösung finden.
-
Kleines Update: Das Problem war tatsächlich die Formatierung des Private-Keys. Ich werde das in der nächsten Version etwas Fehlertoleranter machen.
-
@thomaspohl Hey moin moin,
Egal wie, es gelingt einfach nicht.
Ich bin alle schritte deiner Anleitung gefolgt. Dennoch bekomme ich diverse Fehlermeldungen:Error while retrieving data from Google Spreadsheet:Error: error:1E08010C:DECODER routines::unsupported
Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().Kannst du mir helfen dies zu beheben?
-
@dcore In eine Tabelle schreiben geht mitlerweile, es lag an dem \n. Jedoch beim auslesen einer Zelle erhalte ich immer wieder den Code Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
-
Hi
Ich hab heute den Adaptrer installiert.
Anleitung in Github durchgearbeitet.Bekomme beim Senden von Daten nach Google folgende Fehler:
Script:
Woran kann das liegen?
-
Hallo @nullsibnelf,
tritt das Problem noch auf? Das klingt nach einem Problem mit dem Zertifikat oder mit den Berechtigungen in Google.Viele Grüße
Thomas -
Hallo @dcore,
passiert das auch beim Aufruf von readCell? Ich versuche mal etwas mehr Fehlerbehandlung einzubauen. Vielleicht können wir so den Fehler weiter eingrenzen.Viele Grüße
Thomas -
@Dcore ich habe ein neues Release veröffentlicht: v0.4.0
Ich vermute, dass Google etwas an der API angepasst hat. Dadurch musste ich die Zelle, die ausgelesen werden soll etwas anders formatieren. Das war auch beim schreiben einer einzelnen Zelle ein Problem. Gerne noch einmal testen.