Teams : avertir automatiquement les participants qu’une réunion est transcrite par un service tiers (Fireflies.ai, bots & Power Automate)

Comment notifier automatiquement les participants qu’une réunion Microsoft Teams est transcrite par un service tiers (ex. Fireflies.ai) ? Voici un guide opérationnel : options, architecture type d’un bot, automatisations no‑code et bonnes pratiques de conformité.

Sommaire

Contexte et objectif

De nombreuses organisations utilisent des services de prise de notes et de transcription comme Fireflies.ai au sein de réunions Microsoft Teams, sans activer l’enregistrement/transcription natif de Teams. Problème : dans ce cas, Teams n’affiche pas automatiquement la bannière « Enregistrement en cours » ni d’alerte sonore au démarrage de la transcription par un bot externe. L’objectif est donc de prévenir de manière systématique tous les participants — au début de la réunion et lors de chaque entrée ou ré‑entrée — qu’un enregistrement/transcription par un service tiers est actif.

Pourquoi c’est délicat par défaut

  • Alerte native limitée : la bannière/hint acoustique de Teams apparaît uniquement lorsque l’enregistrement ou la transcription natifs de Teams sont activés (ou via enregistrement de conformité).
  • Transcription tierce : lorsqu’un bot externe rejoint la réunion pour « écouter », Teams ne signale pas automatiquement la capture audio/texte aux autres participants.
  • Risque de non‑conformité : suivant la juridiction (RGPD, CCPA, certaines lois nationales), le consentement ou, a minima, l’information claire et préalable des participants peut être requis.

Panorama des solutions

Quatre pistes complémentaires permettent de couvrir les besoins de notification et de conformité :

PisteDescriptionPoints clés / limites
Utiliser un bot Microsoft Teams dédiéDévelopper (ou faire développer) un bot via Microsoft Bot Framework + Microsoft Graph qui : (1) détecte le démarrage de la réunion et/ou l’arrivée du bot tiers, (2) poste un message dans le chat de la réunion, (3) répète l’avertissement à chaque join/rejoin (participants ajoutés), (4) optionnel : diffuse un court message vocal via les API « calls ».Intégration la plus fiable et personnalisable ; couvre chat et, si besoin, audio ; nécessite des compétences de développement et une publication d’application Teams ; maintenance continue.
Automatisation sans code (Power Automate / Zapier / Make)Créer un flux « Quand Fireflies (ou le calendrier) signale le début de réunion → publier un message dans le chat de la réunion ». Idéal pour un time‑to‑value rapide sans code.Mise en place simple ; bon pour les messages texte/cartes adaptatives ; pas d’annonce vocale ; résolution du chat de réunion (ID) nécessaire ; un léger délai d’exécution est possible.
Fonctionnalités intégrées de conformité TeamsActiver la Transcription Teams pour bénéficier de la bannière native ou utiliser une stratégie d’enregistrement de conformité (secteurs réglementés) qui force l’avertissement visuel et sonore.Avertissement garanti et traçable ; nécessite d’accepter l’enregistrement/transcription natifs et/ou des licences spécifiques ; pas de personnalisation du message.
Message d’accueil du lobby / invitationInclure dans l’invitation et l’écran d’attente (lobby) un message permanent du type « Cette réunion est transcrite par un service tiers » + lien interne vers la politique confidentialité.Bons rappels avant l’entrée en réunion ; ne couvre pas automatiquement les entrées tardives ni le redémarrage d’une transcription en cours de route.

Recommandations prioritaires

  1. Privilégier un bot dédié si vous souhaitez une alerte automatique, immédiate, récurrente et avec preuve auditable (message horodaté dans le chat + log technique).
  2. Documenter la pratique : intégrer le texte légal dans l’invitation et une carte adaptative récapitulative en ouverture de réunion (politique de confidentialité interne, base légale, contact DPO).
  3. Régler la solution tierce : activer tout paramètre du service (ex. Fireflies.ai) permettant d’envoyer un message au chat, une notification d’arrivée, ou un son discret.
  4. Désigner un co‑animateur chargé de rappeler verbalement l’enregistrement si jamais l’automatisation échoue (principe de défense en profondeur).
  5. Vérifier la conformité locale (consentement vs information) et adapter le script d’avertissement ; certains pays exigent un consentement explicite.

