Skip to main content

wi1-bot

A Discord bot to integrate Radarr & Sonarr, allowing commands like !addmovie and !downloads.

Usage

  1. Copy config.yaml.template to $XDG_CONFIG_HOME/wi1-bot/config.yaml and set the necessary values.
  2. pip install wi1-bot (or from source: pip install git+https://github.com/wthueb/wi1-bot.git)
  3. wi1-bot

Development

  1. git clone https://github.com/wthueb/wi1-bot.git
  2. cd wi1-bot/
  3. pip install -e .[dev]
  4. 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?
  • 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
  • !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)

Source distribution for wi1-bot 3.7.1
File Size Uploaded
wi1_bot-3.7.1.tar.gz 507.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for wi1-bot 3.7.1
File Interpreter ABI Platform
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}

Release history Release notifications | RSS feed

This release

3.7.1 This release

2 release files

3.7.0

2 release files

3.6.0

2 release files

3.5.0

2 release files

3.4.0

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.1.7

2 release files

3.1.6

2 release files

3.1.5

2 release files

3.1.4

2 release files

3.1.3

2 release files

3.1.2

2 release files

3.1.1

2 release files

3.1.0

2 release files

3.0.2

2 release files

3.0.1

2 release files

3.0.0

2 release files

2.0.20

2 release files

2.0.18

2 release files

2.0.17

2 release files

2.0.16

2 release files

2.0.15

2 release files

2.0.9

2 release files

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.4.13

2 release files

1.4.12

2 release files

1.4.11

2 release files

1.4.10

2 release files

1.4.9

2 release files

1.4.8

2 release files

1.4.7

2 release files

1.4.6

2 release files

1.4.5

2 release files

1.4.4

2 release files

1.4.3

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.14

2 release files

1.3.13

2 release files

1.3.12

2 release files

1.3.11

2 release files

1.3.10

2 release files

1.3.9

2 release files

1.3.8

2 release files

1.3.7

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3

3 release files

1.2.24

2 release files

1.2.23

2 release files

1.2.22

2 release files

1.2.21

2 release files

1.2.20

2 release files

1.2.18

2 release files

1.2.17

2 release files

1.2.16

2 release files

1.2.14

2 release files

1.2.11

2 release files

1.2.10

2 release files

1.2.9

2 release files

1.2.8

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page