🌙
Introduction
Installation
Bot ID
installBot
cloneBot
Propriétés
Exemples
Récapitulatif

🛠️ BsAdmin — Installation & Clonage de bots

Installez votre bot chez d'autres utilisateurs ou clonez-le pour vous-même — idéal pour la distribution application, les templates de bots et les architectures multi-tenants

S1 — Introduction

BsAdmin est une bibliothèque BotStrike qui vous permet de :

Votre Bot
→
BsAdmin.installBot()
→
Copie chez l'utilisateur cible
💡 Cas d'usage : Vous avez créé un bot de gestion de commandes. Un client s'inscrit sur BotStrike et veut utiliser votre bot. Avec BsAdmin.installBot(), vous clonez votre bot directement dans son compte avec les paramètres adaptés.

S2 — Installation

Pour utiliser BsAdmin, vous devez l'installer depuis la bibliothèque :

  1. Ouvrez votre bot dans l'application BotStrike
  2. Allez dans l'onglet Bibliothèques (icône 📚)
  3. Cherchez BsAdmin dans la liste
  4. Appuyez sur Installer
✅ Après l'installation, les objets BsAdmin.installBot() et BsAdmin.cloneBot() sont disponibles dans vos commandes JavaScript et Python.

S3 — Bot ID (Identifiant BotStrike)

Chaque bot sur BotStrike possède un identifiant unique à 5 chiffres (à partir de 10000). Cet identifiant est visible dans l'application :

📍 Où trouver le Bot ID

Ouvrez votre bot dans l'application → section info du bot → ID Bot (BotStrike)

Exemple : ID Bot (BotStrike) : 10042

⚠️ Ne confondez pas :
• Bot ID Telegram — l'identifiant numérique Telegram (ex: 7123456789)
• Bot ID BotStrike — l'identifiant unique sur la plateforme BotStrike (ex: 10042)
C'est le Bot ID BotStrike qui est utilisé par BsAdmin.

S4 — BsAdmin.installBot()

Installe une copie de votre bot dans le compte d'un autre utilisateur identifié par son e-mail.

Paramètres

ParamètreTypeRequisDescription
emailstring✅E-mail de l'utilisateur cible (doit avoir un compte BotStrike)
bot_idnumber✅ID BotStrike du bot source à cloner
tokenstring❌Token Telegram pour le nouveau bot (si différent)
as_protectedboolean❌Installer le bot comme protégé
bot_propertiesarray❌Propriétés à définir sur le nouveau bot
run_nowboolean❌Démarrer le bot immédiatement après le clonage

Exemple

JavaScript
Python

// Installer votre bot chez un autre utilisateur
BsAdmin.installBot({
  email: "client@exemple.com",
  bot_id: 10042,
  token: "123456:ABCdefGHIjkl...",   // optionnel
  run_now: true,                      // démarrer directement
  bot_properties: [
    { name: "plan", value: "premium", type: "string" },
    { name: "max_users", value: "100", type: "string" }
  ]
});

# Installer votre bot chez un autre utilisateur
BsAdmin.installBot({
    "email": "client@exemple.com",
    "bot_id": 10042,
    "token": "123456:ABCdefGHIjkl...",   # optionnel
    "run_now": True,                      # démarrer directement
    "bot_properties": [
        {"name": "plan", "value": "premium", "type": "string"},
        {"name": "max_users", "value": "100", "type": "string"}
    ]
})
💡 Note : Vous ne pouvez installer que vos propres bots. Le bot source identifié par bot_id doit appartenir à votre compte. L'utilisateur cible doit avoir un compte BotStrike.

S5 — BsAdmin.cloneBot()

Clone votre propre bot pour créer une copie dans votre compte.

Paramètres

ParamètreTypeRequisDescription
bot_idnumber✅ID BotStrike du bot source à cloner
tokenstring❌Token Telegram pour le nouveau bot
as_protectedboolean❌Cloner le bot comme protégé
bot_propertiesarray❌Propriétés à définir sur le clone
run_nowboolean❌Démarrer le clone immédiatement

Exemple

JavaScript
Python

// Cloner votre propre bot
BsAdmin.cloneBot({
  bot_id: 10042,
  token: "789012:XYZabcDEF...",
  run_now: true
});

# Cloner votre propre bot
BsAdmin.cloneBot({
    "bot_id": 10042,
    "token": "789012:XYZabcDEF...",
    "run_now": True
})
⚠️ Token différent : Si le clone doit fonctionner comme un bot Telegram séparé, fournissez un token bot différent. Sinon, le clone sera créé sans token et devra être configuré manuellement.

S6 — Propriétés du bot

Le paramètre bot_properties permet de définir des propriétés personnalisées sur le nouveau bot lors de l'installation ou du clonage.

Format

Chaque propriété est un objet avec :

CléTypeDescription
namestringNom de la propriété
valuestringValeur de la propriété
typestringType de la valeur (optionnel, défaut: "string")

Exemple avec propriétés

JavaScript
Python

