Da Awattar die Preise meinem Geschmack nach unzulässig erhöht hat, hamma uns entschlossen ab März 2024 zu SmartEnergy zu wechseln. Tarif: SmartControl
Auf der Homepage kann ma den Strompreis des nächsten Tages vorher anschauen:
Und natürlich hat SmartEnergy auch a API - um am Vortag die stündlichen Strompreise für den nächsten Tag anzugeben. Das ist natürlich eine Herausforderung, mein Awattarscriptl zum Smartenergyscriptl zu adaptieren.
API? Wos isn des? Hinter der etwas klobigen Bezeichnung Application Programming Interface versteckt sich einfach eine Programmschnittstelle. Das heißt, ich rufe ein (vordefiniertes) Programm - eventuell mit Parametern - auf, das Programm macht oder kalkuliert irgendwas und gibt die Daten - idealerweise strukturiert - zurück.
Auf der Seite https://www.smartenergy.at/api-schnittstellen gibts eh eine kurze Beschreibung, aus der Linux (oder auch Windows) Konsole ruft ma die per manum mit curl -s https://apis.smartenergy.at/market/v1/price auf.
der Response (im json Format) schaut dann so aus:
{"tariff":"EPEXSPOTAT","unit":"ct/kWh","interval":15,"data":[{"date":"2024-10-13T00:00:00+02:00","value":0.000},{"date":"2024-10-13T00:15:00+02:00","value":0.000},{"date":"2024-10-13T00:30:00+02:00","value":0.000},{"date":"2024-10-13T00:45:00+02:00","value":0.000},{"date":"2024-10-13T01:00:00+02:00","value":-0.001},{"date":"2024-10-13T01:15:00+02:00","value":-0.001},{"date":"2024-10-13T01:30:00+02:00","value":-0.001},{"date":"2024-10-13T01:45:00+02:00","value":-0.001},{"date":"2024-10-13T02:00:00+02:00","value":-0.008},{"date":"2024-10-13T02:15:00+02:00","value":-0.008},{"date":"2024-10-13T02:30:00+02:00","value":-0.008},{"date":"2024-10-13T02:45:00+02:00","value":-0.008},{"date":"2024-10-13T03:00:00+02:00","value":-0.044},{"date":"2024-10-
...
...
Das Linux Kommandozeilentool jq hat ma schon beim Awattarscriptl geholfen, um JSON Antworten zu parsen und kommt auch hier zum Einsatz. mit jq kann man z.B: JSON Antworten parsen.
Konsole: sudo apt-get install jq
Wers noch immer nicht weiß, der Strompreis ergibt sich aus der Grundgebühr + Arbeitspreis (= Menge des verbrauchten Stroms) des Stromanbieters + Netzgebühren des Netzanbieters.
Beispiele an Hand Kraweuschuastas Strombezugsgeschichte: Stromanbieter # Netzbetreiber
EVN # Netz Niederösterreich
Awattar # Netz Niederösterreich
Smart Energy # Netz Niederösterreich
Wir erkennen: den Netzanbieter kann ma sich ned aussuchen, der ist im jeweiligen Bundesland bzw. Region vorgegeben, den Stomanbieter kann ma frei wählen.
DIe Netzgebühren hab ich amal bei der Netz Niederösterreich angefragt, anteilig pro Kilowattstunde
Ich hab mich natürlich seit dem Awattarscriptl bashseitig etwas weitergebildet und hab eine lustige Funktion implementiert, das Scriptl kalkuliert den Durchschnittswert der Angezeigten Strompreise und das Minimum und bildet den Mittelwert aus Beiden. D.h. Wenn der Strompreis zwischen dem Minimum und der Hälfte zwischen Minimum und Mittelwert ist, schreibt es "billig" dazu.
Weiters kann man die Netzgebühren des Netzanbieters in der Variable $transmissionfee festlegen.
Ausgabe: Datum und Uhrzeit - Strompreis inkl. gebühren - (All in all Strompreis inkl Gebühren und Netzgebühren) - billig steht dabei wenn zwischen niedrig und Mittelwert, oder darunter
Bissl drin rumkalkuliert und paar Werte dazugemankelt, schaut das Ganze so aus:
Downloadfile hier: media/files/getsmartenergyprices.sh.tar.gz
einfach entpacken mit tar -zxvf getsmartenergyprices.sh.tar.gz
Das Scriptl erstellt bei jedem Aufruf 2 temporäre Dateien (die ma ruhig im /tmp/ Filesystem anlegen lassen kann, diese werden immer überschrieben