Logo TelegramTelegramPortail francophoneTélécharger

Bots Telegram

Comment créer un bot Telegram avec le BotFather ?

Publié le 20 août 2026 · Telegram Équipe officielle

comment créer un bot Telegram, envoyer des messages automatiques Telegram, configurer un bot Telegram, BotFather, token Telegram, programmer un bot Telegram, erreur bot Telegram, sécuriser bot Telegram, automatisation Telegram Python, guide bot Telegram

Introduction : BotFather, la porte d'entrée des bots Telegram

Créer un bot Telegram est une étape fondamentale pour automatiser des interactions, qu'il s'agisse d'un assistant de modération, d'un relais de notifications ou d'un jeu interactif. Exemple : un bot de rappel peut envoyer des messages programmés à vos utilisateurs. Le point de départ unique et officiel est BotFather, le bot de gestion fourni par Telegram lui-même. Ce tutoriel vous guidera pas à pas dans la création d'un bot, depuis la première commande jusqu'à la configuration avancée, en expliquant le pourquoi de chaque choix et les limites à connaître.

Que vous soyez débutant complet ou développeur souhaitant maîtriser les subtilités de l'API Telegram, cet article vous fournira des chemins d'opération concrets, des exemples de code reproductibles et des conseils d'arbitrage pour éviter les pièges courants. Toutes les captures d'écran et chemins de menu correspondent à la version officielle de Telegram en date de rédaction (2026).

Introduction : BotFather, la porte d'entrée des bots Telegram
Introduction : BotFather, la porte d'entrée des bots Telegram

Qu'est-ce que BotFather et pourquoi est-il indispensable ?

BotFather est le bot officiel de Telegram qui permet de créer, gérer et supprimer des bots. Il n'existe pas d'autre moyen officiel d'obtenir un token d'API pour un bot. Sans token, impossible d'utiliser l'API Telegram ni d'écrire le moindre code fonctionnel. BotFather agit comme un registre central : vous lui donnez un nom et un nom d'utilisateur unique pour votre bot, et il vous délivre un token – une chaîne secrète qui authentifie votre code auprès des serveurs Telegram.

Points clés :

  • BotFather est gratuit et ne nécessite aucun abonnement.
  • Il ne stocke pas le code de votre bot – vous devez héberger et exécuter votre propre programme.
  • Il permet de configurer les propriétés de base : description, photo de profil, commandes, mode inline, paiements, etc.

En résumé, BotFather est le seul point d'entrée officiel pour obtenir un token et paramétrer les aspects essentiels de votre bot avant de passer au développement.

Prérequis : ce dont vous avez besoin avant de commencer

Avant de lancer la création, assurez-vous de disposer d'un compte Telegram actif. BotFather est accessible via @BotFather dans la recherche. Aucune connaissance en programmation n'est nécessaire pour la première partie (création et configuration). Pour la suite, vous aurez besoin d'un environnement de développement (Python, Node.js, etc.) et d'un serveur ou d'une machine capable d'exécuter le code en continu.

Différences de plateforme : le processus est identique sur Android, iOS et Desktop. Les commandes sont textuelles, donc l'interface utilisateur de BotFather est la même partout. Une fois ces prérequis réunis, vous pouvez passer à la création.

Étape 1 : Démarrer une conversation avec BotFather

Ouvrez Telegram et recherchez « BotFather » dans la barre de recherche. Cliquez sur le résultat officiel (@BotFather) et appuyez sur Démarrer (ou tapez /start). BotFather répond avec une liste de commandes disponibles. Immédiatement, vous êtes prêt à créer votre premier bot. Cette étape initiale est identique quelle que soit votre plateforme.

Étape 2 : Créer un nouveau bot avec la commande /newbot

Tapez /newbot et envoyez le message. BotFather vous demande alors deux choses :

  1. Un nom d'affichage (par exemple « Mon Assistant Météo ») – il apparaîtra dans les conversations.
  2. Un nom d'utilisateur (username) – il doit se terminer par bot (exemple : mon_assistant_meteo_bot) et être unique sur Telegram. Si le nom est pris, BotFather vous le signalera.

Si tout est valide, BotFather répond avec un message de félicitations contenant le token de votre bot. Ce token ressemble à 1234567890:ABCdefGHIjklmNOPqrStuVWXyz. Gardez-le secret ; quiconque le possède contrôle votre bot.

Attention : Ne partagez jamais votre token publiquement (GitHub, forums, etc.). Si vous le divulguez accidentellement, utilisez immédiatement la commande /revoke dans BotFather pour regénérer un nouveau token.

Maintenant que votre bot est créé, passons à sa configuration pour le rendre plus identifiable et fonctionnel.

Étape 3 : Configurer les propriétés de base du bot

Définir une description et un « About »

Après avoir obtenu le token, la première chose à faire est de donner une identité à votre bot. Tapez /setdescription dans BotFather, sélectionnez votre bot, puis donnez une phrase qui explique ce qu'il fait (exemple : « Je vous envoie la météo de votre ville sur demande »). Cela apparaît dans la fiche d'information du bot. De même, /setabouttext permet de définir un court texte affiché dans le profil.

