bisand / node-red-contrib-tibber-api

Node Red module for integrating with Tibber api
MIT License
20 stars 2 forks source link

Detect unstable connections #54

Closed bisand closed 1 year ago

bisand commented 2 years ago

Improvement suggested by @sungtroll in issue #50

If i can suggest improvement is would be add a special settings for users with unstable 4G internet to do someting like: if tibber-feed not receiving data, then check if local internet connection lost as first step. like ping 8.8.8.8 or someting else. Then if lost, wait for local internet connection is back before stopping and restart connection to tibber API if restored connection but not receiving data from tibber API, then disconnect and reconnect to tibber API

This will make it quicker to get the live feed after internet connection is restored

Maybe a test connection to tibber demo account is someting to consider to check if tibber API is working or not. It probably have no restrictions of number of concurrent connections.

Sungtroll commented 2 years ago

I want to mention sometimes but very rearly data is lost between AMS and tibber pulse. More often data is lost between tibber pulse and tibber backend specially if it is sent by 4G router. Maybe tibber should keep sending timestamps with no data or "tibber not receiving data" to let tibber-feed know everything is working fine between tibber and tibberfeed so it dont reconnects because of missing data when the problem is at the other end. Dagfinn is the developer of pulse and he probably can improve the feed if it is necessery.

Some replies i got from dagfinn:

problem: tibber sending duplicate messages. (old reply but duplicates startet again 1. nov 2021, i sent new bug report to dagfinn yesterday)

Dagfinn says Aidon does not send timestamps, tibber must create their own timestams when receiving data from pulse.

original message: Takk, Det var ein bug i backend. Påverka Aidon målarar då dei ikkje har eigne timestamps. Her er litt av problemet at Aidon ikkje har timestamps på dataen sin. Då må vi lage timestamps på pakkane sjølv når dei lande på serveren.

problem lost packets: Dagfinn, recommends using usb power for critical applications because low power from aidon can make pulse unstable

tibber pulse does not buffer data, when it is sent but not received at backend it is lost.

bisand commented 1 year ago

I have done quite a bit of improvements to the reconnect logic in tibber-feed. Closing this as resolved