50 lines
3.2 KiB
Markdown
50 lines
3.2 KiB
Markdown
# TelegramPoster
|
|
This bot is used for one and only task - post pictures from my personal archive. Here's its source code so you can also host a bot and have fun with it. Just don't exepect it to be brilliant. It is not. But hey, you can always fork it ;)
|
|
|
|
## Installation
|
|
To make this bot run at first you need to have a Python interpreter and git. Google is your friend finding it. You can also ignore git and simply download source code, should also work fine. After that you're ready to go.
|
|
|
|
> In this README I assume that you're using default python in your
|
|
> system and your system's PATH contains it. If your default python
|
|
> is `python3` or for example `/home/user/.local/bin/python3.9` - use it instead.
|
|
> If it's non-standart executable path - you should also change
|
|
> it in scripts you will use (`loop.sh`, `loop.bat`, `start.sh` and `start.bat`).
|
|
|
|
1. Download the bot.
|
|
1. `git clone https://git.end-play.xyz/profitroll/TelegramSender.git` (if you want to use git)
|
|
2. `cd ./TelegramSender`
|
|
|
|
2. Install dependencies:
|
|
`python -m pip install -r requirements.txt`
|
|
Without installing those - bot cannot work at all
|
|
|
|
3. Install optional dependencies [Not required]:
|
|
`python -m pip install -r requirements-optional.txt`
|
|
These are not required but can make the bot run a bit faster
|
|
|
|
4. Configure your bot with a favorite text editor:
|
|
`nano config.json`
|
|
You can edit with vim, nano, on Windows it's Notepad or Notepad++. Whatever.
|
|
If you don't know where to find bot_token and your id - here you can find some hints: [get bot token](https://www.siteguarding.com/en/how-to-get-telegram-bot-api-token), [get your id](https://www.alphr.com/telegram-find-user-id/), [get api_hash and api_id](https://core.telegram.org/api/obtaining_api_id).
|
|
|
|
5. Add bot to the channel
|
|
To use your bot of course you need to have a channel or group otherwise makes no sense to have such a bot. [Here](https://stackoverflow.com/a/33497769) you can find a quick guide how to add your bot to a channel.
|
|
|
|
6. Fill your contents folder
|
|
Of course bot cannot post something from nothing. Configure your `config.json` what media types bot should post (`"posting", "extensions"`), when to post them (`"posting", "time"`) and also where to find them (`"locations"`). You can also move them when sent by setting `"posting", "move_sent"` to `true`.
|
|
|
|
6. Good to go, run it!
|
|
`python ./main.py`
|
|
Or you can also use `.\start.bat` on Windows and `bash ./start.sh` on Linux.
|
|
Additionally there are `loop.sh` and `loop.bat` available if you want your bot to start again after being stopped or after using `/reboot` command.
|
|
|
|
## Command line arguments
|
|
Of course bot also has them. You can perform some actions with them.
|
|
* `--move-sent` - allows you to move all sent files from queue to sent directories
|
|
* `--cleanup` - purge files in both `queue` and `sent` folders if they're sent. Requires `--confirm` argument
|
|
* `--cleanup-index` - purge all sent entries from index. Requires `--confirm` argument
|
|
* `--norun` - allows you to execute above arguments without tiggering the bot start itself
|
|
|
|
Examples:
|
|
* `python3 ./main.py --move-sent --norun`
|
|
* `python3 ./main.py --cleanup --confirm` |