wi1-bot
A Discord bot to integrate Radarr & Sonarr, allowing commands like !addmovie and !downloads.
Usage
- Copy
config.yaml.templateto$XDG_CONFIG_HOME/wi1-bot/config.yamland set the necessary values. pip install wi1-bot(or from source:pip install git+https://github.com/wthueb/wi1-bot.git)wi1-bot
Development
git clone https://github.com/wthueb/wi1-bot.gitcd wi1-bot/pip install -e .[dev]pre-commit install
Requires Python >=3.12.
TODO
- use seerr for search/requests
- !link discord user to seerr user
- fix basedpyright errors, avoiding ignore comments where possible
- multiple transcode workers
- main server instance (as part of the existing webhook server, rename to api?). core app wouldn't be running transcoder anymore
- worker nodes that point at the main server instance and use REST calls to get jobs and update job statuses
- separate docker image
- configure transcoding settings for each profile on each instance
- if job fails, retry once on every instance before error notification
- figure out qsv codecs
- also maybe software encoders?
- maybe check languages and things on new downloads via webhook
- notify on manual import required?
- transcode avis
- integration testing
- web dashboard? django i guess?
- transcode queue, transcode progress, quotas
- reactivity would be nice, maybe htmx/alpinejs?
- ffmpeg filters for deinterlacing, scaling
- have config.discord.users be a dict with 'quotas' and 'name' for *arr tags
- Better pushover notifications
- Failures for pretty much everything
- Notifications for grabs/downloads of personal watchlist
- Tag user who added movie when it's downloaded
- Would replace Radarr/Sonarr's Discord webhooks
- !notify <query> to also be tagged when a movie/show someone else added is downloaded
- react to "added movie/show" instead of having to !notify
- react to notification to stop notifications
- if user tries to add movie that's already present, add them to list to notify
- Would require a DB; don't use tags as those are to strictly track quotas
- DB is useful for caching other information as well
- Use Discord slash commands instead of normal text commands
- This is difficult/impossible currently, can't have "conversation" with slash commands
- Enforce quotas
- !linktmdb
- !rate / !ratings (https://developers.themoviedb.org/3/movies/rate-movie)
- !movierec based off of ratings and similar-to-user ratings?
- https://towardsdatascience.com/the-4-recommendation-engines-that-can-predict-your-movie-tastes-109dc4e10c52
- or just use TMDB's API to get recommendations (if that's possible?)
- !movieinfo showing user/public ratings and other general info (runtime, cast, director)
- use TMDB API to get movie metadata
- if movie isn't on Radarr, react to message to add it?
- Tautulli API (get_history) to show who has already seen the movie
- User leaderboard
- movies/shows added, Tautulli watch counts
Metadata
Release files for wi1-bot 3.7.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wi1_bot-3.7.1.tar.gz | 507.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wi1_bot-3.7.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 548.7 kB
Release files / wi1_bot-3.7.1.tar.gz
| Download URL | wi1_bot-3.7.1.tar.gz |
|---|---|
| Size | 507.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
16fa6708f214af900901c817eed733897ec8a702ba682d90ef261eb5eab2349f
|
|
BLAKE2b-256 checksum How to use checksums |
47a73ed2271b06e311a63da4dc5dfb11d67f15fc0183a8bbc5d63cbae725b6fb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / wi1_bot-3.7.1-py3-none-any.whl
| Download URL | wi1_bot-3.7.1-py3-none-any.whl |
|---|---|
| Size | 40.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ddab4de604f2559c40fe136dda6617b35b4c7865be574ea72cf36dfee6525ee2
|
|
BLAKE2b-256 checksum How to use checksums |
920e5820298fe1bbedfe9e09c4dd5203a79cca5fcd11da0b1a1599fb644c45af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|