4D Internet Commands v16

IMAP_SetFlags

Accueil

 
4D Internet Commands v16
IMAP_SetFlags

IMAP_SetFlags 


 

IMAP_SetFlags ( imap_ID ; premierMsg ; dernierMsg ; listeMarqMsg ; supprimerOption ) -> Résultat 
Paramètre Type   Description
imap_ID  Entier long in Référence de connexion IMAP
premierMsg  Entier long in Numéro du premier message
dernierMsg  Entier long in Numéro du dernier message
listeMarqMsg  Chaîne in Marqueurs à ajouter ou supprimer
supprimerOption  Entier in 0 = ajouter marqueur, 1 = supprimer marqueur
Résultat  Entier in Code d’erreur

La commande IMAP_SetFlags permet d’ajouter ou de supprimer en une opération plusieurs marqueurs attachés aux messages de l’intervalle défini.

Le protocole IMAP permet d’associer une liste de marqueurs à un message. Il existe deux types de marqueurs : les marqueurs permanents et les marqueurs de session.
Les marqueurs permanents sont ajoutés ou supprimés de manière durable parmi les marqueurs des messages (cf. commande IMAP_SetCurrentMB) ; autrement dit, toute modification d’un marqueur permanent sera conservée lors des sessions ultérieures.
Les modifications effectuées sur les marqueurs de session ne sont valides que pendant la session.

Les marqueurs système actuellement définis sont les suivants :

  • Seen : le message a été lu.
  • Answered : une réponse au message a été envoyée.
  • Flagged : le message est étiqueté “urgent” afin d’attirer l’attention.
  • Draft : le message est encore à l’état de brouillon.
  • Recent : le message a été reçu “récemment” dans la boîte aux lettres. Ce marqueur n’apparaît qu’au cours d’une seule session ; les sessions suivantes ne le verront pas. Ce marqueur permanent est géré par le serveur IMAP et ne peut pas être modifié par un client IMAP à l’aide de la commande IMAP_SetFlags, par exemple.

Certains serveurs IMAP permettent aux clients de définir des marqueurs personnalisés. Dans ce cas, les marqueurs additionnels sont appelés des mots-clés (keywords) et ne débutent pas par le caractère “\” (cf. commande IMAP_SetCurrentMB).

Note : Si vous positionnez le marqueur \Deleted puis refermez la session en exécutant la commande IMAP_SetCurrentMB, IMAP_CloseCurrentMB, IMAP_Delete ou IMAP_Logout, le message concerné sera supprimé définitivement.

imap_ID contient la référence d’une session ouverte avec IMAP_Login.

Le paramètre premierMsg désigne le numéro du premier message à examiner. Ce numéro représente la position d’un message dans la liste de tous les messages de la boîte aux lettres courante.

Le paramètre dernierMsg indique le numéro du dernier message à examiner. Ce numéro représente la position d’un message dans la liste de tous les messages de la boîte aux lettres courante.

Note : Si le paramètre premierMsg est supérieur au paramètre dernierMsg, les commandes IMAP_Delete, IMAP_MsgLstInfo, IMAP_MsgLst, IMAP_SetFlags, IMAP_GetFlags et IMAP_CopyToMB ne retournent pas d’erreur et ne font rien.

Vous pouvez passer un ou plusieurs marqueur(s) dans le paramètre listeMarqMsg. Si vous passez plusieurs marqueurs, ils doivent être séparés par des espaces (voir exemples ci-dessous).

Seuls les marqueurs permanents indiqués dans la liste marqPermanent pourront être modifiés (cf. commande IMAP_SetCurrentMB).

Le paramètre optionSuppr vous permet d’indiquer si vous souhaitez ajouter ou enlever le ou les marqueur(s) défini(s) dans le paramètre listeMarqMsg :

  • 0 = ajout du ou des marqueur(s)
  • 1 = suppression du ou des marqueur(s)

Définition des marqueurs \Answered et \Draft pour les messages compris entre StartMsg et EndMsg :

 msgFlagsName:="\Answered \Draft"
  ` \Answered et \Draft sont séparés par un espace
 IMAP_SetFlags(imap_ID;startMsg;endMsg;msgFlagsName;0)

Suppression du marqueur \Deleted pour les messages compris entre StartMsg et EndMsg, quel que soit l’état précédent de ce marqueur :

 msgFlagsName:="\Deleted"
 IMAP_SetFlags(imap_ID;startMsg;endMsg;msgFlagsName;1)

Définition du marqueur \Deleted pour les messages compris entre StartMsg et EndMsg, quel que soit l’état précédent de ce marqueur :

 msgFlagsName:="\Deleted"
 IMAP_SetFlags(imap_ID;startMsg;endMsg;msgFlagsName;0)
 IMAP_CloseCurrentMB(imap_ID)
  `Fermeture de la boîte aux lettres courante et suppression définitive des messages désignés

Définition du marqueur \Answered en fonction de la valeur de la case à cocher “CheckBoxAnswered” :

 $Error:=IMAP_SetFlags(vImap_ID;$msgNum;$msgNum;"\Answered";Num(CheckBoxAnswered=0))



Voir aussi  

IMAP_GetFlags
IMAP_SetCurrentMB

 
PROPRIÉTÉS 

Produit : 4D Internet Commands
Thème : IC IMAP Review Mail
Numéro : 88870

 
HISTORIQUE 

Créé : 4D Internet Commands 6.8.1

 
UTILISATION DE L'ARTICLE

4D Internet Commands ( 4D Internet Commands v16)