[Modul] Tibber

Moin,

habe gerade die 1.9.1 rausgebracht, nach dem update müsst ihr wahrscheinlich einmal die Instanz deaktivieren und wieder aktivieren.

1.9.1 größe Änderungen am Tibber_Realtime vorgenommen:

  • die Funktionen CloseID(), OpenID() and UpdateParentIOApiURL() sowie ConfigParentIO() wurden durch GetConfigurationForParent() und UpdateConfigurationForParent() ersetzt.
  • Lokalisierung angepasst, viele Fehler beseitigt,
  • neue Art das Konfigurationsformular zu füllen (konform für den stable-store)
  • es wird geprüft ob die empfangenen Daten zu verarbeiten sind, ansonsten wird der Watchdog gestartet.
  • neuer Status 205 (Zuviele Anfragen erkannt)
  • das Modul erstellt eine UID als Index für Tibber, soll verhindern das verschiedene Heime aus demselben Account die gleiche Indexnummer bekommen @berndj1 bitte mal testen.
  • Im Konfigurationsformular wurde bei der Ersteinrichtung der Heim-ID eine leere Zeile angezeigt.

Mahlzeit.
direkt mal installiert, bekomme aber jetzt sofort beim deaktivieren und aktivieren der Instanz einen Fatal Error:

Fehler beim Übernehmen der Änderungen

Fatal error: Uncaught Error: Call to undefined function str_contains() in /var/lib/symcon/modules/.store/de.treasy79.tibber/libs/functions.php:34
Stack trace:
#0 /var/lib/symcon/modules/.store/de.treasy79.tibber/libs/functions.php(64): Tibber->CallTibber(‚{ „query“: "{vi…‘)
#1 /var/lib/symcon/modules/.store/de.treasy79.tibber/Tibber_Query/module.php(59): Tibber->CheckRealtimeAvailable()
#2 /-(3): Tibber->ApplyChanges()
#3 {main}
thrown in /var/lib/symcon/modules/.store/de.treasy79.tibber/libs/functions.php on line 34
(Code: -32603)

Die Realtime Instanz lässt sich gar nicht mehr öffnen:

image

Und hier noch die Fehler, die direkt beim Installieren des Moduls im Log kommen:

Was hast du für eine symcon version? Bzw welches OS? Da fehlt eine php funktion

Bin weiterhin mit der 6.4 unterwegs…
Wie kann ich ich jetzt wieder zurück?!

Gar nicht, bis ich das um geschrieben habe. Die Funktion gibt es wohl erst seit php8…

so, hab mal eine neue Version hochgeladen. Teste mal bitte

Jup, lüppt wieder. Besten Dank!

Moin Kris,

habe vorhin das Update auf die neue Version gemacht, und vorhin ist dann die Realtime Instanz mal wieder hängengeblieben. Fehler unten. Vielleicht hilft dir das…

25.01.2024, 11:30:59 | FlowHandler          | Kann Daten nicht zur Instanz #38601 weiterleiten: 
Notice: Undefined index: data in /var/lib/symcon/modules/.store/de.treasy79.tibber/Tibber_Realtime/module.php on line 259

Notice: Trying to access array offset on value of type null in /var/lib/symcon/modules/.store/de.treasy79.tibber/Tibber_Realtime/module.php on line 259

Fatal error: Uncaught TypeError: array_key_exists() expects parameter 2 to be array, null given in /var/lib/symcon/modules/.store/de.treasy79.tibber/Tibber_Realtime/module.php:259
Stack trace:
#0 /var/lib/symcon/modules/.store/de.treasy79.tibber/Tibber_Realtime/module.php(168): Tibber_Realtime->ProcessReceivedPayload(Array)
#1 /-(3): Tibber_Realtime->ReceiveData('{"Buffer":"{\\"i...')
#2 {main}
  thrown in /var/lib/symcon/modules/.store/de.treasy79.tibber/Tibber_Realtime/module.php on line 259

Moin,

danke, ich habe den gleichen Fehler erhalten. Leider ist natürlich der Interessante part abgeschnitten. Ich habe gerade meine lokale Version passend gemacht und warte bis der Fehler wieder auftritt

Viele Grüße

1 „Gefällt mir“

Guten Morgen
Die Werte niedrigster und höchster Preis mit den dazu gehörigen Uhrzeit Differenz etc wird für den nächsten Tag ausgegeben.
Um 0 Uhr werden die auf 0 gesetzt das die Felder dann leer sind.
Ist es möglich das die Werte bis neue Werte des nächsten Tages kommen weiter zu erhalten.
Oder die Variablen auf heute und morgen zu verdoppeln?
So das man beide Tage sieht?

Bernd

Moin,

archiviere doch die werte, die kannst du dir ja passend verdichten.

Viele Grüße

Dann habe ich die zwar im Archiv als Stundenwert, aber wie selektiere ich die wieder damit die als niedrigster/höchster heute und morgen Wert rausfischen kann?

Hm, ich glaube eher ich habe dich missverstanden. Ich war in gedanken bei den Heute 0-24 und morgen 0-24. Du meinst aber wahrscheinlich niedrigster/hochstet wert…

Muss ich mir mal anschauen

1 „Gefällt mir“

Moin,

