Enedisgateway2mqtt

Merci pour ta confirmation @ClassicRed .

Du coup, depuis que j’ai migré sur MyElectricalData (Version : 0.8.8-dev), l’addon bloque au chargement de la configuration.
Quelqu’un a déjà eu ce problème ?

2022-12-03 09:36:49.726 -     INFO :  LOADING CONFIGURATION...
2022-12-03 09:36:49.727 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 09:36:49.727 -     INFO :  22149782812123
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1900, in _execute_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 736, in do_execute
    cursor.execute(statement, parameters)
sqlite3.OperationalError: no such column: usage_points.consentement_expiration
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/app/main.py", line 46, in <module>
    DB.set_usage_point(usage_point_id, data)
  File "/app/models/database.py", line 205, in set_usage_point
    usage_points = self.session.scalars(query).one_or_none()
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/orm/session.py", line 1771, in scalars
    return self.execute(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/orm/session.py", line 1712, in execute
    result = conn._execute_20(statement, params or {}, execution_options)
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1705, in _execute_20
    return meth(self, args_10style, kwargs_10style, execution_options)
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/sql/elements.py", line 333, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1572, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1943, in _execute_context
    self._handle_dbapi_exception(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 2124, in _handle_dbapi_exception
    util.raise_(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/util/compat.py", line 208, in raise_
    raise exception
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1900, in _execute_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 736, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: usage_points.consentement_expiration
[SQL: SELECT usage_points.usage_point_id, usage_points.name, usage_points.cache, usage_points.consumption, usage_points.consumption_detail, usage_points.production, usage_points.production_detail, usage_points.consumption_price_base, usage_points.consumption_price_hc, usage_points.consumption_price_hp, usage_points.production_price, usage_points.offpeak_hours_0, usage_points.offpeak_hours_1, usage_points.offpeak_hours_2, usage_points.offpeak_hours_3, usage_points.offpeak_hours_4, usage_points.offpeak_hours_5, usage_points.offpeak_hours_6, usage_points."plan", usage_points.refresh_addresse, usage_points.refresh_contract, usage_points.token, usage_points.progress, usage_points.progress_status, usage_points.enable, usage_points.consentement_expiration, usage_points.call_number, usage_points.quota_reached, usage_points.quota_limit, usage_points.quota_reset_at, usage_points.last_call, usage_points.ban, usage_points.consumption_max_date, usage_points.consumption_detail_max_date, usage_points.production_max_date, usage_points.production_detail_max_date 
FROM usage_points 
WHERE usage_points.usage_point_id = ?]
[parameters: ('22149782812123',)]
(Background on this error at: https://sqlalche.me/e/14/e3q8)
[09:36:50] FATAL: The app has crashed. Are you sure you entered the correct config options?

Voici ma conf:

cycle: 14400 
debug: true
wipe_influxdb: false
home_assistant:
  enable: true
  discovery: true
  discovery_prefix: homeassistant
influxdb:
  enable: true
  hostname: influxdb
  port: 8086
  token: token:token
  org: "-"
  bucket: "DATABASE/RETENTION"
  asynchronous: "false"
mqtt:
  enable: true
  hostname: momo
  port: 1883
  username: "test"
  password: "test"
  prefix: myelectricaldata
  client_id: myelectricaldata 
  retain: true
  qos: 0
myelectricaldata:
  "22149782812540":
    enable: "true"
    token: 1XUPTOKEN
    name: "Maison"
    addresses: "true"
    cache: "true"
    consumption: "true"
    consumption_detail: "true"
    consumption_price_base: "0.1679" 
    consumption_price_hc: "0.1422" 
    consumption_price_hp: "0.1769" 
    consumption_max_date: "2021-07-03"
    consumption_detail_max_date: "2021-07-03"
    offpeak_hours_0: 01H36-8H06;12H06-13H36 # LUNDI
    offpeak_hours_1: 01H36-8H06;12H06-13H36 # MARDI
    offpeak_hours_2: 01H36-8H06;12H06-13H36 # MERCREDI
    offpeak_hours_3: 01H36-8H06;12H06-13H36 # JEUDI
    offpeak_hours_4: 01H36-8H06;12H06-13H36 # VENDREDI
    offpeak_hours_5: 01H36-8H06;12H06-13H36 # SAMEDI
    offpeak_hours_6: 01H36-8H06;12H06-13H36 # DIMANCHE
    plan: HC/HP
    production: "false"
    production_detail: "false"
    production_price: "0.0"
    production_max_date: "2021-06-01"
    production_detail_max_date: "2021-06-01"
    refresh_addresse: "false"
    refresh_contract: "false"

même souci que Floww77

tu es en HC/HP ou tarif de base ?

Donc pas obligatoire? Je me souviens d’avoir des soucis sans guillemets…

Je voix un soucis avec ton bdd, est-ce que t’as accès pour voir si tout est bon?

tarif de BASE

2022-12-03 10:00:16.415 -     INFO :   Success
2022-12-03 10:00:16.717 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.717 -     INFO :  RUN IN PRODUCTION MODE
2022-12-03 10:00:16.718 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.723 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.724 -     INFO : ▌│█║▌║▌║  __  __         _____  _              _          _               _  ____          _           ║▌║▌║█│▌
2022-12-03 10:00:16.724 -     INFO : ▌│█║▌║▌║ |  \/  | _   _ | ____|| |  ___   ___ | |_  _ __ (_)  ___   __ _ | ||  _ \   __ _ | |_   __ _  ║▌║▌║█│▌
2022-12-03 10:00:16.725 -     INFO : ▌│█║▌║▌║ | |\/| || | | ||  _|  | | / _ \ / __|| __|| '__|| | / __| / _` || || | | | / _` || __| / _` | ║▌║▌║█│▌
2022-12-03 10:00:16.725 -     INFO : ▌│█║▌║▌║ | |  | || |_| || |___ | ||  __/| (__ | |_ | |   | || (__ | (_| || || |_| || (_| || |_ | (_| | ║▌║▌║█│▌
2022-12-03 10:00:16.726 -     INFO : ▌│█║▌║▌║ |_|  |_| \__, ||_____||_| \___| \___| \__||_|   |_| \___| \__,_||_||____/  \__,_| \__| \__,_| ║▌║▌║█│▌
2022-12-03 10:00:16.726 -     INFO : ▌│█║▌║▌║          |___/                                                                                ║▌║▌║█│▌
2022-12-03 10:00:16.726 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.727 -     INFO : ▌│█║▌║▌║                                      VERSION : 0.8.0-dev                                      ║▌║▌║█│▌
2022-12-03 10:00:16.727 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.727 -     INFO :  Display configuration :
2022-12-03 10:00:16.728 -     INFO :    cycle: 14400
2022-12-03 10:00:16.728 -     INFO :    debug: True
2022-12-03 10:00:16.728 -     INFO :    wipe_influxdb: False
2022-12-03 10:00:16.728 -     INFO :    home_assistant:
2022-12-03 10:00:16.729 -     INFO :      enable: True
2022-12-03 10:00:16.729 -     INFO :      discovery: True
2022-12-03 10:00:16.729 -     INFO :      discovery_prefix: homeassistant
2022-12-03 10:00:16.730 -     INFO :    mqtt:
2022-12-03 10:00:16.730 -     INFO :      enable: True
2022-12-03 10:00:16.730 -     INFO :      hostname: core-mosquitto
2022-12-03 10:00:16.731 -     INFO :      port: 1883
2022-12-03 10:00:16.731 -     INFO :      username: monuser
2022-12-03 10:00:16.731 -     INFO :      password: ** hidden **
2022-12-03 10:00:16.732 -     INFO :      prefix: myelectricaldata
2022-12-03 10:00:16.732 -     INFO :      client_id: myelectricaldata
2022-12-03 10:00:16.732 -     INFO :      retain: True
2022-12-03 10:00:16.733 -     INFO :      qos: 0
2022-12-03 10:00:16.733 -     INFO :    myelectricaldata:
2022-12-03 10:00:16.733 -     INFO :      PDL:
2022-12-03 10:00:16.734 -     INFO :        enable: true
2022-12-03 10:00:16.734 -     INFO :        token: ** hidden **
2022-12-03 10:00:16.734 -     INFO :        name: Maison
2022-12-03 10:00:16.735 -     INFO :        addresses: true
2022-12-03 10:00:16.735 -     INFO :        cache: true
2022-12-03 10:00:16.735 -     INFO :        consumption: true
2022-12-03 10:00:16.736 -     INFO :        consumption_detail: true
2022-12-03 10:00:16.736 -     INFO :        consumption_price_base: 0.1303
2022-12-03 10:00:16.736 -     INFO :        consumption_max_date: 2021-06-01
2022-12-03 10:00:16.737 -     INFO :        consumption_detail_max_date: 2021-06-01
2022-12-03 10:00:16.737 -     INFO :        plan: BASE
2022-12-03 10:00:16.737 -     INFO :        production: false
2022-12-03 10:00:16.738 -     INFO :        production_detail: false
2022-12-03 10:00:16.738 -     INFO :        production_price: 0.0
2022-12-03 10:00:16.738 -     INFO :        production_max_date: 2021-06-01
2022-12-03 10:00:16.738 -     INFO :        production_detail_max_date: 2021-06-01
2022-12-03 10:00:16.739 -     INFO :        refresh_addresse: false
2022-12-03 10:00:16.739 -     INFO :        refresh_contract: false
2022-12-03 10:00:16.739 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.740 -     INFO :  Check config.yaml :
2022-12-03 10:00:16.740 -     INFO :   => Config valid
2022-12-03 10:00:16.745 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.746 -     INFO :  LOADING CONFIGURATION...
2022-12-03 10:00:16.746 -     INFO : ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ◦ ❖ ◦ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
2022-12-03 10:00:16.746 -     INFO :  19881186561051
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1900, in _execute_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 736, in do_execute
    cursor.execute(statement, parameters)
sqlite3.OperationalError: no such column: usage_points.consentement_expiration
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "/app/main.py", line 46, in <module>
    DB.set_usage_point(usage_point_id, data)
  File "/app/models/database.py", line 205, in set_usage_point
    usage_points = self.session.scalars(query).one_or_none()
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/orm/session.py", line 1771, in scalars
    return self.execute(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/orm/session.py", line 1712, in execute
    result = conn._execute_20(statement, params or {}, execution_options)
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1705, in _execute_20
    return meth(self, args_10style, kwargs_10style, execution_options)
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/sql/elements.py", line 333, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1572, in _execute_clauseelement
    ret = self._execute_context(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1943, in _execute_context
    self._handle_dbapi_exception(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 2124, in _handle_dbapi_exception
    util.raise_(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/util/compat.py", line 208, in raise_
    raise exception
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1900, in _execute_context
    self.dialect.do_execute(
  File "/usr/local/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 736, in do_execute
    cursor.execute(statement, parameters)
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such column: usage_points.consentement_expiration
[SQL: SELECT usage_points.usage_point_id, usage_points.name, usage_points.cache, usage_points.consumption, usage_points.consumption_detail, usage_points.production, usage_points.production_detail, usage_points.consumption_price_base, usage_points.consumption_price_hc, usage_points.consumption_price_hp, usage_points.production_price, usage_points.offpeak_hours_0, usage_points.offpeak_hours_1, usage_points.offpeak_hours_2, usage_points.offpeak_hours_3, usage_points.offpeak_hours_4, usage_points.offpeak_hours_5, usage_points.offpeak_hours_6, usage_points."plan", usage_points.refresh_addresse, usage_points.refresh_contract, usage_points.token, usage_points.progress, usage_points.progress_status, usage_points.enable, usage_points.consentement_expiration, usage_points.call_number, usage_points.quota_reached, usage_points.quota_limit, usage_points.quota_reset_at, usage_points.last_call, usage_points.ban, usage_points.consumption_max_date, usage_points.consumption_detail_max_date, usage_points.production_max_date, usage_points.production_detail_max_date 
FROM usage_points 
WHERE usage_points.usage_point_id = ?]
[parameters: ('monPDL',)]
(Background on this error at: https://sqlalche.me/e/14/e3q8)
[10:00:16] FATAL: The app has crashed. Are you sure you entered the correct config options?

Salut

Ça, ça ressemble à un souci de syntaxe/d’indentation yaml…
Compare finement ton fichier et celui de l’exemple…

C’est une erreur SQL…

Je suis parti de l’exemple disponible sur git.

OK pas vu sur mon téléphone :stuck_out_tongue_winking_eye:

1 « J'aime »

Est-ce que tá smigré d’une ancienne version (enedisgateway2mqtt)?

oui, j’étais sur l’ancienne version

t’as suivi les instructons de m4dm4rtigan?
edit:

Si tu veut tester la 0.8.0-dev, et eviter de perdre des données, tu fait :

Arrête l’integration
Backup le fichier enedisgateway.db
Rename l’actuel en enedisgateway.db.wait
Migre en 0.8.0-dev, attention le fichier de config à changé et j’ai commencer à edit le readme.md 5 sur la branche 0.8.0 si tu veut plus d’info.
Démarre en 0.8.0-dev pour init la le nouveau cache
Arrête l’integration
Rename le enedisgateway.db.wait en enedisgateway.db
Re-lance l’intégration, il va migrer les anciennes données dans le nouveau cache.
Et normalement tt est bon (dans le cochon) !
Ah oui et sur la 0.8.0, la nouvelle passerelle est https://myelectricaldata.fr/ 8.
Tu doit donc refaire un consentement sur cette passerelle (ca n’impactera pas le fonctionnement de l’ancienne)

non, j’ai fait ce qui était indiqué sur git:

### [0.8.0] - 2022-11-XX

#### BREAKING CHANGE

Il est nécessaire de refaire vos consentements sur MyElectricalData.fr

Il est nécessaire de reprendre le nouveau "template" du config.yaml

J’interprète que t’as jamais migré de enedisgateway2mqtt > myelectricadata ?

moi pareil j’ai pas eu le temps de faire cela car quand j’ai lancé l’app ce matin elle était passée sur la nouvelle version…et puis c’était pour la version dev, non ?
J’ai pourtant l’impression que ça a bien migré tout dans le nouveau cache…j’ai vu une ligne dans le journal de ce type au démarrage.

C’est ce que j’essaie de faire avec la MAJ qui était proposée dans HA.
Mais la nouvelle version n’a jamais démarré pour le moment.

OK, donc… un soucis avec un de tables, si tu peut connecter avec la bdd comme moi, on peut voir comment le réparer car recommencer de 0 prends du temps pour recups tout les données

c’est quoi la procédure, j’ai pas tout saisi?