🛠️ 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 :
- 📦 Installer une copie de votre bot chez un autre utilisateur (par e-mail)
- 🔄 Cloner votre propre bot pour créer une copie dans votre compte
- ⚙️ Transmettre des propriétés personnalisées au nouveau bot
- 🚀 Lancer le bot automatiquement après le clonage
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 :
- Ouvrez votre bot dans l'application BotStrike
- Allez dans l'onglet Bibliothèques (icône 📚)
- Cherchez BsAdmin dans la liste
- Appuyez sur Installer
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
• 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ètre | Type | Requis | Description |
|---|---|---|---|
email | string | ✅ | E-mail de l'utilisateur cible (doit avoir un compte BotStrike) |
bot_id | number | ✅ | ID BotStrike du bot source à cloner |
token | string | ❌ | Token Telegram pour le nouveau bot (si différent) |
as_protected | boolean | ❌ | Installer le bot comme protégé |
bot_properties | array | ❌ | Propriétés à définir sur le nouveau bot |
run_now | boolean | ❌ | Démarrer le bot immédiatement après le clonage |
Exemple
// 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"}
]
})
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ètre | Type | Requis | Description |
|---|---|---|---|
bot_id | number | ✅ | ID BotStrike du bot source à cloner |
token | string | ❌ | Token Telegram pour le nouveau bot |
as_protected | boolean | ❌ | Cloner le bot comme protégé |
bot_properties | array | ❌ | Propriétés à définir sur le clone |
run_now | boolean | ❌ | Démarrer le clone immédiatement |
Exemple
// 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
})
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é | Type | Description |
|---|---|---|
name | string | Nom de la propriété |
value | string | Valeur de la propriété |
type | string | Type de la valeur (optionnel, défaut: "string") |
Exemple avec propriétés
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} !")
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.
// 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.
// 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
| Fonction | Description | Paramètre requis |
|---|---|---|
BsAdmin.installBot() |
Installe votre bot chez un autre utilisateur | email, bot_id |
BsAdmin.cloneBot() |
Clone votre propre bot | bot_id |
• 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()