Microsoft Teams — Chat d'Entreprise
Microsoft Teams — Chat d'Entreprise — guide facile à comprendre basé sur la documentation officielle
Pensez à connecter Hermes Agent à Microsoft Teams comme à donner un badge d’entreprise à votre assistant IA — une fois qu’il fait partie de l’équipe, il peut rejoindre les réunions, répondre aux questions dans les canaux et aider dans les messages privés, le tout sans quitter l’application que vos collègues utilisent déjà tous les jours.
Pourquoi Teams est différent de Slack
Si vous avez déjà utilisé le Socket Mode de Slack, sachez que Teams fonctionne un peu différemment. Au lieu de maintenir une connexion ouverte, Teams appelle le webhook public de votre bot à chaque fois que quelqu’un envoie un message. Cela signifie que votre instance Hermes a besoin d’une URL HTTPS publique — pas de localhost. Pour les tests, vous pouvez utiliser un tunnel ; pour la production, vous la pointerez vers le domaine de votre vrai serveur.
Comment se comporte le bot
Voici la règle simple à retenir :
| Où vous lui parlez | Ce qui se passe |
|---|---|
| Chat personnel (DM) | Le bot répond à chaque message — pas besoin de le mentionner avec @ |
| Chat de groupe | Le bot ne répond que lorsque vous le mentionnez avec @ |
| Canal | Le bot ne répond que lorsque vous le mentionnez avec @ |
Teams envoie les mentions @ sous forme de balises <at>NomDuBot</at>, mais Hermes les supprime automatiquement avant de les traiter — vous n’avez donc pas à vous en soucier.
Étape 1 : Installer la CLI Teams
Tout d’abord, installez l’outil en ligne de commande de Microsoft qui automatise l’enregistrement des bots — pas besoin du portail Azure :
npm install -g @microsoft/teams.cli@preview
teams login
Pour vérifier votre connexion et trouver votre ID d’objet AAD (dont vous aurez besoin plus tard pour restreindre l’accès), exécutez :
teams status --verbose
Étape 2 : Exposer le port du webhook
Teams ne peut pas livrer de messages à localhost. Pour le développement local, utilisez un tunnel pour obtenir une URL HTTPS publique. Le port par défaut est 3978 (modifiable avec TEAMS_PORT si nécessaire).
Voici trois options simples :
# devtunnel (Microsoft)
devtunnel create hermes-bot --allow-anonymous
devtunnel port create hermes-bot -p 3978 --protocol https
devtunnel host hermes-bot
# ngrok
ngrok http 3978
# cloudflared
cloudflared tunnel --url http://localhost:3978
Copiez l’URL https:// de la sortie — vous en aurez besoin à l’étape suivante. Laissez le tunnel tourner pendant que vous développez.
Étape 3 : Créer le bot
Enregistrez maintenant votre bot auprès de Teams :
teams app create \
--name "Hermes" \
--endpoint "https://<votre-url-tunnel>/api/messages"
La CLI affichera votre CLIENT_ID, CLIENT_SECRET et TENANT_ID, ainsi qu’un lien d’installation. Enregistrez immédiatement le secret client — il ne sera plus affiché.
Étape 4 : Configurer les variables d’environnement
Ajoutez ceci à votre fichier ~/.hermes/.env :
# Requis
TEAMS_CLIENT_ID=<votre-client-id>
TEAMS_CLIENT_SECRET=<votre-client-secret>
TEAMS_TENANT_ID=<votre-tenant-id>
# Restreindre l'accès à des utilisateurs spécifiques (recommandé)
# Utilisez les ID d'objet AAD de `teams status --verbose`
TEAMS_ALLOWED_USERS=<votre-id-objet-aad>
Étape 5 : Démarrer la passerelle
Si vous utilisez Docker, exécutez depuis le répertoire qui contient docker-compose.yml (généralement votre dépôt hermes-agent cloné, pas ~) :
cd /path/to/hermes-agent
HERMES_UID=$(id -u) HERMES_GID=$(id -g) docker compose up
Pour les installations depuis les sources, assurez-vous d’inclure d’abord l’extension Teams :
uv sync --extra teams
# ou, pour les installations modifiables :
uv pip install -e ".[teams]"
Pour conclure
Connecter Hermes à Teams est une danse en quatre étapes : installer la CLI, exposer une URL publique, créer le bot et définir vos variables d’environnement. Une fois qu’il tourne, votre assistant IA devient un membre à part entière de l’équipe — répondant automatiquement aux messages privés et rejoignant les conversations de groupe lorsqu’on l’appelle.
Astuce pratique : Commencez avec TEAMS_ALLOWED_USERS défini sur votre propre ID d’objet AAD uniquement. Ainsi, vous pouvez tester en toute sécurité sans craindre que des collègues au hasard déclenchent votre bot — puis élargissez l’accès une fois que vous êtes sûr que tout fonctionne.
📖 Documentation officielle
Cet article est basé sur la documentation officielle de Hermes Agent :Docs officiels › user-guide/messaging/teams