so, nachdem mir Tibber_realtime wieder keine Daten geliefert hat, und mein Debug leider von logrotate vernichtet wurde ( :banghead:) habe ich Version 1.9.4 rausgebracht.

Dort wird geprüft ob im payload ein Array ist, wenn ja, geht es mit der Verarbeitung weiter und wenn nein, kommt ins normale Log ne Fehlermeldung… Zudem wird der Watchdog eher gestartet.

Viele Grüße

Guten Abend,
vielen Dank erstmal für dieses Modul!

Eine Frage habe ich Anhand welcher Werte / Berechnung setzt Tiber die „Aktuelle Preis Level“ Variable und wie kommt der „max. Preis“ und „min.Preis“ Zustande?

Aktuell zeigt es mir max Preis: 934,43 Cent
Min Preis: 8,90 Cent

Den Min.Preis versteh ich aktuell bei mir hier habe ich in der variable Morgen 23 bis 24 Uhr 8,90 Cent stehen, bezüglich der max.Preis Variable habe ich aber auch Variablen die sind im dreistelligen Cent-Bereich, hier würde ich erwarten das der höher Wert genutzt wird.

Moin Daste,
also erst einmal, wie kommst du denn an den Preis von 8.90 Cent!??
Da muss ich wohl ein anderes Tibber haben :wink:

Was das Preis Level angeht, so habe ich für mich daraus geschlossen, dass sich das immer auf den Durchschnitt des aktuellen Tagespreis bezieht. Denn ich hatte schon mal einen Preis von unter 30 Cent der als Hoch eingestuft wurde, an anderen Tagen dann aber wieder als günstig.
Der min/max-Preis wird bei mir immer erst dann gesetzt, wenn die Werte für beide Tage vorhanden sind, und dann habe ich auf diese beiden Tage bezogen jeweils den höchsten und niedrigsten Preis.
Schade ist tatsächlich dass diese am nächsten Tag direkt wieder auf null gesetzt werden, aber das wollte sich Kris glaube ich nochmal ansehen, ob das evtl. anders möglich ist.

Von daher klingt dein beschriebenes Verhalten und besonders die Preise etwas seltsam…

Moin,

Also der „Aktuelle Preis Level“ ist eine Funktion die Tibber zur Verfügung stellt und eigenständig aus den historischen Daten berechnet. Da nehme ich keinen Einfluss und zeige die Werte 1:1 an.

max. Preis und min.Preis hingegen nehme ich aus den persönlichen Tibber Daten. Es wird im Preisarray nach dem geringsten Wert/Zeit gesucht (min Preis) oder eben nach dem höchsten Wert/Zeit(max preis).

Die Berechnung ist aber suboptimal, da die werte um 0 Uhr zurückgesetzt werden. Im Git habe ich gestern Abend bereits eine neue Version eingecheckt und teste die gerade, muss aber auf genügend Daten warten.

Jedenfalls wird wird der min/max Preis für heute und morgen angezeigt.

wie geht das :scream: 934,43 Cent?? Das kommt mir komisch vor, weil dreistelliger max preis ist schon arg viel. Oder ist die Währung in Rubel ? :wink:

Das Preisarray kann man sich bspw wie folgt ausgeben lassen:

$Array=json_decode(TIBBER_PriceArray(InstanzID-von-Tibber),true);
print_r($Array);

Oder Du aktivierst die hier
image
und suchst die die min/max manuell aus:

Im ersten Bild wäre das Variable: „min. Preis für heute“ und „niedrigster Preis am diesem Zeitpunkt für heute“

Viele Grüße

Ich zitiere dazu einfach mal die Tibber-Doku:

PriceLevel

Price level based on trailing price average (3 days for hourly values and 30 days for daily values)

NORMAL 	
The price is greater than 90 % and smaller than 115 % compared to average price.

CHEAP 	
The price is greater than 60 % and smaller or equal to 90 % compared to average price.

VERY_CHEAP 	
The price is smaller or equal to 60 % compared to average price.

EXPENSIVE 	
The price is greater or equal to 115 % and smaller than 140 % compared to average price.

VERY_EXPENSIVE 	
The price is greater or equal to 140 % compared to average price.

Ich nutze zwar das Modul, frage die API aber auch immer noch selbst ab, weil ich noch zusätzliche Dinge mache und in einigen Punkten etwas flexibler bin.
Was den min/max Preis angeht, mache ich es für mich so, dass ich immer nur die zukünftigen Werte betrachte. Mich interessiert nicht, ob der Preis heute Morgen um 5 Uhr besonders niedrig war, mich interessiert, was der niedrigste/höchste Preis ab jetzt ist. Von daher betrachte ich immer nur die Preise von jetzt bis in die Zukunft (soweit sie verfügbar sind) und speichere sie mit dem Zeitstempel der jeweiligen Stunde, die es betrifft.

Sag’ mal,
sind das bei dir im Modul die Preise ohne Steuern oder die Endpreise?
Kommt mir aktuell sehr niedrig vor?

Och so uninteressant ist das gar nicht, wenn ich morgens ein volles auto habe, möchte ich wissen was mich der spass gekostet hat :grin:

Die Endpreise… stimmen soweit mit app überein, wobei ich es bei der app funmeliger finde da nachkommastellen nur in der graph über den tooltipp zu sehen sind