Enigma2 receivers integration

It works very well. Thank you :slight_smile:

I removed whole enigma folder and file. but I still got errors:

Logger: homeassistant.components.notify Source: components/notify/__init__.py:255 Integration: Notifications (documentation, issues) First occurred: 1:43:12 PM (1 occurrences) Last logged: 1:43:12 PM Unknown notification service specified

Logger: homeassistant.setup
Source: custom_components/enigma/init.py:95
First occurred: 1:43:12 PM (1 occurrences)
Last logged: 1:43:12 PM

Error during setup of component enigma
Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/setup.py”, line 213, in _async_setup_component
result = await task
File “/config/custom_components/enigma/init.py”, line 95, in async_setup
configured_devices = config[DOMAIN].get(CONF_DEVICES)
KeyError: ‘enigma’

Hi

Show me the contents of the directory custom_components/enigma.

Also, share your configuration file for the enigmas devices only

Thanks

here you go:

total 40
-rw-r--r-- 1 root root  5550 Nov 15 14:19 __init__.py
-rw-r--r-- 1 root root 16768 Nov 15 14:19 media_player.py
-rw-r--r-- 1 root root  4667 Nov 15 14:19 notify.py
drwxr-xr-x 2 root root  4096 Nov 16 13:37 __pycache__

configuration.yaml:
media_player:
  - platform: enigma2
    host: 192.168.1.20
    name: vu
    username: !secret vuplus_user
    password: !secret vuplus_pass
notify:
  - platform: enigma
    host: 192.168.1.20
    port: 80
    name: vu
    username: !secret vuplus_user
    password: !secret vuplus_pass

Hi @pumo
The notify is correct, but the media_player is not :frowning:

The media_player needs to be configured as this

enigma: 
  devices:
    - host: 192.168.1.20
      port: 80
      name: vu
      timeout: 20
      username: !secret vuplus_user
      password: !secret vuplus_pass
      picon: screenshot
1 Like

Many thanks! and stupid me, I had two different enigma settings and I removed right one.
now it works

1 Like

Hi,
I am new here. I am trying to make this integration working but I can’t find the proper path to add enigma files from github. Should I create a folder? I have /home/matt bu there is only a file .profile - should I create a folder /home/matt/.homeassistant/custom_components and copy there the content of enigma folder from github?

\\ip_hassio\config\custom_components\enigma

I am doing something wrong. This is what I get:

Error doing job: Task exception was never retrieved
18:06:55 – loader.py (ERROR)
Error setting up integration notify - received exception
18:06:55 – loader.py (ERROR)
Invalid config for [media_player]: required key not provided @ data['platform']. Got None. (See /config/configuration.yaml, line 14). Please check the docs at https://www.home-assistant.io/integrations/media_player
18:06:43 – config.py (ERROR)

My /config/configuration.yaml file is:

media_player:
  enigma:
    devices:
    - host: 10.10.10.6
    port: 80
    name: dreambox
    timeout: 20
    username: root
    password: password
    picon: picon

notify:
  - platform: enigma
    host: 10.10.10.6
    port: 80
    name: dreambox
    username: root
    password: password

Try like this

enigma:
    devices:
      - host: 10.10.10.6
        port: 80
        name: dreambox
        timeout: 20
        username: root
        password: password
        picon: picon

notify:
  - platform: enigma
    host: 10.10.10.6
    port: 80
    name: dreambox
    username: root
    password: password

Remember - the number of spaces in front of the text on each line is important.

my entry:

enigma: 
  devices:
    - host: 10.0.0.11
      port: 80
      name: Zgemma_salon
      timeout: 20
      picon: picon


notify:
  - platform: enigma
    host: 10.0.0.11
    port: 80
    username: root
    password: your_password_to_enigma
    name: Zgemma
1 Like

Strange things started to happen. Almost all services I had to start manually. Even then, all devices connected to HASS were not accessable from HomeKit (even they were working from HASS Panel).

After running your config I have:

2020-12-12 22:54:41 ERROR (MainThread) [homeassistant.bootstrap] Failed to parse configuration.yaml: Secret password not defined. Activating safe mode

Check @matiaszon reply.
Mine has wrong ident.

I’m trying to use the integration in a scene. but unfortunately, my engima box always toggles between muted and unmuted each time the scene runs. i tried to specify the volume and muted state but that doesn’t help either. any idea how I can set it each time to unmuted?

- id: '1608569567546'
  name: WatchTV
  entities:
    media_player.vuuno4kse:
      source: VOX HD CH
      is_volume_muted: false
      volume_level: 1
      state: 'on'