Ajouter une photo de profil

Utilisez /setuserpic. BotFather vous demandera d'envoyer une image (PNG ou JPEG, de préférence carrée). Une fois envoyée, la photo apparaît immédiatement.

Définir les commandes du bot

Les commandes aident les utilisateurs à interagir avec votre bot via un menu déroulant. Tapez /setcommands, sélectionnez votre bot, puis envoyez une liste au format :

start - Démarrer l'interaction
meteo - Obtenir la météo pour une ville
aide - Afficher l'aide

BotFather enregistre ces commandes ; elles deviennent visibles pour les utilisateurs après quelques secondes. Notez que le nom de la commande ne doit pas contenir d'espaces ni de majuscules.

Étape 4 : Configurer des fonctionnalités avancées

Mode inline

Le mode inline permet aux utilisateurs d'utiliser votre bot sans l'ajouter à un groupe, en tapant @votre_bot dans le champ de saisie. Activez-le via /setinline (sélectionnez votre bot, puis définissez un placeholder, par exemple « Tapez le nom d'une ville »). Si votre bot ne gère pas les requêtes inline, les utilisateurs ne verront rien. Cette fonctionnalité est utile pour les bots de recherche, de traduction ou de génération de contenu.

Paiements intégrés

Pour un bot qui vend des biens ou services, utilisez /mybots -> sélectionnez votre bot -> Payments. Vous devrez connecter un compte Stripe (selon la région) ou Telegram Stars. Cette configuration est réservée aux développeurs ayant un compte marchand validé.

Webhooks et URL de callback

Pour que Telegram envoie les mises à jour directement à votre serveur, vous devez définir un webhook. BotFather ne permet pas de le configurer directement ; vous devez le faire via l'API Telegram (appel à setWebhook). Cependant, BotFather fournit une commande /setdomain qui permet de lier un domaine HTTPS. Ce n'est pas obligatoire, mais cela peut être utile pour certains bots utilisant des webhooks. Observation empirique : l'utilisation de /setdomain peut faciliter la validation du certificat SSL lors de la configuration initiale du webhook, mais ce n'est pas documenté officiellement. Vérifiez en testant votre appel API après avoir défini le domaine.

Une fois les propriétés de base réglées, vous pouvez passer à la partie développement proprement dite.

Étape 5 : Écrire le code du bot (exemple en Python)

Une fois le token obtenu, vous devez coder la logique. Voici un exemple minimal utilisant la bibliothèque python-telegram-bot (version stable au moment de la rédaction). Installez-la avec pip install python-telegram-bot.

from telegram import Update
from telegram.ext import Application, CommandHandler, ContextTypes

TOKEN = "votre_token_ici"

async def start(update: Update, context: ContextTypes.DEFAULT_TYPE):
await update.message.reply_text("Bonjour ! Je suis votre bot météo.")

async def meteo(update: Update, context: ContextTypes.DEFAULT_TYPE):
# Logique météo à implémenter
await update.message.reply_text("Fonctionnalité à venir.")

def main():
app = Application.builder().token(TOKEN).build()
app.add_handler(CommandHandler("start", start))
app.add_handler(CommandHandler("meteo", meteo))
app.run_polling()

if __name__ == "__main__":
main()

Ce script utilise le polling (interrogation régulière des serveurs Telegram). Pour un déploiement en production, préférez un webhook (voir section dédiée).

Polling vs Webhook : quel choix pour votre projet ?

Le polling est simple à mettre en œuvre et ne nécessite pas de serveur accessible publiquement (HTTPS). Il convient parfaitement pour un développement local, un bot personnel ou un faible volume de requêtes. Cependant, il consomme davantage de ressources réseau et peut introduire une latence allant jusqu'à plusieurs secondes selon l'intervalle de polling.

Le webhook, lui, pousse les mises à jour en temps réel vers votre serveur. Il est indispensable pour un bot destiné au grand public, avec des centaines de requêtes par seconde. Pour le configurer, appelez l'URL https://api.telegram.org/bot<TOKEN>/setWebhook?url=<VOTRE_URL_HTTPS>. Votre serveur doit disposer d'un certificat SSL valide. Telegram n'accepte que les ports 443, 80, 88, 8443.

Le choix dépend de vos besoins de latence et d'infrastructure. En phase de test, le polling est suffisant ; en production, le webhook est recommandé.

Polling vs Webhook : quel choix pour votre projet ?
Polling vs Webhook : quel choix pour votre projet ?

Sécurité et bonnes pratiques

Protéger le token

Ne stockez jamais le token en dur dans le code source versionné. Utilisez des variables d'environnement ou un gestionnaire de secrets. Si vous utilisez un dépôt public, ajoutez le token à un fichier .env et ignorez-le dans .gitignore.

Limiter les accès

Si votre bot doit être utilisé uniquement par certains utilisateurs, filtrez les update.effective_user.id dans chaque handler. Vous pouvez également utiliser la commande /setjoingroups dans BotFather pour interdire l'ajout du bot à des groupes non autorisés.

Gérer les erreurs

Ajoutez un gestionnaire d'erreurs global (app.add_error_handler) pour éviter que le bot ne plante sur une exception inattendue. Loggez les erreurs pour analyse.

Dépannage des problèmes courants

Voici quelques symptômes fréquents et leurs causes possibles :

SymptômeCause probableAction
Le bot ne répond pasToken incorrect ou bot non démarréVérifiez le token, exécutez le code, tapez /start au bot
Commandes non reconnuesCommandes non définies dans BotFather ou handler manquantUtilisez /setcommands et ajoutez les handlers correspondants
Erreur 409 ConflictWebhook et polling actifs simultanémentDésactivez le webhook (deleteWebhook) ou stoppez le polling
Le bot ne rejoint pas les groupesParamètre /setjoingroups désactivéUtilisez /setjoingroups dans BotFather

La plupart de ces problèmes se résolvent rapidement en vérifiant les configurations de base. Si le problème persiste, consultez les logs de votre bot.

Scénarios applicables et non applicables

Quand utiliser BotFather et créer un bot ?

  • Vous souhaitez automatiser l'envoi de messages (news, alertes).
  • Vous voulez développer un jeu ou un outil interactif.
  • Vous gérez une communauté et souhaitez un modérateur automatique.
  • Vous avez besoin d'une API personnalisée pour interagir avec Telegram.

Ces cas d'usage couvrent la majorité des besoins courants où un bot apporte une réelle valeur ajoutée.

Quand éviter de créer un bot via BotFather ?

  • Si vous voulez seulement envoyer des messages à un canal sans logique complexe, utilisez plutôt un bot existant ou une intégration simple (ex. IFTTT).
  • Si vous n'avez pas la capacité de maintenir un serveur ou un script en ligne 24/7, un bot Telegram n'est pas adapté (sauf si vous utilisez un hébergement cloud gratuit avec des limites).
  • Si vous avez besoin de fonctionnalités non couvertes par l'API Telegram (accès aux messages privés des utilisateurs, etc.), un bot ne pourra pas les fournir.

Dans ces situations, une solution plus simple ou un bot existant peut être plus approprié qu'un développement sur mesure.

Questions fréquemment posées

Puis-je créer plusieurs bots avec le même compte Telegram ?

Oui. Il n'y a pas de limite officielle. Chaque bot doit avoir un username unique. Vous pouvez gérer tous vos bots depuis le même BotFather en utilisant /mybots pour les lister.

Que faire si j'ai perdu le token de mon bot ?

Utilisez /mybots dans BotFather, sélectionnez le bot concerné, puis cliquez sur API Token pour le réafficher. Si vous pensez que le token est compromis, utilisez /revoke pour le regénérer.

Mon bot peut-il envoyer des messages à des utilisateurs sans qu'ils l'aient invité ?

Non. Un bot ne peut envoyer un message à un utilisateur que si ce dernier a d'abord envoyé une commande au bot (ou a été invité dans un groupe). Les bots ne peuvent pas engager la conversation de manière proactive, sauf via des notifications (webhooks) dans certaines limites.

Puis-je modifier le nom d'utilisateur de mon bot après création ?

Oui, via /mybots -> sélectionnez le bot -> Edit Bot -> Edit Bot Username. Le nouveau nom doit être disponible et se terminer par bot. Les anciens liens vers votre bot cesseront de fonctionner.

BotFather est-il disponible en français ?

Oui, l'interface de BotFather s'adapte à la langue de votre compte Telegram. Les commandes restent en anglais, mais les messages d'instruction sont traduits.

Résumé et prochaines étapes

Créer un bot Telegram avec BotFather est un processus simple mais puissant : en quelques minutes, vous obtenez un token et une configuration de base. L'essentiel est ensuite de coder une logique robuste, de sécuriser votre token et de choisir entre polling et webhook selon votre charge. N'oubliez pas de tester votre bot dans un groupe privé avant de le déployer largement.

Pour aller plus loin, explorez la documentation officielle de l'API Telegram (core.telegram.org/bots/api) et les bibliothèques comme python-telegram-bot, node-telegram-bot-api ou Telegraf. Si vous rencontrez des difficultés, la communauté Telegram est très active sur des groupes comme @BotTalk. Avec l'évolution de Telegram, les bots gagnent en capacités (mini-apps, Stars, etc.) ; restez à l'affût des mises à jour de l'API pour enrichir vos projets.

Conseil : Gardez toujours une copie de votre token et de vos scripts dans un endroit sûr. Configurez une alerte de surveillance pour détecter les arrêts inattendus de votre bot (par exemple, via un service de monitoring comme uptimerobot.com).

#Bot Telegram#Messages automatiques#API Telegram#Configuration#Python#Automatisation