|
1 | | -# Plex Search Search Bot Simple [](https://github.com/thomasasfk/PlexSearchBotSimple/actions/workflows/python-tests.yml) |
2 | | - |
3 | | -A Telegram bot that searches Jackett indexers and uploads to rTorrent. Despite the repository name, this has no Plex integration. |
4 | | - |
5 | | -## Commands |
6 | | - |
7 | | -| Command | Description | Example | Access Level | |
8 | | -|---------|-------------|---------|--------------| |
9 | | -| `/auth [password]` | Authenticate with the bot | `/auth mypassword` | Anyone | |
10 | | -| `/search [term]` | Search for content | `/search arcane` | Authenticated Users | |
11 | | -| `/get[id]` | Download from a search result | `/get14492` | Authenticated Users | |
12 | | -| `/download [magnet]` | Download using magnet link | `/download magnet:?xt=...` | Authenticated Users | |
13 | | -| `/space` | Check home directory size | `/space` | Authenticated Users | |
14 | | -| `/spaceforce` | Force refresh space calculation | `/spaceforce` | Authenticated Users | |
15 | | -| `/sh [command]` | Execute shell commands | `/sh ls -la` | Admins | |
16 | | - |
17 | | -## Setup |
18 | | - |
19 | | -1. **Install Python 3.9.2** (pyenv recommended) |
20 | | - |
21 | | -2. **Configure Environment** |
22 | | - ```bash |
23 | | - cp .env.example .env |
24 | | - # Edit .env with your settings |
25 | | - ``` |
26 | | - |
27 | | -3. **Install Requirements** |
28 | | - ```bash |
29 | | - python -m venv .venv |
30 | | - . .venv/bin/activate |
31 | | - python -m pip install -r requirements.txt |
32 | | - ``` |
33 | | - |
34 | | -4. **Run** |
35 | | - ```bash |
36 | | - python main.py |
37 | | - ``` |
38 | | - |
39 | | -## Environment Configuration |
40 | | - |
41 | | -Create a `.env` file with the following variables: |
42 | | - |
43 | | -```bash |
44 | | -# Bot configuration |
45 | | -PASSWORD=your_password_here |
46 | | -TELEGRAM_TOKEN=1234567890:ABCdefGHIjklMNOpqrsTUVwxyz123456 |
47 | | -ADMINS=123456789 |
48 | | - |
49 | | -# Jackett configuration |
50 | | -JACKETT_API_KEY=abcdef1234567890abcdef1234567890 |
51 | | -JACKETT_URL=http://your.jackett.host:port |
52 | | -JACKETT_URL_SEARCH=/your/jackett/api/v2.0/indexers/all/results |
53 | | - |
54 | | -# ruTorrent configuration |
55 | | -RU_TORRENT_URL=https://your.rutorrent.host/user/rutorrent/php/addtorrent.php |
56 | | -RU_TORRENT_TOKEN=base64_encoded_credentials |
57 | | -``` |
58 | | - |
59 | | -| Variable | Description | |
60 | | -|----------|-------------| |
61 | | -| `PASSWORD` | Bot authentication password | |
62 | | -| `TELEGRAM_TOKEN` | Get from [@BotFather](https://t.me/botfather) | |
63 | | -| `ADMINS` | Your Telegram user ID for admin access | |
64 | | -| `JACKETT_API_KEY` | Found in Jackett dashboard | |
65 | | -| `JACKETT_URL` | Your Jackett instance URL with port | |
66 | | -| `JACKETT_URL_SEARCH` | Jackett API endpoint path | |
67 | | -| `RU_TORRENT_URL` | Full path to ruTorrent addtorrent.php | |
| 1 | +mnvm, its `/# Plex Search Search Bot Simple [](https://github.com/thomasasfk/PlexSearchBotSimple/actions/workflows/python-tests.yml) |
| 2 | + |
| 3 | +A Telegram bot that searches Jackett indexers and uploads to rTorrent. Despite the repository name, this has no Plex integration. |
| 4 | + |
| 5 | +## Commands |
| 6 | + |
| 7 | +| Command | Description | Example | Access Level | |
| 8 | +|---------|-------------|---------|--------------| |
| 9 | +| `/auth [password]` | Authenticate with the bot | `/auth mypassword` | Anyone | |
| 10 | +| `/search [term]` | Search for content | `/search arcane` | Authenticated Users | |
| 11 | +| `/get[id]` | Download from a search result | `/get14492` | Authenticated Users | |
| 12 | +| `/download [magnet]` | Download using magnet link | `/download magnet:?xt=...` | Authenticated Users | |
| 13 | +| `/space` | Check home directory size | `/space` | Authenticated Users | |
| 14 | +| `/spaceforce` | Force refresh space calculation | `/spaceforce` | Authenticated Users | |
| 15 | + |
| 16 | +## Setup |
| 17 | + |
| 18 | +1. **Install Python 3.12+** and uv package manager |
| 19 | + ```bash |
| 20 | + # Install uv |
| 21 | + curl -LsSf https://astral.sh/uv/install.sh | sh |
| 22 | + ``` |
| 23 | + |
| 24 | +2. **Configure Environment** |
| 25 | + ```bash |
| 26 | + cp .env.example .env |
| 27 | + # Edit .env with your settings |
| 28 | + ``` |
| 29 | + |
| 30 | +3. **Install Requirements** |
| 31 | + ```bash |
| 32 | + # Install dependencies (creates virtual environment automatically) |
| 33 | + uv sync --dev |
| 34 | + ``` |
| 35 | + |
| 36 | +4. **Run** |
| 37 | + ```bash |
| 38 | + uv run python main.py |
| 39 | + ``` |
| 40 | + |
| 41 | +## Environment Configuration |
| 42 | + |
| 43 | +Create a `.env` file with the following variables: |
| 44 | + |
| 45 | +```bash |
| 46 | +# Bot configuration |
| 47 | +PASSWORD=your_password_here |
| 48 | +TELEGRAM_TOKEN=1234567890:ABCdefGHIjklMNOpqrsTUVwxyz123456 |
| 49 | +ADMINS=123456789 |
| 50 | + |
| 51 | +# Jackett configuration |
| 52 | +JACKETT_API_KEY=abcdef1234567890abcdef1234567890 |
| 53 | +JACKETT_URL=http://your.jackett.host:port |
| 54 | +JACKETT_URL_SEARCH=/your/jackett/api/v2.0/indexers/all/results |
| 55 | + |
| 56 | +# ruTorrent configuration |
| 57 | +RU_TORRENT_URL=https://your.rutorrent.host/user/rutorrent/php/addtorrent.php |
| 58 | +RU_TORRENT_TOKEN=base64_encoded_credentials |
| 59 | +``` |
| 60 | + |
| 61 | +| Variable | Description | |
| 62 | +|----------|-------------| |
| 63 | +| `PASSWORD` | Bot authentication password | |
| 64 | +| `TELEGRAM_TOKEN` | Get from [@BotFather](https://t.me/botfather) | |
| 65 | +| `ADMINS` | Your Telegram user ID for admin access | |
| 66 | +| `JACKETT_API_KEY` | Found in Jackett dashboard | |
| 67 | +| `JACKETT_URL` | Your Jackett instance URL with port | |
| 68 | +| `JACKETT_URL_SEARCH` | Jackett API endpoint path | |
| 69 | +| `RU_TORRENT_URL` | Full path to ruTorrent addtorrent.php | |
68 | 70 | | `RU_TORRENT_TOKEN` | Base64 encoded username:password |` | `user:password_base64` | Base64 encoded auth | |
0 commit comments