Bots Fonachat
Crée des bots pour ton entreprise, ta communauté ou tes services : réponses automatiques, commandes, alertes, quiz… L'API est volontairement proche de celle des bots Telegram : si tu connais l'une, tu connais l'autre.
1. Créer un bot
Dans l'appli : Moi → Réglages → Mes bots. Choisis un nom et un nom d'utilisateur qui se termine par bot (ex. meteo_abidjan_bot). Tu reçois un jeton secret de la forme XXXXXXXXXXXXXXXX:YYYY…. Ne le partage jamais : il donne le contrôle du bot. Tu peux en générer un nouveau à tout moment (l'ancien cesse alors de fonctionner).
2. Appeler l'API
https://fonachat.fitoumi.workers.dev/bot<JETON>/<méthode>
Requêtes GET (paramètres dans l'adresse) ou POST (corps JSON). Réponse : { "ok": true, "result": … } ou { "ok": false, "error_code": …, "description": "…" }.
| Méthode | Paramètres | Rôle |
|---|---|---|
getMe | — | Informations sur ton bot. |
getUpdates | offset, limit | Messages reçus. Passe offset = dernier update_id + 1 pour confirmer les précédents. |
sendMessage | chat_id, text, reply_markup.keyboard (facultatif) | Répond à une personne. Les boutons du clavier s'affichent sous la conversation. |
setWebhook | url (https) | Reçois chaque message instantanément par une requête POST sur ton serveur. |
deleteWebhook | — | Revient au mode getUpdates. |
3. Exemple : un bot qui répond
const API = "https://fonachat.fitoumi.workers.dev/bot" + process.env.JETON;
let offset = 0;
while (true) {
const { result } = await (await fetch(`${API}/getUpdates?offset=${offset}`)).json();
for (const u of result) {
offset = u.update_id + 1;
await fetch(`${API}/sendMessage`, {
method: "POST", headers: { "Content-Type": "application/json" },
body: JSON.stringify({ chat_id: u.message.chat.id, text: "Bonjour " + u.message.from.first_name + " 👋",
reply_markup: { keyboard: [["Menu", "Horaires"], ["Contact"]] } }),
});
}
await new Promise((r) => setTimeout(r, 1500));
}
4. Règles
- Un bot ne peut écrire qu'aux personnes qui lui ont écrit d'abord : pas de messages non sollicités.
- Le
chat_idest propre à chaque bot : il ne révèle jamais l'identité Fonachat de la personne. - Les conversations avec un bot ne sont pas chiffrées de bout en bout (le bot doit les lire) ; l'utilisateur en est informé.
- 600 requêtes par minute et par bot au plus. Les bots qui spamment, arnaquent ou enfreignent les conditions sont supprimés.