You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
+[4.1 Starting the multibot](#41-starting-the-multibot)
63
65
*[📋 Todo List](#-todo-list)
@@ -90,7 +92,6 @@ Litecoin, Solana and stablecoins in the TRC20 and ERC20 networks, which allows y
90
92
| WEBHOOK_PATH | The path to the webhook where Telegram servers send requests for bot updates. It is not recommended to change it if only one bot will be deployed. In case several bots will be deployed on the same server, it will be necessary to change it, because there will be path collision (Does not apply to the multibot case). | "" (empty string) |
91
93
| WEBAPP_HOST | Hostname for Telegram bot, it is not recommended to change in case you use docker-compose. | For docker-compose="0.0.0.0".<br/>For local deployment="localhost". |
92
94
| WEBAPP_PORT | Port for Telegram bot, if you plan to deploy several bots on the same server, you will need to assign a different port to each one (Not relevant to the multibot case). | No recommended value |
93
-
| WEBHOOK_SECRET_TOKEN | Required variable, used to protect requests coming from Telegram servers from spoofing. | Any string you want |
94
95
| TOKEN | Token from your Telegram bot, you can get it for free in Telegram from the bot of all bots with the username @botfather. | No recommended value |
95
96
| ADMIN_ID_LIST | List of Telegram id of all admins of your bot. This list is used to check for access to the admin menu. | No recommended value |
96
97
| SUPPORT_LINK | A link to the Telegram profile that will be sent by the bot to the user when the “Help” button is pressed. |https://t.me/${YOUR_USERNAME_TG}|
@@ -101,19 +102,20 @@ Litecoin, Solana and stablecoins in the TRC20 and ERC20 networks, which allows y
101
102
| PAGE_ENTRIES | The number of entries per page. Serves as a variable for pagination. | 8 |
102
103
| BOT_LANGUAGE | The name of the .json file with the l10n localization. At the moment only English localization is supplied out of the box, but you can make your own if you create a file in the l10n folder with the same keys as in l10n/en.json. | "en" or "de" |
103
104
| MULTIBOT | Experimental functionality, allows you to raise several bots in one process. And there will be one main bot, where you can create other bots with the command “/add $BOT_TOKEN”. Accepts string parameters “true” or “false”. | "false" |
104
-
| ETHPLORER_API_KEY | API Key from ethplorer.io, used to get ERC20 balances. | No recommended value |
105
105
| CURRENCY | Currency to be used in the bot. | "USD" or "EUR" or "JPY" or "CAD" or "GBP" |
106
106
| RUNTIME_ENVIRONMENT | If set to "dev", the bot will be connected via an ngrok tunnel. "prod" will use [Caddy](https://hub.docker.com/r/lucaslorentz/caddy-docker-proxy) as reverse proxy together with your public hostname | "prod" or "dev" |
107
-
| REDIS_HOST | Required variable, needed to make the throttling mechanism work. | "redis" for docker-compose.yml |
107
+
| WEBHOOK_SECRET_TOKEN | Required variable, used to protect requests coming from Telegram servers from spoofing. | Any string you want |
108
+
| KRYPTO_EXPRESS_API_KEY | API KEY from KryptoExpress profile | No recommended value |
109
+
| KRYPTO_EXPRESS_API_URL | API URL from KryptoExpress service |https://KryptoExpress.pro/api|
110
+
| KRYPTO_EXPRESS_API_SECRET | Required variable, used to protect requests coming from KryptoExpress servers from spoofing. | Any string you want |
108
111
| REDIS_PASSWORD | Required variable, needed to make the throttling mechanism work. | Any string you want |
109
-
| KRYPTO_EXPRESS_API_KEY | API KEY from KryptoExpress profile | No recommended value |
110
-
| KRYPTO_EXPRESS_API_URL | API URL from KryptoExpress service |https://KryptoExpress.pro/api|
111
-
| KRYPTO_EXPRESS_API_SECRET | Required variable, used to protect requests coming from KryptoExpress servers from spoofing. | Any string you want |
112
+
| REDIS_HOST | Required variable, needed to make the throttling mechanism work. | "redis" for docker-compose.yml |
112
113
113
114
### 1.1 Starting AiogramShopBot with Docker-compose.
114
115
115
-
* Clone the project.<br>``git clone git@github.com:ilyarolf/AiogramShopBot.git``
116
+
* Clone the project.<br>``git clone https://github.com/ilyarolf/AiogramShopBot.git``
116
117
* Set environment variables in .env file.
118
+
* Set your domain in the docker-compose.yml file to the bot service in the labels caddy section. {YOUR_IP_ADDRESS}.sslip.io
117
119
* Run the ``docker-compose up`` command.
118
120
119
121
#### Development and production mode
@@ -122,7 +124,7 @@ For local development on a computer which is not internet facing, set the "RUNTI
122
124
be connected via an ngrok tunnel.
123
125
> **Note**
124
126
> **<br>To get the ngrok token, you need to register on the ngrok website and confirm your email. Then you will have the
125
-
ngrok token in your personal account.**
127
+
ngrok token in your personal account.<br>You will still need Redis.**
126
128
127
129
On an internet facing production system you can either set your own hostname in the caddy label (in the template shown
128
130
with "YOUR_DOMAIN_GOES_HERE"
@@ -134,7 +136,7 @@ this case you have to remove the caddy service from the docker-compose file and
134
136
135
137
### 1.2 Starting AiogramShopBot without database encryption.
136
138
137
-
* Clone the project from the master branch. <br>``git clone git@github.com:ilyarolf/AiogramShopBot.git``
139
+
* Clone the project from the master branch. <br>``git clone https://github.com/ilyarolf/AiogramShopBot.git``
138
140
* Install all necessary packages <br>``pip install -r requirements.txt``
139
141
* Set the environment variables to run in the .env file.<br>Example:
140
142
@@ -170,7 +172,7 @@ REDIS_HOST = "localhost"
170
172
> **<br>To run AiogramShopBot with database encryption via SQLCipher, you need to use Linux kernel operating systems.**
To withdraw cryptocurrency from the bot, open the admin menu, go to the wallet tab, select the cryptocurrency you want to withdraw, send the cryptocurrency address where you want to withdraw and confirm the withdrawal. After a successful withdrawal, the bot will send you a link to the blockchain browser with the transaction.
0 commit comments