Importer des messages dans des conversations et des canaux Microsoft Teams à l’aide de Microsoft Graph

Cet article explique comment importer des messages dans une conversation ou un canal Microsoft Teams existant pendant une session de migration à l’aide de Microsoft Graph. L’importation de messages est destinée aux scénarios de migration et nécessite que la conversation ou le canal cible soit placé en mode migration avant que vous puissiez importer du contenu.

Quand utiliser l’importation de messages

Utilisez l’importation de messages lorsque vous devez :

  • Migrez les messages historiques vers une conversation ou un canal Teams existant.
  • Conservez l’attribution de l’auteur d’origine (de qui provient le message).
  • Si vous le souhaitez, conservez (ou définissez) un horodatage historique pour chaque message.

Configuration requise

Pour utiliser l’API de messagerie Teams pour importer des messages, les conditions suivantes doivent être remplies :

  • Contexte d’application uniquement (application) : la demande doit être effectuée à l’aide des autorisations de l’application.
  • Autorisation requise : l’application appelante doit disposer de l’autorisation d’application Teamwork.Migrate.All .
  • Le mode de migration doit être activé sur la cible :
  • L’attribution de l’auteur est requise : définissez la propriété from pour attribuer le message importé à un utilisateur qui appartient au même locataire que l’application authentifiée.
  • Règles d’horodatage facultatives (si vous spécifiez createdDateTime) : vous pouvez définir un horodatage personnalisé pour le message importé, mais il doit respecter les contraintes suivantes :
    • La valeur doit être postérieure à la valeur createdDateTime de la conversation ou du canal cible.
    • La valeur ne doit pas être à l’avenir.
    • La valeur doit être unique jusqu’à la milliseconde dans la conversation ou le canal cible. Si un message avec le même createdDateTime existe, la requête échoue avec 409 Conflict; ajustez la valeur et réessayez.

Remarque

  • Seule l’application qui a appelé startMigration sur le canal cible ou startMigration sur la conversation cible peut y importer des messages. Aucune autre application ne peut demander cette API sur le canal ou discuter tant que l’application propriétaire n’a pas terminé la migration en appelant le canal : completeMigration ou chat : completeMigration.
  • Certains messages importés peuvent ne pas être visibles dans le client Teams tant que la migration n’est pas terminée en appelant completeMigration sur le canal cible ou completeMigration sur la conversation cible.

Résolution des problèmes

409 Conflit lors de l’importation d’un message

La valeur createdDateTime doit être unique jusqu’à la milliseconde dans la conversation ou le canal cible. Si un message avec le même createdDateTime existe, la requête échoue avec 409 Conflict. Ajustez createdDateTime et réessayez la requête.