IMAP: Id casella di posta e parole chiave della posta

Tradotto automaticamente da Deepl

4D v20 introduce due funzioni molto utili per i trasportatori IMAP!

L’interazione con alcuni server e client di posta IMAP richiede la gestione di parole chiave personalizzate nei messaggi di posta e l’utilizzo di alcune loro caratteristiche specifiche.

Abbiamo anche aggiunto il supporto dell’ID della casella di posta nel nostro Transporter IMAP, in modo da poter identificare una determinata casella di posta anche dopo averla rinominata.

Parole chiave personalizzate

Poiché alcuni server IMAP consentono all’utente di definire parole chiave personalizzate, le funzioni .addFlags ( ) e .removeFlags ( ) accettano ora parole arbitrarie come parole chiave:

$transporter:=IMAP New transporter($parameters)
$boxInfo:=$transporter.selectBox("INBOX")

$mailIds:=["122";"123";"124"]
// Custom keyword
$keywords:={"myKeyword":true}
// apply the custom keyword to the collection of mail
$status:=$transporter.addFlags($mailIds; $keywords)

e la funzione .selectBox ( ) restituisce l’elenco dei flag consentiti nella casella di posta corrente attraverso gli attributi .flags e .permanentFlags:

$selectBox:=$transporter.selectBox("INBOX")
//$selectBox={name:INBOX,
//mailCount:124,
//mailRecent:0,
//id:644737301,
//flags:\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing $Phishing myKeyword,
//permanentFlags:\\Answered \\Flagged \\Draft \\Deleted \\Seen $NotPhishing $Phishing myKeyword \\*} 

Id mailbox

Poiché il nome della mailbox non è sufficiente da solo per sapere se la casella selezionata è stata rinominata o rimossa e ricreata, aggiungiamo l’id alle informazioni restituite dalle funzioni .selectBox ( ) e .getBoxInfo ( ) del trasportatore IMAP:

$boxInfo:=$transporter.getBoxInfo("INBOX")
//{name:INBOX,
//mailCount:125,
//mailRecent:0,
//id:644737301}

Per maggiori dettagli, consultate la documentazione di queste funzioni!

Fabrice Mainguené
- Product Owner -Fabrice Mainguené si è unito al team di 4D Program nel novembre 2016. In qualità di Product Owner, è incaricato di scrivere le storie degli utenti e di tradurle in specifiche funzionali. Il suo ruolo è anche quello di assicurarsi che l'implementazione della funzionalità fornita soddisfi le esigenze del cliente.Dopo aver conseguito una laurea in Informatica presso il CNAM, Fabrice è entrato a far parte di una piccola società di pubblicazione di software come sviluppatore Windev. In seguito ha lavorato per diverse aziende del settore industriale e commerciale come sviluppatore Windev e web e come consulente tecnico su nuove funzionalità.