Message Manager

Les opérateurs ne prennent pas en charge via les API LPS certaines fonctionnalités “standard” de client de messagerie comme par exemple:

  • sauvegarde du message envoyé dans le dossier “sent”
  • déplacement du message supprimé dans le dossier “trash”
  • sauvegarde du brouillon dans le dossier “draft”

Par défaut tout est géré par des flags dans le dossier INBOX (exception faite de la sauvegarde du message envoyé qui n’est pas faite)

Pour palier à ce problème, 2 modes de fonctionnement ont été mis en place:

  • Managed: Le connecteur crée automatiquement ces dossiers au moment de l’envoi, la suppression ou l’enregistrement de brouillon et déplace/sauvegarde le message dans le bon dossier.
  • No Managed: Le connecteur ne fait aucun traitement particulier et utilise le workflow de gestion des messages de l’opérateur. Ce dernier peut décider de tout laisser dans inbox et ne mettre que des flags pour distinguer les messages ou utiliser les dossiers comme dans le cas “Managed”

Ainsi par exemple dans le cas “No managed” avec un opérateur qui laisse tous les messages dans INBOX, pour avoir les messages du dossier draft, il faut rechercher les messages en précisant draft=true dans la query et sans préciser de folderId.

Ce type de fonctionnement est précisé dans la configuration d el’opérateur via le champ messageManagerActive:

GET {url}/mssante/v2/operators
[
  {
    "name": "medimail",
    "apiVersion": "2,",
    "messageManagerActive": true,
    "inboxFolderId": "INBOX",
    "trashFolderId": "TRASH",
    "draftFolderId": "DRAFT",
    "sentFolderId": "SENT",
    "withAllHeaders": true
  },
  {
    "name": "mailiz-v1",
    "apiVersion": "1,",
    "messageManagerActive": false,
    "inboxFolderId": "2",
    "trashFolderId": "3",
    "draftFolderId": "6",
    "sentFolderId": "5",
    "withAllHeaders": false
  }
  ...
]