BotStrike
BotStrike
🌙

📡 Diffusion (Broadcast)

Envoyez des annonces et messages à tous les utilisateurs de votre bot Telegram

5.1 Présentation

L'onglet Diffusion (4ème onglet, icône mégaphone 📢) permet de créer et lancer des campagnes de messages vers tous les utilisateurs qui ont interagi avec votre bot.

C'est l'outil principal pour communiquer avec votre audience : promotions, mises à jour, annonces importantes, etc.

📊 Quota de diffusions restantes

En haut à droite de la page Diffusion, un badge coloré indique en permanence combien de diffusions il vous reste à utiliser ce mois :

  • 🟢 Vert — quota confortable
  • 🟠 Orange — 1 seule diffusion restante
  • 🔴 Rouge (0) — quota épuisé pour ce mois
  • ∞ — plan sans limite de diffusions

Quand une diffusion est en cours d'envoi, le badge orange affiche la progression en temps réel : X/Y envoyés · Z%.

💡 Persistance : si vous quittez l'application pendant une diffusion en cours, la progression est automatiquement rechargée à votre retour. Vous retrouverez le statut exact (en cours / terminé) et les statistiques mises à jour.
📊 Coût en itérations Cloud — important

Une diffusion consomme des itérations Cloud (les mêmes que pour vos bots normaux). Le décompte est calculé sur le nombre TOTAL d'utilisateurs ciblés par votre compte, qu'ils aient effectivement reçu le message ou non (utilisateurs bloqués, exclus, filtrés par langue, etc.).

  • Diffusion simple (texte/média sans épingle) : 1 itération Cloud par utilisateur du compte.
  • Diffusion épinglée (avec ou sans suppression du message système « X a épinglé un message ») : 2 itérations Cloud par utilisateur du compte.

Exemple : 1 000 utilisateurs sur le compte → diffusion simple = 1 000 iter, diffusion épinglée sans message système = 2 000 iter.

5.2 Créer une diffusion

Le formulaire de diffusion comporte 6 étapes :

Écran Diffusion dans l'application : rédaction du message avec les variables insérables, type de média, boutons inline, effet de message, et aperçu du rendu à droite
L'écran de diffusion, avec l'aperçu du message à droite et le nombre de diffusions restantes.
1
Message

Rédigez votre message avec le formatage HTML Telegram :

<b>Gras</b> · <i>Italique</i> · <u>Souligné</u> · <s>Barré</s>
<code>Code</code> · <a href="...">Lien</a> · <tg-spoiler>Spoiler</tg-spoiler>

La barre d'outils au-dessus du champ vous permet d'insérer ces tags rapidement.

Appeler chaque destinataire par son nom

La seconde barre, sous le formatage, insère des jetons de personnalisation. Le serveur les remplace pour chaque destinataire au moment de l'envoi : un seul message écrit, autant de versions que d'utilisateurs.

JetonRemplacé par
{user_name}Prénom et nom, tels que Telegram les donne
{user_first_name}Prénom seul
{user_username}Pseudo @… (vide si l'utilisateur n'en a pas)
{user_id}Identifiant Telegram
{user_link}Lien cliquable vers le profil
Bonjour {user_first_name} 👋, une nouveauté vous attend !
Les jetons marchent aussi ailleurs — légende d'un média, libellé d'un bouton et adresse d'un bouton lien acceptent les mêmes jetons.
1bis
Message structuré (optionnel)

Sous le champ de message, le panneau Message structuré compose une annonce en blocs plutôt qu'en texte brut : titres, listes, tableau, citation, code… C'est le même rendu que Bot.sendRichMessage() côté SDK.

BlocÀ quoi ça sert
ParagrapheUn bloc de texte ordinaire
TitreTrois tailles, pour découper l'annonce
Liste à puces / numérotéeUne ligne saisie = un élément
TableauAligne des données en colonnes
CitationMet en avant un témoignage, une règle
CodeBloc à chasse fixe, avec langage au choix
SéparateurTrait horizontal entre deux parties
Pied de messageMention discrète en fin d'annonce
⚠️ Les deux formes s'excluent. Dès qu'un bloc est rempli, c'est le message structuré qui part et le champ de texte simple est ignoré. Telegram n'accepte pas un texte libre et une structure dans le même envoi : il faut choisir. Videz les blocs pour revenir au message simple.
2
Média (optionnel)

Ajoutez un média à votre message :

  • 🖼️ Photo
  • 🎬 Vidéo
  • 📄 Document
  • 🎵 Audio
  • 🎞️ GIF / Animation

Si un média est sélectionné, un champ Légende apparaît pour décrire le fichier.

3
Boutons inline

Ajoutez des boutons interactifs sous votre message. Deux types :

🔗 Passe lien

Un bouton avec une URL externe. L'utilisateur clique → redirigé vers le lien.

🔗 Visiter notre site → https://exemple.com

▶️ Passe commande

Un bouton qui déclenche une commande de votre bot. Quand l'utilisateur appuie sur ce bouton dans l'annonce, le code de la commande s'exécute automatiquement.

