dev #19
35
README.md
35
README.md
@ -11,7 +11,11 @@ This bot is used for one and only task - post pictures from my personal archive.
|
|||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
For now bot requires [MongoDB](https://www.mongodb.com) and [PhotosAPI](https://git.end-play.xyz/profitroll/PhotosAPI) in order to function properly. Use [MongoDB's installation manual](https://www.mongodb.com/docs/manual/installation) and [Photos API's README](https://git.end-play.xyz/profitroll/PhotosAPI/src/branch/master/README.md) to install install them.
|
* [Python 3.7+](https://www.python.org) (3.9+ recommended)
|
||||||
|
* [MongoDB](https://www.mongodb.com)
|
||||||
|
* [PhotosAPI](https://git.end-play.xyz/profitroll/PhotosAPI)
|
||||||
|
|
||||||
|
Use [MongoDB's installation manual](https://www.mongodb.com/docs/manual/installation) and [Photos API's README](https://git.end-play.xyz/profitroll/PhotosAPI/src/branch/master/README.md).
|
||||||
|
|
||||||
Please note that Photos API also requires MongoDB so it makes sense to install and configure Mongo first.
|
Please note that Photos API also requires MongoDB so it makes sense to install and configure Mongo first.
|
||||||
|
|
||||||
@ -32,10 +36,10 @@ To make this bot run at first you need to have a Python interpreter, Photos API,
|
|||||||
|
|
||||||
2. Download the bot:
|
2. Download the bot:
|
||||||
|
|
||||||
1. `git clone -b dev https://git.end-play.xyz/profitroll/TelegramPoster.git` (if you want to use git)
|
1. `git clone -b dev https://git.end-play.xyz/profitroll/TelegramPoster.git` (if you're using git)
|
||||||
2. `cd ./TelegramPoster`
|
2. `cd TelegramPoster`
|
||||||
|
|
||||||
3. Create virtual environment [Optional yet recommended]:
|
3. Create virtual environment [Optional]:
|
||||||
|
|
||||||
1. Install virtualenv module: `pip install virtualenv`
|
1. Install virtualenv module: `pip install virtualenv`
|
||||||
2. Create venv: `python -m venv env`
|
2. Create venv: `python -m venv env`
|
||||||
@ -44,12 +48,12 @@ To make this bot run at first you need to have a Python interpreter, Photos API,
|
|||||||
4. Install project's dependencies:
|
4. Install project's dependencies:
|
||||||
|
|
||||||
`python -m pip install -r requirements.txt`
|
`python -m pip install -r requirements.txt`
|
||||||
Without installing those - bot cannot work at all
|
Without installing those - bot cannot work at all.
|
||||||
|
|
||||||
5. Install optional dependencies [Not required]:
|
5. Install optional dependencies [Optional]:
|
||||||
|
|
||||||
`python -m pip install -r requirements-optional.txt`
|
`python -m pip install -r requirements-optional.txt`
|
||||||
These are not required but can make the bot run a bit faster
|
These are not required but can make the bot run a bit faster.
|
||||||
|
|
||||||
6. Configure "bot" and "owner" with your favorite text editor:
|
6. Configure "bot" and "owner" with your favorite text editor:
|
||||||
|
|
||||||
@ -60,13 +64,13 @@ To make this bot run at first you need to have a Python interpreter, Photos API,
|
|||||||
7. Configure database and API:
|
7. Configure database and API:
|
||||||
|
|
||||||
1. Configure database:
|
1. Configure database:
|
||||||
1. Change database host and port in keys `"database.host"` and `"database.port"`. For default local installation those will be `127.0.0.1` and `27017` respectively;
|
1. Change database host and port in keys `"database.host"` and `"database.port"`. For default local installation those will be `127.0.0.1` and `27017` respectively
|
||||||
2. Change database name to the one you like in `"database.name"`. It will be automatically created on start;
|
2. Change database name to the one you like in `"database.name"`. It will be automatically created on start
|
||||||
3. If you've changed user and password to access the db, you should also change `"database.user"` and `"database.password"` keys, otherwise leave them `null` (default).
|
3. If you've changed user and password to access the db, you should also change `"database.user"` and `"database.password"` keys, otherwise leave them `null` (default).
|
||||||
|
|
||||||
2. Configure Photos API:
|
2. Configure Photos API:
|
||||||
1. Change `"posting.api.address"` to the one your API servers uses;
|
1. Change `"posting.api.address"` to the one your API servers uses
|
||||||
2. Run your bot using `python ./poster.py --create-user --create-album` to configure its new user and album. You can also use manual user and album creation described [in the wiki](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Configuring-API). You can also change username, password and album in`"posting.api"` to the user and album you have if you already have Photos API album and user set up. In that case you don't need to create a new one.
|
2. Run your bot using `python poster.py --create-user --create-album` to configure its new user and album. You can also use manual user and album creation described [in the wiki](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Configuring-API). You can also change username, password and album in`"posting.api"` to the user and album you have if you already have Photos API album and user set up. In that case you don't need to create a new one.
|
||||||
|
|
||||||
8. Add bot to the channel:
|
8. Add bot to the channel:
|
||||||
|
|
||||||
@ -78,7 +82,7 @@ To make this bot run at first you need to have a Python interpreter, Photos API,
|
|||||||
|
|
||||||
10. Good to go, run it!
|
10. Good to go, run it!
|
||||||
|
|
||||||
Make sure MongoDB and Photos API are running and use `python ./poster.py` to start it.
|
Make sure MongoDB and Photos API are running and use `python poster.py` to start it.
|
||||||
Or you can also use `.\start.bat` on Windows and `bash ./start.sh` on Linux.
|
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.
|
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.
|
||||||
|
|
||||||
@ -93,13 +97,12 @@ Of course bot also has them. You can perform some actions with them.
|
|||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
|
|
||||||
* `python ./poster.py --create-user`
|
* `python poster.py --create-user`
|
||||||
* `python ./poster.py --create-user --create-album`
|
* `python poster.py --create-user --create-album`
|
||||||
|
|
||||||
## Tips and improvements
|
## Tips and improvements
|
||||||
|
|
||||||
* It's better to use virtual environments in most of production cases so there's also [a tutorial how to put your bot into venv](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Configuring-Virtual-Environment) and use it inside the virtual environment;
|
* You may want to configure your bot to work as a systemd service instead. There's [a tutorial for that](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Configuring-Service) in the wiki.
|
||||||
* You may also want to configure your bot to work as a systemd service instead. There's [a tutorial for that](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Configuring-Service) in the wiki.
|
|
||||||
|
|
||||||
## Localization
|
## Localization
|
||||||
|
|
||||||
|
@ -1 +0,0 @@
|
|||||||
# Configuring virtual environment
|
|
Reference in New Issue
Block a user