A Telegram Bot to stream content on your smart TV
Project description
smart-tv-telegram
A Telegram Bot to stream content on your smart TV (also Chromecast, FireTV and other UPnP device)
Demonstration video
Feature
- Streaming, the bot will not have to download the entire file before playing it on your device
- You can play anything if your device has the right codec
- You can streaming on any device that supports UPnP (AVTransport)
- Chromecast, Vlc (telnet api) and Kodi (xbmc http api) support
- Streaming over HTTP
Note: Chromecast (1st, 2nd and 3rd Gen.) only supports H.264 and VP8 video codecs
Note: Most LG TVs with WebOS have an incorrect UPnP implementation, throw it in the trash and buy a new TV
How-to setup
Make sure you have an updated version of python, only the latest version will be supported
(currently it also works on Python 3.6)
- Download the repository
- Install python dependencies from requirements.txt
- Copy config.ini.example to config.ini
- Edit config.ini
git clone https://github.com/andrew-ld/smart-tv-telegram
cd smart-tv-telegram
python3 setup.py sdist bdist_wheel
python3 -m pip install dist/*.whl
cp config.ini.example config.ini
nano config.ini
smart_tv_telegram -c config.ini -v 1
How-to setup (Docker)
- Copy config.ini.example to config.ini
- Edit config.ini
- Build Docker
- Start Docker
cp config.ini.example config.ini
nano config.ini
docker image build -t smart-tv-telegram:latest .
docker run --network host -v "$(pwd)/config.ini:/app/config.ini:ro" -d smart-tv-telegram:latest
Troubleshooting
Q: My Firewall block upnp and broadcasting, how can use kodi without it
A: Set xbmc_enabled
to 1
and add your kodi device to xbmc_devices
list
Q: What is the format of xbmc_devices
A: A List of Python Dict with host
, port
, (and optional: username
and password
)
example: [{"host": "192.168.1.2", "port": 8080, "username": "pippo", "password": "pluto"}]
Q: How-To control vlc from this bot
A: set vlc_enabled
to 1
and add your vlc device to vlc_devices
list
Q: What is the format of vlc_devices
A: A List of Python Dict with host
, port
, (and optional: password
)
example: [{"host": "127.0.0.1", "port": 4212, "password": "123"}]
Q: How-To enable upnp on my device that use kodi
A: follow this guide (you should enable remote control)
Q: How do I get a token?
A: From @BotFather
Q: How do I set up admins?
A: You have to enter your user_id, there are many ways to get it, the easiest is to use @getuseridbot
Q: How do I get an app_id and app_hash?
A: https://core.telegram.org/api/obtaining_api_id#obtaining-api-id
Q: The video keeps freezing
A: Check the video bitrate, this bot supports maximum ~4.5Mb/s
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for smart_tv_telegram-1.1.1.dev0.linux-x86_64.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4adcb6d2792c97881958e26d3c1faaf8c7ecd535c44c3bc9a4ec994d2a4d6240 |
|
MD5 | 60f6ce8361831b48955ed8e24e128979 |
|
BLAKE2b-256 | cc71edfb51d045f9af7a25ff354f228b7e574dae90f5112cfb42cd496da8e8f4 |
Hashes for smart_tv_telegram-1.1.1.dev0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d9dfe95bb5dbf1f342699576d58eb4523b5a7193034225fdd9a66f509ea39095 |
|
MD5 | 778c56550d498afb689245e4879e81e7 |
|
BLAKE2b-256 | 37a5a44a11312c78c76b3869efde4953cb37ed1bdec2b70b57990f21249a2a07 |