mak-gitdev / HA_enoceanmqtt

Home Assistant wrapper for enocean-mqtt (https://github.com/embyt/enocean-mqtt)
GNU General Public License v3.0
54 stars 14 forks source link

Addon installed fine but cannot run #122

Open mak-gitdev opened 6 months ago

mak-gitdev commented 6 months ago

The problem

https://community.home-assistant.io/t/enocean-with-ha-enoceanmqtt/491606/46

What type of installation are you running?

Addon

What version of HA_enoceanmqtt has the issue?

0.1.28-1

What was the last working version of HA_enoceanmqtt?

No response

What type of Home Assitant installation are you running?

None

Anything in the logs that might be useful to solve the issue? (Strongly recommended if applicable)

s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
Preparing to start…
Retrieved devices file: /config/enoceanmqtt.devices
use_dev_name_in_entity is USER-DEFINED (false)
Starting EnOceanMQTT…
/usr/lib/python3.11/html/parser.py:170: XMLParsedAsHTMLWarning: It looks like you’re parsing an XML document using an HTML parser. If this really is an HTML document (maybe it’s XHTML?), you can ignore or filter this warning. If it’s XML, you should know that using an XML parser will be more reliable. To parse this document as XML, make sure you have the lxml package installed, and pass the keyword argument features="xml" into the BeautifulSoup constructor.
k = self.parse_starttag(i)
2024-01-26 15:33:16,388 INFO: Logging to file: /config/enoceanmqtt.log
2024-01-26 15:33:16,389 INFO: Loading config file /data/enoceanmqtt.conf
2024-01-26 15:33:16,391 DEBUG: Global config: {‘enocean_port’: ‘/dev/ttyUSB0’, ‘log_packets’: ‘true’, ‘overlay’: ‘HA’, ‘db_file’: ‘/data/enoceanmqtt_db.json’, ‘mapping_file’: ‘’, ‘ha_dev_name_in_entity’: ‘false’, ‘mqtt_discovery_prefix’: ‘homeassistant/’, ‘mqtt_host’: ‘192.168.1.211’, ‘mqtt_port’: ‘1883’, ‘mqtt_client_id’: ‘enocean_gateway’, ‘mqtt_keepalive’: ‘60’, ‘mqtt_prefix’: ‘enoceanmqtt/’, ‘mqtt_user’: ‘XXX-XX’, ‘mqtt_pwd’: ‘*****’, ‘mqtt_debug’: ‘true’}
2024-01-26 15:33:16,469 INFO: Selected overlay : Home Assistant
2024-01-26 15:33:17,573 INFO: Mapping file correctly read: /app/enocean-mqtt/enoceanmqtt/overlays/homeassistant/mapping.yaml
2024-01-26 15:33:17,574 INFO: Device database /data/enoceanmqtt_db.json correctly read/created
Exception ignored in: <function Client.del at 0x7f7d982e80>
Traceback (most recent call last):
File “/app/venv/lib/python3.11/site-packages/paho_mqtt-2.0.0rc2-py3.11.egg/paho/mqtt/client.py”, line 850, in del
self._reset_sockets()
File “/app/venv/lib/python3.11/site-packages/paho_mqtt-2.0.0rc2-py3.11.egg/paho/mqtt/client.py”, line 1083, in _reset_sockets
self._sock_close()
File “/app/venv/lib/python3.11/site-packages/paho_mqtt-2.0.0rc2-py3.11.egg/paho/mqtt/client.py”, line 1069, in _sock_close
if not self._sock:
^^^^^^^^^^
AttributeError: ‘Client’ object has no attribute ‘_sock’
Traceback (most recent call last):
File “/app/venv/bin/enoceanmqtt”, line 33, in
sys.exit(load_entry_point(‘enocean-mqtt’, ‘console_scripts’, ‘enoceanmqtt’)())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/enocean-mqtt/enoceanmqtt/enoceanmqtt.py”, line 121, in main
com = HACommunicator(conf, sensors)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/app/enocean-mqtt/enoceanmqtt/overlays/homeassistant/ha_communicator.py”, line 74, in init
super().init(config, sensors)
File “/app/enocean-mqtt/enoceanmqtt/communicator.py”, line 43, in init
self.mqtt = mqtt.Client(client_id=client_id)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Client.init() missing 1 required positional argument: ‘callback_api_version’
s6-rc: info: service legacy-services: stopping
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped


### Additional information

_No response_
mak-gitdev commented 6 months ago

The issue comes from paho-mqtt. As the version is not indicated during installation of paho-mqtt, the latest version is used. Unfortunately, this latest version of paho-mqtt (paho-mqtt-2.0.0rc2) breaks enoceanmqtt.

The version will be specified when installing required external packages.