Integration to integrate with media receivers for Telekom MagentaTV.
This project is at a very early stage. Please reports bugs and request features to improve it over time. Feel free to contribute!
- Telekom Media Receiver 401
- Telekom Media Receiver 201
- Autodiscovery of media receivers within the local network
- See current (TV) playing status
- Manual setup of a media receiver via host/ip and port
- Send button Presses to the receiver (remote control via Homeassistant service)
Check out the service
magentatv.send_key
- Configurable listen/advertised address and port used for receiving events (for runing in Docker or NAT situations)
- MediaPlayer controls like play/pause/mute/volume/on/off
- Show the current running channel and program
- Support more device models
- Detect if App (Youtube/Prime/Netflix) is currently active on the receiver
- (Unknwon if possible) Start apps like Youtube/Netflix from Homeassistant
or
- Install HACS
- Add
https://github.com/Xyaren/homeassistant-magentatv
as a custom repository - Restart Home Assistant
- Using the tool of choice open the directory (folder) for your HA configuration (where you find
configuration.yaml
). - If you do not have a
custom_components
directory (folder) there, you need to create it. - In the
custom_components
directory (folder) create a new folder calledhomeassistant-magentatv
. - Download all the files from the
custom_components/homeassistant-magentatv/
directory (folder) in this repository. - Place the files you downloaded in the new directory (folder) you created.
- Restart Home Assistant
In order to receive events from the mediareceivers, the integration needs to create a server listening on port 11223.
Make sure this port is reachable from the receivers. In case of homeassistant running in docker ( except running in host
mode), this requires mapping port 11223 to the outside.
Check out the Configuration section below for configuration related to setting a the correct advertisement address and port in docker scenarios
- Get your Telekom user id
This id is required for paring the integration with your receiver. It therefore has to belong to the same account, the receiver is running on.
- Go to web.magentatv.de/einstellungen/system
- Login
- Copy your
ANID
from the system info Screeenshot
- Configure a receiver
- Detected by auto discovery at your integrations dashboard
- Manually via Add Integration
- Provide your user id from step 1.
- Wait for the paring to finish (No confirmation on the tv neccecary)
- Confirm adding the device and optionally assign it an area within homeassistant
You can control the used port and address used by the integration to receive events from the receivers using the yaml config. In most cases these are not required.
magentatv:
## Telekom user id used as default for configuration flows. Optional.
## Default: None
# user_id: 120049010000000017944901
## Address to listen for UPNP subscription callbacks, must be reachable from the media receivers.
## Default: 0.0.0.0
# listen_address: "0.0.0.0"
## Port for UPNP subscription callbacks, must be reachable from the media receivers.
## For Homeassistant running in docker, this needs to be mapped.
## Default: 11223
# listen_port: 11223
## Address to advertise to receiver for callback. This is auto detected by default and only needs to be overwritten in case of nat/docker setups.
## This can NOT be a dns name
## Default: None
# advertise_address: "10.1.2.3"
## Port to advertise to receiver for callback.
## By default the listen_port is used. This only needs to be overwritten in a port-forwarding/docker situation
## Default: None
# advertise_port: 32211
Thanks for @humbertogontijo from homeassistant-roborock for providing the inspiration to create an integration on my own. Also serving as a reference repository on how to do things.
Also many thanks to @ludeeus for integration_blueprint
If you want to contribute to this please read the Contribution guidelines