▶️ Voir le catalogue → /catalogue
💡 Important : Seules les commandes autorisées pour les annonces apparaissent dans la liste. Voir section 5.3.

📐 Boutons côte à côte (Rangée R1–R5)

Par défaut, chaque bouton occupe toute une ligne sous le message. Mais vous pouvez placer plusieurs boutons côte à côte sur la même ligne en leur assignant la même Rangée :

  • Seul — le bouton occupe toute la largeur (comportement par défaut)
  • R1 — le bouton est placé en rangée 1 · tous les boutons R1 s'affichent côte à côte
  • R2, R3, R4, R5 — idem pour les autres rangées
Exemple : [R1] 🛒 Acheter [R1] 📞 Contacter [R2] 🔗 Notre site

→ L'utilisateur Telegram verra 2 boutons côte à côte sur la première ligne, et un bouton seul sur la seconde.

Le badge R1, R2… apparaît sur le bouton dans l'app BotStrike pour vous rappeler sa rangée.

🎨 Styles des boutons

Chaque bouton peut avoir un style visuel différent pour mieux l'identifier dans l'application :

Par défaut Success Danger Warning Secondary

⚠️ Le style n'affecte que l'apparence dans l'app BotStriker. Dans Telegram, tous les boutons inline ont le même rendu standard.

4
Effet de message (optionnel)

Choisissez un effet visuel Telegram :

❌ Aucun 🔥 Feu 👍 Pouce ❤️ Cœur 🎉 Fête 👎 Pouce bas 💩 Caca
5
Options
  • 📌 Épingler le message : Le message sera épinglé en haut de la conversation
    • Supprimer le message système d'épingle : Telegram envoie automatiquement un message du type "X a épinglé un message". Activez cette option pour supprimer ce message automatiquement après l'épinglage (résultat plus propre dans la conversation).
  • IDs à exclure : Liste d'identifiants Telegram à ne pas contacter (séparés par des virgules)
  • Filtrer par langue : n'envoyer qu'aux utilisateurs dont Telegram annonce la langue choisie. La liste proposée ne contient que les langues réellement présentes chez vos utilisateurs ; ne rien cocher envoie à tout le monde.
6
Aperçu

Dès qu'il y a un message, un média ou un bouton, un aperçu apparaît et montre l'annonce telle qu'elle arrivera dans la conversation : bulle, média, boutons à leur place, effet choisi.

Ce que l'aperçu ne montre pas — les jetons de personnalisation y restent écrits tels quels ({user_first_name}) : leur valeur dépend du destinataire, elle n'est calculée qu'à l'envoi.

Appuyez sur Lancer la diffusion pour envoyer le message à tous les utilisateurs.

5.3 Passe commande — Autoriser une commande

Par défaut, les commandes créées dans l'onglet Développement ne sont PAS disponibles dans la diffusion.

Comment autoriser une commande ?

1
Allez dans l'onglet Développement (2ème onglet)
2
Ouvrez la commande que vous souhaitez autoriser
3
Dans le formulaire de configuration, cochez la case :
☑ Autoriser cette commande pour les annonces
4
Enregistrez la commande
⚠️ La commande /start n'est jamais listée dans les boutons de diffusion.

Exemple concret

Scénario : Vous avez créé une commande /catalogue qui affiche vos produits.

✅ En cochant "Autoriser pour les annonces", vous pouvez l'ajouter comme bouton Passe commande dans une diffusion.

→ L'utilisateur reçoit votre annonce → appuie sur le bouton → la commande /catalogue se déclenche → il voit le catalogue.

Qu'est-ce que "Passe commande" concrètement ?

C'est un système qui permet de lier un bouton d'annonce à une action dans votre bot. Au lieu de simplement rediriger vers un lien externe, le bouton exécute le code que vous avez programmé pour cette commande.

Cela signifie que vous pouvez créer des interactions avancées directement depuis vos annonces : afficher un menu, envoyer un fichier, démarrer un processus, montrer un formulaire, etc.

5.4 Passe lien