BsAdmin.installBot({
  email: "user@exemple.com",
  bot_id: 10042,
  bot_properties: [
    { name: "company_name", value: "Ma Société", type: "string" },
    { name: "welcome_msg", value: "Bienvenue chez nous !", type: "string" },
    { name: "max_orders", value: "500", type: "string" }
  ]
});

// Dans le code du bot cloné, lire les propriétés :
const company = Bot.getProp("company_name");
Bot.sendMessage(`Bienvenue chez ${company} !`);

BsAdmin.installBot({
    "email": "user@exemple.com",
    "bot_id": 10042,
    "bot_properties": [
        {"name": "company_name", "value": "Ma Société", "type": "string"},
        {"name": "welcome_msg", "value": "Bienvenue chez nous !", "type": "string"},
        {"name": "max_orders", "value": "500", "type": "string"}
    ]
})

# Dans le code du bot cloné, lire les propriétés :
company = Bot.getProp("company_name")
Bot.sendMessage(f"Bienvenue chez {company} !")
✅ Astuce : Utilisez les propriétés pour personnaliser le comportement du bot cloné sans modifier le code. Le bot lit ses propriétés avec Bot.getProp() et s'adapte automatiquement.

S7 — Exemples complets

Exemple 1 : Système application — Bot de commande

Un bot principal gère les inscriptions clients. Quand un client s'inscrit, il installe automatiquement le bot de commande chez le client.

JavaScript
Python

// Commande /deploy_client — installe le bot chez un client
// L'utilisateur envoie : /deploy_client email@client.com TOKEN

const args = message.split(" ");
const clientEmail = args[1];
const clientToken = args[2];

if (!clientEmail || !clientToken) {
  Bot.sendMessage("Usage : /deploy_client email token");
} else {
  const result = BsAdmin.installBot({
    email: clientEmail,
    bot_id: 10042,
    token: clientToken,
    run_now: true,
    bot_properties: [
      { name: "owner_email", value: clientEmail, type: "string" },
      { name: "plan", value: "starter", type: "string" }
    ]
  });

  if (result.success) {
    Bot.sendMessage(`✅ Bot installé pour ${clientEmail}\nID: ${result.bot_id}`);
  } else {
    Bot.sendMessage(`❌ Erreur : ${result.message}`);
  }
}

# Commande /deploy_client — installe le bot chez un client
# L'utilisateur envoie : /deploy_client email@client.com TOKEN

args = message.split(" ")
client_email = args[1] if len(args) > 1 else None
client_token = args[2] if len(args) > 2 else None

if not client_email or not client_token:
    Bot.sendMessage("Usage : /deploy_client email token")
else:
    result = BsAdmin.installBot({
        "email": client_email,
        "bot_id": 10042,
        "token": client_token,
        "run_now": True,
        "bot_properties": [
            {"name": "owner_email", "value": client_email, "type": "string"},
            {"name": "plan", "value": "starter", "type": "string"}
        ]
    })

    if result.get("success"):
        Bot.sendMessage(f"✅ Bot installé pour {client_email}\nID: {result['bot_id']}")
    else:
        Bot.sendMessage(f"❌ Erreur : {result.get('message')}")

Exemple 2 : Dupliquer son bot pour tester

Créez une copie de votre bot pour tester des modifications sans affecter la version production.

JavaScript
Python

// Commande /clone — crée une copie de test
const result = BsAdmin.cloneBot({
  bot_id: 10042,
  token: "NEW_BOT_TOKEN_HERE",
  bot_properties: [
    { name: "environment", value: "staging", type: "string" }
  ]
});

if (result.success) {
  Bot.sendMessage(`🔄 Clone créé ! Nouveau bot ID : ${result.bot_id}`);
} else {
  Bot.sendMessage(`❌ ${result.message}`);
}

# Commande /clone — crée une copie de test
result = BsAdmin.cloneBot({
    "bot_id": 10042,
    "token": "NEW_BOT_TOKEN_HERE",
    "bot_properties": [
        {"name": "environment", "value": "staging", "type": "string"}
    ]
})

if result.get("success"):
    Bot.sendMessage(f"🔄 Clone créé ! Nouveau bot ID : {result['bot_id']}")
else:
    Bot.sendMessage(f"❌ {result.get('message')}")

S8 — Récapitulatif

FonctionDescriptionParamètre requis
BsAdmin.installBot() Installe votre bot chez un autre utilisateur email, bot_id
BsAdmin.cloneBot() Clone votre propre bot bot_id
📌 Points importants :
• Vous ne pouvez installer/cloner que vos propres bots
• L'utilisateur cible pour installBot doit avoir un compte BotStrike
• Le Bot ID BotStrike est visible dans l'application (section info du bot)
• Les commandes du bot source sont automatiquement copiées
• Les propriétés transmises sont accessibles via Bot.getProp()
🔒 Sécurité : Les tokens bot Telegram sont des informations sensibles. Ne les exposez jamais dans des messages publics ou des logs. Utilisez les propriétés pour stocker les tokens si nécessaire.