Filtre : fonctions personnalisées de DRE

Fonction personnalisée

Zoho Mail Filters prend désormais en charge les fonctions personnalisées via Deluge Scripting dans Zoho Creator. Cela vous permet de personnaliser les conditions de filtres et les actions de filtrage à l'aide de plusieurs paramètres. Vous pouvez ainsi créer et écrire de scripts simples Deluge, créer des actions personnalisées et les définir comme des Conditions ou des Actions dans vos filtres, dans Zoho Mail. De plus, cela vous permet de configurer des flux de travail pouvant être déclenchés par des e-mails pour répondre à des conditions spécifiques et des actions personnalisables.

Fonctions de la galerie :

Les fonctions de la galerie sont des scripts prédéfinis qui sont à votre disposition pour être installés et utilisés directement. Certaines fonctions de la galerie nécessitent d'être légèrement personnalisées pour les appliquer à votre situation précise ou à certains cas d'utilisation. Ces fonctions prédéfinies servent également de référence pour la récupération des paramètres ou actions associés à la messagerie, quand vous écrivez vos propres scripts Deluge personnalisés. 

Étapes pour ajouter des actions personnalisées dans les filtres 

  1. Connectez-vous à Zoho Mail.
  2. Cliquez sur l'icône Settings .
  3. Accédez à la section Filters.
  4. Cliquez sur New Filter pour ajouter un nouveau filtre.
  5. Indiquez les conditions de base (exemple : Expéditeur/Objet, etc.)
  6. Dans les actions, sélectionnez « Custom function (Creator) » dans la liste déroulante. 
  7. Cliquez sur Select Function pour afficher la fenêtre contextuelle de l'éditeur de script Deluge. 
  8. Vous pouvez créer vos propres fonctions ou choisir une fonction de galerie ici. 
  9. Une fois que vous avez créé votre propre ensemble de fonctions, vous pouvez directement les choisir dans la zone Action. 

Zoho Mail dans Deluge

Zoho Mail offre certaines actions dans Deluge pour récupérer des informations sur les métadonnées de l'utilisateur actuel/les e-mails associés que vous pouvez récupérer via un script Deluge :

getFolders:
zoho.mail.getFolders()
Répertorie tous les dossiers d'un compte donné, en tant que map
PID-ParentID
ID- FolderID

getLabels:
zoho.mail.getLabels()
Répertorie tous les libellés des comptes donnés, en tant que map
ID- LabelID
COLOR in Hexadecimal

getMessage:
messageID est le paramètre requis.
zoho.mail.getMessage(mail_messageId)
Obtient les détails du message en tant que MAP.

Voici les paramètres disponibles dans MAP,

CC : adresse e-mail Cc 
RDT : date et heure de réception
BCC : adresse e-mail Cci
SENDER : adresse e-mail de l'expéditeur 
INREPLYTO : si l'e-mail est une réponse à un autre e-mail, l'ID de messagerie de l'e-mail d'origine est disponible dans ce paramètre. 
MAILID : ID de messagerie unique de cet e-mail. 
PRIORITY : priorité de réception de l'e-mail.  
FROM : adresse e-mail de l'expéditeur de l'e-mail
SENTTIME : date et heure d'envoi de l'e-mail
SENTTIMEINMILLIS : heure d'envoi convertie en millisecondes
SUBJECT : objet de l'e-mail
TO : adresse e-mail du destinataire de l'e-mail 
CONTENT : contenu de l'e-mail 
RETURNPATH : chemin de retour de l'e-mail, si l'e-mail est revenu. 

Exemple de sortie :

{MAILID=<15286cfac05.f8beb27b-358249608.6985583661857771020@somewhere.com>, SUBJECT="Wow this is amazing!", SENTTIME=Thu, 28 Jan 2016 11:28:22 +0530, SENDER=someone@somewhere.com, PRIORITY=3, SENTTIMEINMILLIS=1453940902000, TO= &lt;abc@mydomain.com&gt;, RDT=Thu, 28 Jan 2016 11:28:27 +0530, BCC=, INREPLYTO=, CONTENT=, CC=, STATUS2ID=0, FROM=noreply@zohosmtpin.india.adventnet.com, RETURNPATH=<noreply@zohosmtpin.india.adventnet.com>, conv=true, SHRINKED=false}"
  }

Actions prises en charge dans Zoho Mail via le script Deluge : 

