Dans mon article précédent, j'ai montré comment créer et exécuter un Telegram Bot à l'aide de Python. Vous pouvez le trouver ici
Dans ce guide, je vais vous guider dans l'hébergement de votre bot Telegram sur votre propre serveur Raspberry Pi.
Suivez ce guide pour créer une image avec Raspberry Pi Imager.
Je recommande de choisir le système d'exploitation Raspberry Pi OS Lite car c'est la meilleure option en termes de simplicité et de légèreté.
Dans les paramètres de l'imageur, cochez la case à côté de Activer SSH et sélectionnez utiliser l'authentification par mot de passe. Cela vous permettra de vous connecter à votre Raspberry Pi via SSH.
Après avoir créé l'image sur une clé USB, insérez la carte flash dans votre Raspberry Pi et allumez-le.
ping raspberrypi.local
Vous recevrez des statistiques de ping ainsi que l'adresse IP de votre Raspberry Pi.
SSH pi@(for example: SSH [email protected])
sudo apt update sudo apt upgrade
python3 --version
Si Python n'est pas installé, vous pouvez l'installer en utilisant :
sudo apt install python3 python3-pip
sudo apt install python3-venv python3 -m venv telegram-bot-env source telegram-bot-env/bin/activate
pip install python-telegram-bot --upgrade
nano bot.py
python3 bot.py
Votre bot est maintenant opérationnel et vous pouvez le tester sur Telegram.
Cependant, cette méthode mettra fin au bot lorsque vous fermerez le terminal.
Pour le faire fonctionner en arrière-plan, nous pouvons utiliser tmux
sudo apt update sudo apt install tmux
nano start_bot.sh
#!/bin/bash source telegram-bots-env/bin/activate python3 bot.py
chmod x start_bot.sh
tmux new -s my_bot_session
./start_bot.sh
tmux attach -t my_bot_session
Si vous souhaitez que votre bot démarre automatiquement au démarrage, vous pouvez utiliser un service systemd. Voici comment :
sudo nano /etc/systemd/system/my_bot.service
[Unit] Description=My Bot Service [Service] ExecStart=/usr/bin/tmux new-session -d -s my_bot_session '/path/to/start_bot.sh' WorkingDirectory=/path/to/my_bot User=pi [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable my_bot.service
sudo systemctl start my_bot.service
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3