Option bot Teams : architecture et mise en œuvre

Architecture de référence

  • Bot : application Teams publiée pour votre tenant (manifest + Bot Framework), identifiée par un App ID Azure AD.
  • Webhook/événements : le bot reçoit les événements de conversation (démarrage de réunion, participants ajoutés, messages).
  • Service d’orchestration : logique métier (règles d’avertissement, anti‑spam, langues, exemptions), stockage (journaux, preuves d’envoi, consentements).
  • Connecteurs : intégrations éventuelles (webhook de Fireflies.ai, systèmes de conformité, SIEM).

Flux type

  1. Début de réunion : le bot est notifié de l’ouverture (ou se joint automatiquement si vous optez pour une présence en réunion). Il identifie le chat de la réunion.
  2. Alerte initiale : le bot publie immédiatement un message clair dans le chat (texte et/ou carte adaptative) signalant la transcription par un tiers.
  3. Entrées/ré‑entrées : à chaque participant ajouté, le bot envoie un message individuel (mention) ou un message contextuel pour rappeler l’enregistrement en cours.
  4. Option audio : le bot peut jouer une brève annonce vocale en début de réunion (utile pour les participants PSTN/salles qui voient peu le chat).
  5. Journalisation : chaque envoi est horodaté et conservé (ID de réunion, de message, liste des destinataires) pour audit.

Prérequis techniques

  • Enregistrer une application dans Azure AD (permissions pour Teams/Graph appropriées).
  • Créer la ressource « bot » (canal Microsoft Teams) et packager le manifeste Teams (scopes groupChat/team/meeting selon le scénario).
  • Exposez des URL d’endpoint sécurisés (HTTPS) pour recevoir les événements du Bot Framework.
  • Si vous ciblez l’annonce vocale, préparez l’intégration aux API d’appels (service multimédia adapté).

Événements utiles côté bot

  • Démarrage de conversation de réunion : permet de poster l’alerte initiale.
  • Participants ajoutés/removals : déclenche un rappel automatique pour toute nouvelle personne (ou retour après coupure réseau).
  • Messages (pour commande /consent ou /help) : utiles pour recueillir/consigner un accord explicite lorsque requis.

Anti‑bruit et bonnes pratiques

  • Déduplication : conservez un cache des participants notifiés pour ne pas spammer lors de re‑connexions fréquentes.
  • Fréquence : un message global en ouverture, puis un rappel discret (mention) uniquement pour les nouveaux arrivants.
  • Langue : détectez la langue de l’invitation/tenant pour poster le message en FR/EN, etc.
  • Accessibilité : phrase courte, claire, sans jargon ; taille de police et contraste suffisants dans la carte.

Exemple de contenu d’avertissement

Cette réunion est transcrite par un service tiers (ex. Fireflies.ai).
Les échanges peuvent être enregistrés à des fins de compte rendu et d’amélioration.
Si vous ne consentez pas, coupez votre micro/caméra et informez l’animateur.
Politique de confidentialité interne : voir intranet.

Exemple de carte adaptative

{
  "type": "AdaptiveCard",
  "version": "1.4",
  "body": [
    { "type": "TextBlock", "weight": "Bolder", "size": "Medium",
      "text": "Transcription par un service tiers en cours" },
    { "type": "TextBlock", "wrap": true,
      "text": "Cette réunion est transcrite par un bot tiers (ex. Fireflies.ai). "
              + "Vos interventions peuvent être enregistrées et analysées." },
    { "type": "FactSet", "facts": [
      { "title": "Finalité :", "value": "Compte rendu & suivi d’actions" },
      { "title": "Base légale :", "value": "Intérêt légitime/consentement" },
      { "title": "Contact DPO :", "value": "dpo@votre‑entreprise" }
    ]}
  ],
  "actions": [
    { "type": "Action.Submit", "title": "J’ai compris" },
    { "type": "Action.Submit", "title": "Je refuse", "data": { "refuse": true } }
  ]
}