moveToFolder 
messageId et toFolderName/ toFolderId sont les paramètres requis. (toFolderName est le nom du dossier de destination vers lequel l'e-mail doit être déplacé)
zoho.mail.moveToFolder(mail_messageId, "/toFolderName") OU zoho.mail.moveToFolder(mail_messageId, toFolderId)

Remarque :

  • Si le dossier de destination est un sous-dossier, la totalité du chemin du dossier doit être mentionnée dans le nom du dossier.
    Par ex. : « /Inbox/Marketing/Design »

setTag
messageId et TagName/ TagId sont les paramètres requis. (TagName est le nom du tag qui doit être appliqué à cet e-mail.)
zoho.mail.setTag(mail_messageId, "TagName") OU zoho.mail.setTag(mail_messageId, TagId)

createFolder
folderName et parentFolderId sont les paramètres nécessaires pour cette action. Folder Name est le nom du dossier à créer et parentFolderId est nécessaire si le dossier est un sous-dossier d'un autre dossier. 
zoho.mail.createFolder(folderName, parentFolderId)

markAsRead : marque l'e-mail particulier comme Lu
markAsUnread : marque l'e-mail particulier comme Non lu
removeFlag : supprime tout drapeau appliqué au message.

Pour les 3 fonctions ci-dessus, le messageId est le paramètre requis.

Conditions ET/OU dans le filtre 

Actuellement, les filtres Zoho Mail ne prennent pas directement en charge la combinaison d'utilisation « OU et ET » entre plusieurs conditions. Si vous avez besoin de ce genre de personnalisation, vous pouvez créer et utiliser des scripts Deluge dans des actions personnalisées pour organiser votre boîte de réception ou créer une règle personnalisée pour ce type d'e-mails. 

Par ex. : vous pouvez créer un filtre avec des conditions comme ci-dessous :

Si (expéditeur = <sender1@yourdomain.com> ou expéditeur =<sender2@yourdomain.com>) et objet = subject1, alors déplacer l'e-mail vers le dossier <folder x>. 

Workflows personnalisés :

La prise en charge de Custom Action dans Zoho Mail vous permet d'intégrer Zoho Mail à d'autres applications Zoho ou des applications externes et de créer des workflows basés sur les e-mails entrants. 

Ex :  

Si Objet = "Contact us" ou To = "info@yourdomain.com" alors ajouter l'expéditeur en tant que prospect dans Zoho CRM. 

Si Objet = "Invoice xxxx" alors extraire le montant total et l'ajouter à la base de données <abcde> dans Zoho Reports. 

Filtres en fonction du contenu : 

Les conditions de filtre d'e-mail par défaut prennent en charge uniquement les paramètres disponibles dans les métadonnées de l'e-mail. Il n'est donc pas possible de créer des filtres avec des conditions basées sur le « Content ». Lorsque des actions personnalisées sont en place, vous pouvez écrire votre script pour créer des conditions et des actions basées sur le contenu pour les e-mails entrants, afin de mieux les organiser ou créer des workflows personnalisés. 

Exemples de scripts :

Chain Actions dans une seule fonction personnalisée

    
 // To get the email data, use the 'mail_messageId' parameter 
 // sent from mail filter when calling the Dre function.

messageDetails = zoho.mail.getMessage(mail_messageId);
mailContent = messageDetails.get("CONTENT");
mailSubject = messageDetails.get("SUBJECT");
fromAddress = messageDetails.get("FROM");
moveToFolderName = "ToDoList";
folderId = -1;
folderDetails = zoho.mail.getFolders();
for each  folder in folderDetails
{
    folderName = folder.get("NAME");
    if(folderName == moveToFolderName)
    {
        zoho.mail.moveToFolder(mail_messageId,folder.get("ID"));
    }
}
myTask = 123456;
othersTask = 234567;
if(fromAddress.contains("replacecontenthere"))
{
    zoho.mail.setLabel(mail_messageId,myTask);
}
else
{
    zoho.mail.setLabel(mail_messageId,othersTask);
}


Obtenir les détails de libellé pour un nom de libellé donné


tagId= -1;
tagDetails = zoho.mail.getLabels();
        ^pour chaque tag dans tagDetails
        {
            if(tag.get("NAME") == "High Priority")
            {
                tagId = tag.get("ID");
            }
        }

Pour envoyer des SMS

sendsms
[
    to :"91<10 digit number >"
    message:"<your message>"
];

Convertir les paramètres SentDateTime au format de date et heure Creator

Le fuseau horaire doit être modifié conformément au fuseau horaire indiqué dans Input Parameter

messageDetails = zoho.mail.getMessage(mail_messageId);
mailDate = messageDetails.get("SENTTIME");
mailDateString = mailDate.toDate("E, dd MMM yyyy HH:mm:ss +0530");  //gives output in format 20-Apr-2017
mailDateTimeString = mailDate.toTime("E, dd MMM yyyy HH:mm:ss +0530");  //gives output in format 20-Apr-2017 13:23:06 

Share this post : FacebookTwitter

Vous ne trouvez toujours pas ce que vous cherchez?

Écrivez-nous: support@zohomail.com