Guide de Déploiement
Initialisez votre instance DTAMTECH MD sur l'infrastructure de votre choix. Conçu pour exécuter des scripts automatisés, gérer les sessions multi-appareils et supporter les charges intenses.
Prérequis Système & Outils
DTAMTECH MD repose sur une pile JavaScript moderne exécutée via Node.js et interfacée avec FFmpeg pour le transcodage multimédia (stickers vidéo, messages audio PTT, conversion Opus).
Environnement d'exécution JavaScript serveur. Versions LTS fortement recommandées.
Gestionnaire de version nécessaire au clonage et aux mises à jour automatiques.
Outil indispensable pour les animations WebP, formats voix et stickers animés.
Choisir la Plateforme de Déploiement
Sélectionnez votre environnement cible. Chaque méthode propose une installation optimisée et testée en conditions de production.
L’image officielle DTAMTECH MD V4 inclut Node.js 20-slim, FFmpeg préinstallé et les volumes persistants pour les sessions Baileys et la base SQLite.
version: '3.8'
services:
bot:
build: .
container_name: dtamtech-md
restart: unless-stopped
ports:
- "3000:3000"
volumes:
- ./src/auth_info_baileys:/app/src/auth_info_baileys
- ./src/db:/app/src/db
- ./temp:/app/temp
environment:
- NODE_ENV=production
- PORT=3000
env_file:
- .envConfiguration (.env)
Créez un fichier nommé .env à la racine du projet en copiant .env.example. Remplissez scrupuleusement les champs ci-dessous.
| Variable | Type | Exemple | Description | Copier |
|---|---|---|---|---|
| PREFIX | String | . | Caractère déclencheur des commandes (options: . ! / # $ * + - ? ~). | |
| BOT_LANG | Enum | fr | en | Langue principale du bot et des messages système. | |
| PRESENCE_SIMULATION | Boolean | true | Simulation de présence humaine (typing/composing) avant envoi (mesure antiban clé). | |
| WARN_LIMIT | Number | 3 | Nombre maximal d’avertissements avant exclusion automatique d’un membre. | |
| REJECT_CALL | Boolean | false | Rejet automatique des appels vocaux et vidéo entrants sur WhatsApp. | |
| AUTO_STATUS_VIEW | Boolean | false | Consultation automatique des statuts WhatsApp publiés par vos contacts. | |
| AUTO_READ | Boolean | false | Marquage automatique des messages reçus comme lus (double coche bleue). | |
| ALWAYS_ONLINE | Boolean | false | Maintient l’état WhatsApp du bot continuellement 'en ligne'. | |
| STICKER_PACKNAME | String | DTAMTECH | Nom du pack attaché aux autocollants générés (métadonnées EXIF). | |
| ANTI_DELETE | Enum | off | chat | pms | all | Mode de récupération et d’alerte en cas de message supprimé. | |
| ANTI_BOT | Boolean | false | Détection et expulsion automatique d’autres bots concurrents dans les groupes. | |
| AI_PROVIDER | Enum | gemini | groq | Moteur d’intelligence artificielle conversationnelle par défaut. | |
| GEMINI_API_KEY | String | AIzaSyD... | Clé d’API Google Gemini pour les commandes .ai, .gemini et .flux. | |
| GROQ_API_KEY | String | gsk_... | Clé d’API Groq Cloud pour des inférences ultra-rapides. | |
| API_MODE | Enum | false | true | only | Mode passerelle API REST Fastify (false: désactivé, true: bot+API, only: API seule). | |
| API_KEY | String | dtam_secret_bearer_token | Jeton d’authentification Bearer pour protéger les routes de l’API REST. | |
| PORT | Number | 3000 | Port HTTP d’écoute du serveur Fastify et du Dashboard. | |
| DASHBOARD_PASSWORD | String | SuperMotDePasse2025 | Mot de passe administrateur pour accéder au Dashboard web. | |
| BACKUP_PASSPHRASE | String | MaCleSecreteAES256 | Passphrase de chiffrement AES-256-GCM pour les archives de sauvegarde. | |
| AUTO_UPDATE_CHECK | Boolean | true | Vérification quotidienne automatique des nouveaux commits GitHub avec alerte WhatsApp. |
Authentification WhatsApp Multi-Device
Deux méthodes sont disponibles pour lier votre compte WhatsApp. La méthode du Pairing Code est recommandée car elle s'effectue directement sur votre téléphone sans recourir à un écran secondaire.
Le bot demande votre numéro de téléphone dans la console puis génère une clé temporaire à 8 caractères alphanumériques.
- Ouvrez WhatsApp sur votre smartphone.
- Allez dans Paramètres > Appareils connectés.
- Appuyez sur Connecter un appareil > Lier avec un numéro.
- Saisissez le code affiché dans le terminal.
Le terminal imprime un code QR matriciel ASCII directement dans la console stdout.
- Ouvrez Appareils connectés sur WhatsApp.
- Pointez l'appareil photo vers votre terminal.
- La session se synchronise automatiquement.
Lancement & Vérification
Une fois le code validé, la console affiche la séquence d'initialisation des modules et établit la connexion persistante via WebSockets.
[10:42:01] [INFO] Initialisation du moteur Baileys Multi-Device...
[10:42:02] [INFO] Chargement des modules : 64 plugins activés avec succès.
[10:42:03] [SUCCESS] Connexion établie avec les serveurs WhatsApp !
[10:42:03] [SUCCESS] Connecté en tant que: +33 6 12 34 56 78 (DTAMTECH MD)
[10:42:04] [READY] Tapez .ping ou .menu dans une conversation pour tester..pingRésolution des Pannes (Troubleshooting)
Problèmes courants rencontrés lors de l'exécution et solutions recommandées par notre communauté.
Ce code indique que la session WhatsApp a été révoquée depuis le smartphone hôte ou que le protocole Multi-Device nécessite une resynchronisation. Supprimez le dossier local ./src/auth_info_baileys et relancez 'npm start' pour générer un nouveau Pairing Code.
rm -rf ./src/auth_info_baileys && npm start