|
Home → WINDEV 2024 → Question pour les spécialistes de la messagerie et du IMAP |
Question pour les spécialistes de la messagerie et du IMAP |
Started by LM Concept, Jul., 27 2018 3:26 PM - 5 replies |
| |
| | | |
|
| |
Registered member 351 messages Popularité : +13 (17 votes) |
|
Posted on July, 27 2018 - 3:26 PM |
Bonjour, Quand on envoie un email avec Outlook, (paramétré en IMAP), le mail se retrouve dans le dossier « sent » (ou envoyé peu importe) une fois envoyé. Du coup grâce à l’IMAP, je peux voir les messages envoyés depuis un autre accès ou en webmail etc… Or dans WD, si on envoie un email avec le même compte méthode basique (EmailEnvoieMessage), le message part bien mais n’est pas copié dans le dossier « sent » ! Est-ce que cela signifie qu’il faut faire la copie soit même ? Ou qu’il y aurait un paramètre que j’ai loupé dans l’envoie !?
Merci à vous BON DEV |
| |
| |
| | | |
|
| | |
| |
Registered member 351 messages Popularité : +13 (17 votes) |
|
Posted on July, 30 2018 - 9:35 AM |
Un p'tit up |
| |
| |
| | | |
|
| | |
| |
Registered member 299 messages Popularité : +16 (16 votes) |
|
Posted on August, 03 2018 - 5:05 PM |
Copier l'objet Mail dans le répertoire Sent juste après l'envoi |
| |
| |
| | | |
|
| | |
| |
Registered member 351 messages Popularité : +13 (17 votes) |
|
Posted on August, 03 2018 - 6:17 PM |
Merci, pour la réponse ! Donc pas d'autres possibilités. Je regarde alors de ce coté la.
BON DEV |
| |
| |
| | | |
|
| | |
| |
Registered member 3 messages |
|
Posted on November, 08 2018 - 9:50 PM |
bonjour, je me suis confronté également a ce problème et après avoir fait une synthèse des différentes réponse voici un code qui fonctionne. après l'envoie par stmp je récupère le nombre d’émail envoyés
PROCEDURE TransfererEmail(NbEmailEnvoyé=0) //NbEmailEnvoyé sert a ne pas lire tous les mails de la boite de réception et arrête le traitement //quand le traitement a traité tous les mails envoyés MaSessionIMAP est un EmailSessionIMAP MonMessage est un Email i,k sont des entiers
//Repert_PJ est une chaîne="C:\TMP\MailTest\" sDomainExpediteur est une chaîne sListeDossiers est une chaîne sRepTransfert est une chaîne="MsgEnvoyé" sRepmail est une chaîne ok est un booléen
//ma conexion imap MaSessionIMAP..AdresseServeur = Serveur_Smtp MaSessionIMAP..Nom = Expediteur MaSessionIMAP..MotDePasse = ePass
EmailChangeTimeOut(30) EmailParamètre(emailParamètreMode,1)
SELON Securité CAS 1 //aucune MaSessionIMAP..Option = emailOptionDéfaut MaSessionIMAP..Port = 143 CAS 2 //tls MaSessionIMAP..Option = emailOptionSécuriséTLS MaSessionIMAP..Port = 993 CAS 3 //ssl MaSessionIMAP..Option = optionSSL MaSessionIMAP..Port = 993 FIN
Message("Connexion IMAP en cours...") Sablier(Vrai) ok=EmailOuvreSession(MaSessionIMAP)
//liste des dossiers du serveur sListeDossiers=EmailListeDossier(MaSessionIMAP,LstDossierTous+LstDossierType) //Trace(sListeDossiers)
//dossier de transfert sRepmail="Sent" //par defaut //je cherche mon dossier de transfert SI Position(sListeDossiers,sRepTransfert)=0 ALORS //non trouvé SI EmailAjouteDossier(MaSessionIMAP,sRepTransfert) ALORS //création du dossier ok sRepmail=sRepTransfert FIN SINON // Trace(sRepStoresfx+" trouvé") sRepmail=sRepTransfert FIN
EmailChangeDossier(MaSessionIMAP,"Inbox") Multitâche(10)
k=EmailNbMessage(MaSessionIMAP) Message(k+" Emails trouvé dans "+EmailDossierCourant(MaSessionIMAP))
SI NbEmailEnvoyé=0 ALORS NbEmailEnvoyé=k FIN ok=EmailLitEntêteDernier(MaSessionIMAP,MonMessage) //, emailexpediteur,expediteur) i=0 TANTQUE PAS MonMessage..EnDehors _ET_ i<NbEmailEnvoyé // toastaffiche("début transfert i="+i) sDomainExpediteur=MonMessage..Expediteur // Trace("ID:"+MonMessage..ID+" "+MonMessage..Sujet,DateVersChaîne(MonMessage..DateRéception)) SI sDomainExpediteur~=Expediteur OU sDomainExpediteur="" ALORS // Trace("ID:"+MonMessage..ID+" "+sDomainExpediteur) SI EmailLitMessage(MaSessionIMAP,MonMessage,MonMessage..ID) ALORS // trace("lecture ok") SI EmailCopie(MaSessionIMAP,MonMessage,sRepmail) ALORS Multitâche(10) // trace("copie ok "+MonMessage..ID+" "+sRepmail) SI EmailSupprimeMessage(MaSessionIMAP,MonMessage) ALORS // trace("ID:"+MonMessage..ID+" "+"supprime ok") Multitâche(10) i++ FIN FIN FIN FIN EmailLitEntêtePrécédent(MaSessionIMAP,MonMessage) FIN EmailDétruit(MaSessionIMAP) //vide la corbeille EmailFermeSession(MaSessionIMAP) Sablier(Faux) Message(i+" Emails transérés dans "+sRepmail) |
| |
| |
| | | |
|
| | |
| |
Registered member 351 messages Popularité : +13 (17 votes) |
|
Posted on November, 10 2018 - 9:09 AM |
Bonjour, Très intéressant votre code, je regarde cela. Car personnellement pour moi ce n'était pas un priorité et j'avais mis cela de côté ! Et merci pour ce partage.Message modified, November, 10 2018 - 9:11 AM |
| |
| |
| | | |
|
| | | | |
| | |
|