it looks like the issue is here:

the enigma webif only supports toggling the mute state and the integration doesn’t check and compare the value of mute in the method call and the actual e2ismuted state. would be cool if this would be checked instead of toggled every call.

I have a problem that the intergration of enigma isnt working anymore.
I found the next in my log file:

`2021-01-10 19:18:39 ERROR (MainThread) [homeassistant.components.media_player] enigma2: Error on device update!
Traceback (most recent call last):
File “/usr/local/lib/python3.8/site-packages/urllib3/response.py”, line 401, in _decode
data = self._decoder.decompress(data)
File “/usr/local/lib/python3.8/site-packages/urllib3/response.py”, line 88, in decompress
ret += self._obj.decompress(data)
zlib.error: Error -3 while decompressing data: incorrect header check

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/local/lib/python3.8/site-packages/requests/models.py”, line 753, in generate
for chunk in self.raw.stream(chunk_size, decode_content=True):
File “/usr/local/lib/python3.8/site-packages/urllib3/response.py”, line 576, in stream
data = self.read(amt=amt, decode_content=decode_content)
File “/usr/local/lib/python3.8/site-packages/urllib3/response.py”, line 548, in read
data = self._decode(data, decode_content, flush_decoder)
File “/usr/local/lib/python3.8/site-packages/urllib3/response.py”, line 404, in _decode
raise DecodeError(
urllib3.exceptions.DecodeError: (‘Received response with content-encoding: gzip, but failed to decode it.’, error(‘Error -3 while decompressing data: incorrect header check’))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/src/homeassistant/homeassistant/helpers/entity_platform.py”, line 359, in _async_add_entity
await entity.async_device_update(warning=False)
File “/usr/src/homeassistant/homeassistant/helpers/entity.py”, line 466, in async_device_update
await task
File “/usr/local/lib/python3.8/concurrent/futures/thread.py”, line 57, in run
result = self.fn(*self.args, **self.kwargs)
File “/usr/src/homeassistant/homeassistant/components/enigma2/media_player.py”, line 251, in update
self.e2_box.update()
File “/usr/local/lib/python3.8/site-packages/openwebif/api.py”, line 340, in update
self.sources = self.get_bouquet_sources(
File “/usr/local/lib/python3.8/site-packages/openwebif/api.py”, line 596, in get_bouquet_sources
result = self._call_api(url)
File “/usr/local/lib/python3.8/site-packages/openwebif/api.py”, line 632, in _call_api
response = self.session.get(url)
File “/usr/local/lib/python3.8/site-packages/requests/sessions.py”, line 555, in get
return self.request(‘GET’, url, **kwargs)
File “/usr/local/lib/python3.8/site-packages/requests/sessions.py”, line 542, in request
resp = self.send(prep, **send_kwargs)
File “/usr/local/lib/python3.8/site-packages/requests/sessions.py”, line 697, in send
r.content
File “/usr/local/lib/python3.8/site-packages/requests/models.py”, line 831, in content
self._content = b’’.join(self.iter_content(CONTENT_CHUNK_SIZE)) or b’’
File “/usr/local/lib/python3.8/site-packages/requests/models.py”, line 758, in generate
raise ContentDecodingError(e)
requests.exceptions.ContentDecodingError: (‘Received response with content-encoding: gzip, but failed to decode it.’, error(‘Error -3 while decompressing data: incorrect header check’))`

How can i solve this?

Hi @OneCyrus

Thanks for the feedback.
I never used scenes, normally I use automations and everything is working properly.
I just tried scenes, and I can confirm the problem.
That allowed me to find a bug. I was not populating correctly the media_content_id, media_content_title and the source reference.
I changed the code just now and committed to github.

With this latest release, and using the following scene, everything is working properly.
It changes to the defined channels and adjusts the volume (please note that I removed the reference to the mute state).

In HomeAssistant the mute function is doing what is expected (it only toggles, does not check state).

- id: '1610810971543'
  name: Watch TV
  entities:
    media_player.dreambox_room:
      source: SIC
      volume_level: 1
      state: 'on'

Hi @Dennis_Ticheler

Thanks for the feedback.
Was this working in the past and stopped working now, or it never worked properly ?
Anything changed on the environment ?

Did you upgrade the firmware of the receiver ?

It seems the plugin is not receiving the correct info from the box !

Hi @cinzas

Everything was working fine in the past.
It could be poseble that the problems started after updated the firmware of the receiver.
But how can i solve this?