Détection des nouveaux arrivants

Abordez le cas des retours réseau (reconnections) et des invités tardifs. Conservez un journal participantId → timestamp dernière notification et n’envoyez un rappel que si :

  • le participant n’a jamais été notifié, ou
  • la dernière notification date de plus de x minutes (fenêtre glissante paramétrable).

Exemple de pseudo‑code (Node.js)

// Gestion du début de conversation (réunion)
onConversationUpdate(context) {
  if (context.activity.channelData?.meeting) {
    const chatId = context.activity.conversation.id;
    await postInitialNotice(chatId); // message/carte adaptative
  }
}

// Gestion des nouveaux membres (join/rejoin)
onMembersAdded(context) {
const chatId = context.activity.conversation.id;
const members = context.activity.membersAdded || \[];
for (const m of members) {
if (isUser(m) && shouldNotify(m.id, chatId)) {
await postReminderMention(chatId, m.id);
rememberNotified(m.id, chatId);
}
}
} 

Annonce vocale (facultatif)

Pour couvrir les participants qui ne regardent pas le chat (PSTN, salles), vous pouvez faire rejoindre le bot à l’audio et jouer un prompt d’environ 3–5 secondes en ouverture. Gardez ce message sobre et unique pour éviter toute gêne.

Preuve et audit

  • Stockez l’ID de la réunion, les messages envoyés (ID de message), la liste des destinataires et les réponses (ex. bouton « J’ai compris »).
  • Conservez ces journaux selon votre politique de rétention (ex. 90 jours) et assurez la purge automatique.

Option sans code : Power Automate / Zapier / Make

Cas d’usage réaliste

Vous souhaitez une première solution time‑to‑value rapide sans développer : un flux déclenche un message au début de la réunion (ou lorsque Fireflies.ai signale le lancement), puis poste une carte dans le chat.

Power Automate : scénario type

  1. Déclencheur : « Événement Outlook » à l’heure de début, ou webhook d’un service tiers (si disponible).
  2. Résolution du chat : appelez Microsoft Graph via l’action « HTTP avec Azure AD » pour retrouver l’ID du chat de la réunion, puis poster le message via l’action Teams correspondante.
  3. Message : texte + carte adaptative (voir exemple) avec mention de l’enregistrement tiers.
  4. Rappels : planifiez un second envoi 2–3 minutes après le début pour couvrir les arrivées tardives (faute d’événement join natif côté Power Automate).

Zapier/Make : scénario type

  • Départ : déclencheur « Nouvelle réunion/notes créées » ou « Bot rejoint » (selon les intégrations proposées par votre service de transcription).
  • Action : envoyer un message dans un canal ou un chat Teams prédéfini (attention : la publication dans le chat de réunion non‑canal peut demander un contournement via Graph).
  • Limitation : pas d’annonce vocale ; granularité d’identification des nouveaux participants limitée.

Option intégrée : transcription/recording Teams

Si votre politique interne l’autorise, activer la Transcription Teams (ou l’enregistrement natif) garantit l’affichage des bannières d’alerte et des signaux sonores. En environnements réglementés, les solutions d’enregistrement de conformité apportent des garanties renforcées (forçage de l’avertissement, verrouillage des paramètres, archivage). Le compromis : message moins personnalisable et dépendance aux licences.

Option complémentaire : message d’invitation et lobby

Ajoutez un texte standard dans vos modèles d’invitation, vos pages de lobbying et vos documents de gouvernance. Cela ne remplace pas l’alerte dynamique en réunion, mais « pré‑notifie » et limite les surprises.

Modèles prêts à copier

ContexteTexte suggéré
Invitation« Cette réunion pourra être transcrite par un service tiers (ex. Fireflies.ai). En rejoignant, vous acceptez que vos interventions puissent être traitées aux fins de compte rendu. Contact DPO : dpo@votre‑entreprise. »
Lobby« Avis : transcription/prise de notes automatisée en cours dans cette réunion. Si vous ne consentez pas, veuillez en informer l’animateur. »

