Skip to content

1.5.2

Choose a tag to compare

@github-actions github-actions released this 07 Apr 07:42

MyEngie v1.5.2

Bug Fix — Trimitere autocitire (button.py)

Fișier modificat: custom_components/myengie/button.py

Problema

Butonul „Trimite index" din Home Assistant trimitea autocitirea cu câmpuri greșite către API-ul Engie (POST /v1/index), ceea ce făcea ca trimiterea să eșueze întotdeauna.

Cauză

Trei câmpuri din payload-ul form-urlencoded erau incorecte:

# Greșit Corect (din APK IndexApi.java)
1 poc poc_number
2 reading_value index
3 inst_detail.get("serial", "") inst_detail.get("serial_number", ...)

Bug 1+2: Engie ignora complet request-ul — câmpurile poc și reading_value nu există în API.
Bug 3: serie_contor era mereu gol, deoarece API-ul divisions returnează serial_number, nu serial.

Validare

Payload-ul corectat a fost confirmat funcțional cu debug_myengie.py --send-index:

POST /v1/index → 200 OK
"Transmiterea indexului s-a realizat cu succes"

Payload:
  poc_number: "<poc>"
  pa: "<pa>"
  installation_number: "<installation_number>"
  division: "gaz"
  index: "<valoare>"
  serie_contor: "<serial_number>"

Modificări

# ÎNAINTE (incorect):
self._serial = inst_detail.get("serial", "")
payload = {
    "poc": self._poc,
    "reading_value": str(index_value),
    "serie_contor": self._serial,
    ...
}

# DUPĂ (corect — conform APK IndexApi.java sendIndex):
self._serial = inst_detail.get("serial_number", inst_detail.get("serie_contor", inst_detail.get("serial", "")))
payload = {
    "poc_number": self._poc,
    "index": str(index_value),
    ...
}
if self._serial:
    payload["serie_contor"] = self._serial

📈 Integrarea în cifre

⭐ Stars 📥 Instalări 🔄 Clone (14z)
6 386 242

Dacă integrarea MyEngie îți este utilă, lasă un ⭐ pe repository — îi ajută și pe alți utilizatori să o descopere.


💛 Dezvoltarea consumă timp și resurse. Dacă vrei să susții proiectul:
Buy Me a Coffee · 💰 GitHub Sponsors