|
|
|
|
|
- Principe
- Lire un email (variable de type Email) : Les différentes étapes
- Exemple
- Lire un email (structure Email) : Les différentes étapes
- Exemple
Cette page d'aide présente comment lire un email depuis une application WINDEV et afficher son contenu dans une application WINDEV. Le contenu de l'email peut être connu : - dans une variable de type Email. Les variables de type Email permettent de manipuler plusieurs emails simultanément.
- grâce à la structure Email. Les différentes variables de cette structure contiennent toutes les informations concernant l'email lu.
Les variables de la structure Email (ainsi que les propriétés des variables de type Email) correspondent à l'ensemble des caractéristiques d'un email.
Lire un email (variable de type Email) : Les différentes étapes Pour lire un email en WLangage, les différentes étapes sont les suivantes : - Utilisez une fonction de lecture des emails pour parcourir tous les emails d'une session de messagerie, plusieurs syntaxes sont possibles :
- Faire une boucle de la forme :
MaSession est une emailSessionPOP3 MonMessage est un Email EmailLitPremier(MaSession, MonMessage) TANTQUE PAS MonMessage.EnDehors // Insérer ici le traitement du message EmailLitSuivant(MaSession, MonMessage) FIN - Récupérer directement un tableau de tous les messages avec la fonction EmailRécupèreTout :
MaSession est une emailSessionPOP3 MesMessages est un tableau de Email = EmailRécupèreTout(MaSession) Remarques :- En utilisant le protocole POP3, les emails reçus pouvant être lus sont les emails qui ont été reçus au moment de l'ouverture de la session. Tous les emails reçus au cours de la session ne sont pas "visibles". Pour accéder aux nouveaux mails reçus, il faut donc fermer la session puis la ré-ouvrir.
- Il est possible de suivre la progression de la lecture de l'email grâce à la fonction EmailJauge.
- Lisez le contenu de la variable de type Email.
Remarque : Si l'email contient des entêtes spécifiques, il est possible de les lire grâce à la variable de type Email. - Si la propriété HTML n'est pas vide : le message est au format HTML. Il doit être affiché dans un navigateur (voir exemple ci-dessous).
Pour chaque fichier attaché :- Sauvegardez le fichier sur le disque (fonction EmailSauveFichierAttaché).
- Parcourez le message HTML en recherchant la valeur "cID:"+Identifiant du fichier attaché. Remplacez cette valeur par le chemin complet du fichier attaché copié sur le disque.
Affichez le message dans un navigateur.
- Si la propriété HTML est vide : le message est au format texte.
- Sauvegardez les fichiers attachés si nécessaire sur le disque et affichez le texte du message.
Exemple MonMessage est un Email ... Repert_Temp est une chaîne = "C:\temp\" CID est une chaîne I est un entier // Pour chaque fichier attaché Attachement est un emailAttache POUR TOUT Attachement DE MonMessage.Attache // Copier le fichier dans un répertoire temporaire EmailSauveFichierAttaché(Attachement, Repert_Temp + Attachement.Nom) // Récupérer l'identifiant du fichier attaché dans le mail CID = "cid:" + Attachement.Identifiant // Remplacer les références au fichier attaché par le nom réel du fichier MonMessage.HTML = Remplace(MonMessage.HTML, CID, ... "file:" + Repert_Temp + Attachement.Nom) FIN // Afficher le contenu HTML dans un champ HTML HTM_Affichage = MonMessage.HTML Lire un email (structure Email) : Les différentes étapes Pour lire un email en WLangage, les différentes étapes sont les suivantes : - Utilisez une fonction de lecture des emails (EmailLitPremier, EmailLitSuivant, ...). Il est possible de suivre la progression de la lecture de l'email grâce à la fonction EmailJauge.
- Lisez le contenu de la structure email (voir exemple ci-dessous).
- Si la variable Email.HTML n'est pas vide : le message est au format HTML. Il doit être affiché dans un navigateur.
Pour chaque fichier attaché (variable Email.NbAttache non vide) :- Sauvegardez le fichier sur le disque (fonction EmailSauveFichierAttaché).
- Parcourez le message HTML en recherchant la valeur "cID:"+Email.IdentifiantAttache du fichier attaché. Remplacez cette valeur par le chemin complet du fichier attaché copié sur le disque.
- Affichez le message dans un navigateur.
- Si la variable Email.HTML est vide : le message est au format texte.
- Sauvegardez les fichiers attachés si nécessaire sur le disque et affichez le texte du message.
Remarque : En utilisant le protocole POP3, les emails reçus pouvant être lus sont les emails qui ont été reçus au moment de l'ouverture de la session. Tous les emails reçus au cours de la session ne sont pas "visibles". Pour accéder aux nouveaux mails reçus, il faut donc fermer la session puis la ré-ouvrir. Exemple Repert_Temp est une chaîne = "C:\temp\" CID est une chaîne I est un entier  // Pour chaque fichier attaché POUR I = 1 À Email.NbAttache // Copier le fichier dans un répertoire temporaire EmailSauveFichierAttaché(Email.Attache[I], ... Repert_Temp + Email.Attache[I]) // Récupérer l'identifiant du fichier attaché dans le mail CID = "cid:" + Email.IdentifiantAttache[I] // Remplacer les références au fichier attaché // par le nom réel du fichier Email.HTML = Remplace(Email.HTML, CID, "file:" + ... Repert_Temp + Email.Attache[I]) FIN  // Afficher le contenu HTML dans un Browser WEB // Créer un fichier temporaire contenant le HTML NomFic est une chaîne = Repert_Temp + "temp.htm" hFic est un entier = fOuvre(NomFic, foCréation + foEcriture) fEcrit(hFic, Email.HTML, Taille(Email.HTML)) fFerme(hFic)  // Fournir le fichier HTML temporaire au browser // navigateur_WEB est un champ ActiveX "Microsoft Web Browser" navigateur_WEB>>Navigate(NomFic)
Liste des exemples associés :
|
Exemples complets (WINDEV) : WD Mail
[ + ] Cette application est un client mail complet développé en WINDEV. Il s'appuie sur les objets Email. Ce client mail permet de récupérer et d'envoyer des emails en utilisant les protocoles POP, IMAP et SMTP. Il est possible d'appliquer des filtres sur le courrier entrant. L'écriture d'un email s'appuie sur le champ Editeur HTML. L'affichage des emails utilise le champ Affichage HTML. L'application permet de gérer plusieurs comptes emails différents.
|
|
Exemples unitaires (WINDEV) : Les fonctions Email POP3
[ + ] Utilisation des fonctions Email pour gérer le protocole POP3. Ce protocole sert à récupérer des emails depuis un serveur.
|
|
Exemples didactiques (WINDEV) : WD JavaMail
[ + ] Cet exemple est un exemple Java permettant de de lire et envoyer des emails.
|
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|