Comparatif rapide

CritèreBot dédiéAutomatisation no‑codeFonction Teams intégréeMessage invitation/lobby
Annonce initialeImmédiate, personnalisableRapide (parfois délai court)Immédiate (bannière native)Avant réunion uniquement
Rappel nouveaux entrantsOui (événements join)Limité / indirectOui (bannière continue)Non
Annonce vocaleOui (optionnel)NonOui (selon param.)Non
Effort de mise en œuvreÉlevéFaible à moyenMoyen (politique/licences)Très faible
Traçabilité/AuditExcellente (logs message + consent)Bonne (logs du flux)Bonne (journaux Teams)Faible

Conformité : points d’attention

  • Base légale : intérêt légitime documenté ou consentement explicite. Évitez d’enregistrer sans motif légitime clair.
  • Information : utilisez des messages courts, compréhensibles, et visibles. Répétez pour les arrivants tardifs.
  • Droits des personnes : prévoyez une procédure de rectification/suppression des transcriptions si nécessaire.
  • Minimisation : excluez les salles/sessions où l’enregistrement n’est pas justifié (1‑to‑1 sensibles, HR, etc.).
  • Rétention : évitez de garder indéfiniment les transcriptions ; définissez une durée et automatisez la purge.

Feuille de route conseillée

  1. Semaines 1–2 : cadrage (juridique, sécurité, UX), validation des messages types FR/EN, choix de l’option (bot vs no‑code).
  2. Semaines 3–4 : POC (bot minimal viable ou flux Power Automate), tests techniques (réunions canal/perso, rejointures, PSTN, salles).
  3. Semaines 5–6 : durcissement (anti‑spam, logs, surveillance), formation des animateurs, documentation sur l’intranet.
  4. Semaines 7+ : déploiement progressif, métriques (taux de rappel envoyés, incidents), itérations.

FAQ

Le service de transcription envoie‑t‑il déjà un message ?
Certains bots affichent un message à leur arrivée, mais ce n’est ni garanti, ni personnalisable, ni répété aux nouveaux arrivants. Un bot dédié garde la main.

Comment gérer les invités anonymes/PSTN ?
Complétez le message chat par une courte annonce vocale au démarrage. Pour les anonymes, mentionnez explicitement les limites de confidentialité.

Et si la transcription commence en cours de réunion ?
Le bot peut réagir à l’événement ou au webhook du service tiers et envoyer un message « La transcription vient de démarrer » avec horodatage.

Réunions canal vs réunions « calendrier » ?
Pour les réunions canal, publiez dans le fil du canal associé. Pour les réunions calendrier (chat de réunion), publiez via l’ID de chat de la réunion.

Et si un participant refuse ?
Documentez le processus (mise en sourdine, déconnexion, alternatives) et conservez la trace du refus via bouton/cmd dans la carte.

Checklist de mise en production

  • ✅ Messages approuvés par juridique/DPO (FR/EN + variantes).
  • ✅ Bot/flux capables d’identifier le chat de réunion et d’envoyer un message en < 3 s.
  • ✅ Rappels aux nouveaux arrivants (anti‑doublons paramétré).
  • ✅ Option audio validée pour PSTN/salles.
  • ✅ Journalisation horodatée + politique de rétention.
  • ✅ Procédure de secours (rappel verbal par l’animateur).
  • ✅ Formation courte des organisateurs et co‑animateurs.

Conclusion

En l’absence d’une application prête à l’emploi couvrant tous les cas, la combinaison bot Teams dédié (alerte initiale + rappels + preuve) et automatisations no‑code (déploiement rapide, messages standardisés) constitue aujourd’hui l’approche la plus complète et maîtrisable pour informer systématiquement les participants qu’une transcription par un service tiers (ex. Fireflies.ai) est en cours. Ajoutez la couche « gouvernance » (textes légaux, politique de rétention, formation animateurs) et, si votre contexte l’exige, exploitez les capabilities natives de Teams (transcription/enregistrement/recording de conformité) pour un dispositif robuste et conforme.

Sommaire