Le bouton Passe lien est un bouton inline classique de Telegram. Il redirige l'utilisateur vers une URL de votre choix :

  • Site web (https://...)
  • Autre bot Telegram (t.me/...)
  • N'importe quel lien HTTP/HTTPS

Chaque bouton a un texte personnalisable et une URL cible.

5.5 Historique des diffusions

Les 10 dernières diffusions sont affichées en bas de la page avec :

  • Un aperçu du message envoyé
  • Le nombre de boutons attachés
  • La date de lancement
  • Le statut : ⏳ en attente, 🔄 en cours, ✅ terminé
  • Une barre de progression temps réel (messages envoyés / total)
💾 Persistance : L'historique et le statut des diffusions sont sauvegardés localement sur votre appareil. Si vous quittez l'app pendant une diffusion en cours, à votre retour vous retrouverez :
  • Le statut actualisé (en cours / terminé)
  • Le nombre de messages envoyés mis à jour en temps réel
  • La progression exacte de la campagne

5.6 Liens média temporaires (BotLink)

Vous pouvez créer des liens temporaires pour vos médias (vidéo, photo, audio, documents…) afin de les utiliser directement dans vos diffusions.

💡 Comment ça marche ?
Créez un lien pour votre image ou vidéo, puis collez-le dans le champ URL du média de votre diffusion. Le lien est directement compatible : il sert le fichier brut aux plateformes.

📋 Étapes

1
Cherchez @CreatorLinksMediaBot sur Telegram ou 👉 cliquez ici pour y accéder directement
2
Appuyez sur Créer un lien média et envoyez votre fichier (photo, vidéo, audio, document…)
3
Copiez le lien généré et collez-le dans le champ URL du média de votre diffusion
⚠️ NB : Ces liens expirent après 1 heure. Créez le lien juste avant de lancer votre diffusion pour être sûr qu'il sera actif au moment de l'envoi.

📏 Limites

  • Taille max par fichier : 45 Mo
  • Max 3 liens actifs en même temps
  • Capacité totale de vos liens actifs : 50 Mo max
  • Vous pouvez supprimer un lien à tout moment pour en recréer un autre
✅ Exemple d'utilisation
Vous voulez diffuser une pub avec une image, vidéo, audio ou document :

1. 📎 Ouvrir @CreatorLinksMediaBot sur Telegram
2. Envoyez votre fichier (image, vidéo, audio, document…) → vous recevez :
https://linkmedia.botstrike.net/8e066ffe/3f54b/pub.jpg
3. Collez ce lien dans le champ URL média de votre diffusion
4. Lancez la diffusion 🚀

5.7 Connexion serveur

✅ Connexion active — Le serveur de diffusion est opérationnel. Les campagnes sont envoyées en temps réel. Certaines limites s'appliquent selon votre plan (nombre de destinataires, fréquence d'envoi, taille des médias).

5.8 Diffusion manuelle via le code (Bs API)

En plus de l'interface graphique, vous pouvez déclencher une diffusion directement depuis le code de vos commandes grâce aux méthodes Bs. Cela permet de lancer une diffusion sur événement (ex : après un paiement, une action admin, etc.).

⚠️ Réservé à l'admin — La diffusion via code DOIT être protégée par une vérification admin. Utilisez toujours Bs.isAdmin(adminId) avant d'appeler Bs.broadcastNow().

Méthodes disponibles

MéthodeRetourDescription
Bs.isAdmin(adminId)boolVérifie si l'utilisateur courant est l'admin (compare user.id avec adminId)
Bs.getUsers()dict / objectStatistiques des utilisateurs du bot (total, actifs, langue, pays…)
Bs.getBroadcastsRemaining()int (-1 = illimité)Nombre de diffusions restantes ce mois selon le plan
Bs.broadcastNow(message, adminId, opts?)dict / objectLance une diffusion à tous les utilisateurs du bot

Exemple JavaScript (BSJS)

// ID Telegram de l'admin (remplacez par votre vrai ID) const ADMIN_ID = 123456789; // Vérification admin OBLIGATOIRE if (!Bs.isAdmin(ADMIN_ID)) { Bot.sendMessage("⛔ Accès refusé."); return; } // Vérifier les diffusions restantes const remaining = await Bs.getBroadcastsRemaining(); if (remaining === 0) { Bot.sendMessage("⚠️ Quota de diffusion épuisé pour ce mois."); return; } // Voir les stats utilisateurs const stats = await Bs.getUsers(); Bot.sendMessage(`📊 ${stats.total} utilisateurs (${stats.active_30d} actifs)`); // Lancer la diffusion const result = await Bs.broadcastNow( "📣 Nouvelle annonce pour tous les utilisateurs !", ADMIN_ID, { parse_mode: "HTML" } ); Bot.sendMessage(`✅ Diffusion lancée — ${result.sent || 0} envois`);

Exemple Python (BSPy)

# ID Telegram de l'admin (remplacez par votre vrai ID) ADMIN_ID = 123456789 # Vérification admin OBLIGATOIRE if not Bs.is_admin(ADMIN_ID): Bot.sendMessage("⛔ Accès refusé.") else: # Vérifier les diffusions restantes remaining = Bs.get_broadcasts_remaining() if remaining == 0: Bot.sendMessage("⚠️ Quota de diffusion épuisé pour ce mois.") else: # Stats utilisateurs stats = Bs.get_users() Bot.sendMessage(f"📊 {stats['total']} utilisateurs ({stats.get('active_30d', '?')} actifs)") # Lancer la diffusion result = Bs.broadcast_now( "📣 Nouvelle annonce pour tous les utilisateurs !", ADMIN_ID, ) Bot.sendMessage(f"✅ Diffusion lancée — {result.get('sent', 0)} envois")

Options de broadcastNow()

OptionTypeDescription
parse_modestring"HTML" ou "MarkdownV2" (défaut : texte brut)
photostringURL d'une image à joindre au message
disable_previewboolDésactiver l'aperçu des liens (true / false)
💡 Quota diffusion — Chaque appel à Bs.broadcastNow() consomme 1 diffusion du quota mensuel (visible dans l'onglet Diffusion de l'application). Utilisez Bs.getBroadcastsRemaining() pour vérifier avant d'envoyer.