"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Héberger Telegram Bot sur Raspberry Pi 5

Héberger Telegram Bot sur Raspberry Pi 5

Publié le 2024-11-04
Parcourir:639

Host Telegram Bot on Raspberry Pi 5

Table des matières:

  • Intrusion
  • Installer le système d'exploitation sur Raspberry Pi 5
  • Connectez-vous au Raspberry Pi via SSH
  • Préparer l'envariement
  • Créer et exécuter le bot
  • Gardez le bot exécuté en arrière-plan à l'aide de tmux
  • Démarrer automatiquement le bot au démarrage (facultatif)

Intrusion

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.

Installer le système d'exploitation sur Raspberry Pi 5

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.

Connectez-vous au Raspberry Pi via SSH

  1. Ouvrez la console (cmd ou PowerShell sous Windows)
  2. pingez votre Raspberry Pi avec la commande suivante :
ping raspberrypi.local

Vous recevrez des statistiques de ping ainsi que l'adresse IP de votre Raspberry Pi.

  1. Utilisez cette adresse IP pour vous connecter via SSH :
SSH pi@ (for example: SSH [email protected])
  1. Entrez le mot de passe (la valeur par défaut est framboise). Je recommande fortement de changer cela plus tard.
  2. Si le mot de passe est correct, vous serez connecté à votre Raspberry Pi via SSH.

Préparer l'envariement

  1. Mettez à jour votre Raspberry Pi
sudo apt update
sudo apt upgrade
  1. Installer Python Raspberry Pi OS est généralement livré avec Python préinstallé. Vérifiez s'il est installé :
python3 --version

Si Python n'est pas installé, vous pouvez l'installer en utilisant :

sudo apt install python3 python3-pip
  1. Configurer un environnement virtuel (facultatif mais recommandé) C'est une bonne pratique de créer un environnement virtuel pour garder les dépendances de votre projet isolées :
sudo apt install python3-venv
python3 -m venv telegram-bot-env
source telegram-bot-env/bin/activate
  1. Installer la bibliothèque de robots Python Telegram
pip install python-telegram-bot --upgrade

Créer et exécuter le bot

  1. Créez un nouveau fichier Python à l'aide de l'éditeur de texte nano
nano bot.py
  1. Écrivez le code de votre bot dans ce nouveau fichier _(vous pouvez utiliser le code de mon article précédent). Appuyez sur CTRL O puis appuyez sur Entrée pour enregistrer les modifications. Pour quitter, appuyez sur CTRL X.
  2. Exécuter le bot
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

Gardez le bot exécuté en arrière-plan à l'aide de tmux

Créez un script Shell exécutable pour démarrer votre bot

  1. Installer tmux
sudo apt update
sudo apt install tmux
  1. Créez un nouveau script shell pour démarrer votre bot. Vous pouvez le nommer start_bot.sh
nano start_bot.sh
  1. Ajoutez les lignes suivantes au script, en remplaçant bot.py par le nom de votre fichier de bot Python et telegram-bots-env par votre nom d'environnement :
#!/bin/bash
source telegram-bots-env/bin/activate
python3 bot.py
  1. Enregistrez et quittez (CTRL O, Entrée, CTRL X).
  2. Rendre le script exécutable :
chmod  x start_bot.sh

Exécutez le Bot via tmux :

  1. Démarrez une nouvelle session tmux :
tmux new -s my_bot_session
  1. Dans la session tmux, exécutez votre script de bot :
./start_bot.sh
  1. Détachez-vous de la session tmux en appuyant sur CTRL B, puis D
  2. Rattachez-vous à la session tmux (si nécessaire) Pour vous reconnecter ultérieurement à la session tmux de votre bot, utilisez :
tmux attach -t my_bot_session

Démarrer automatiquement le bot au démarrage (facultatif)

Si vous souhaitez que votre bot démarre automatiquement au démarrage, vous pouvez utiliser un service systemd. Voici comment :

  1. Créez un nouveau fichier de service :
sudo nano /etc/systemd/system/my_bot.service
  1. Ajoutez la configuration suivante, en modifiant les chemins si nécessaire :
[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
  1. Enregistrez et quittez le fichier.
  2. Rechargez le démon systemd :
sudo systemctl daemon-reload
  1. Activez le service pour démarrer au démarrage :
sudo systemctl enable my_bot.service
  1. Démarrez le service :
sudo systemctl start my_bot.service
Déclaration de sortie Cet article est reproduit sur : https://dev.to/dmitry-koleev/host-telegram-bot-on-raspberry-pi-5-16ld?1 En cas de violation, veuillez contacter [email protected] pour supprimer il
Dernier tutoriel Plus>

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