PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Principe
  • Lire un email (variable de type Email) : Les différentes étapes
  • Exemple
  • Lire un email (structure Email) : Les différentes étapes
  • Exemple
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Principe
Cette page d'aide présente comment lire un email depuis une application WINDEV et afficher son contenu dans une application WINDEV.
L'email est lu grâce aux différentes fonctions du WLangage (EmailLitPremier, EmailLitSuivant, ...).
Le contenu de l'email peut être connu :
  • Versions 15 et supérieures
    dans une variable de type Email. Les variables de type Email permettent de manipuler plusieurs emails simultanément.
    Nouveauté 15
    dans une variable de type Email. Les variables de type Email permettent de manipuler plusieurs emails simultanément.
    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.
Versions 17 et supérieures
iPhone/iPad Cette fonctionnalité est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Cette fonctionnalité est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonctionnalité est désormais disponible pour les applications iPhone/iPad.
Versions 21 et supérieures
Universal Windows 10 App Cette fonctionnalité est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonctionnalité est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonctionnalité est désormais disponible en mode Universal Windows 10 App.
Versions 22 et supérieures
Widget Android Cette fonctionnalité est désormais disponible en mode Widget Android.
Android Cette fonctionnalité est désormais disponible pour les applications Android.
Nouveauté 22
Widget Android Cette fonctionnalité est désormais disponible en mode Widget Android.
Android Cette fonctionnalité est désormais disponible pour les applications Android.
Widget Android Cette fonctionnalité est désormais disponible en mode Widget Android.
Android Cette fonctionnalité est désormais disponible pour les applications Android.
Lire un email (variable de type Email) : Les différentes étapes
Pour lire un email en WLangage, les différentes étapes sont les suivantes :
  1. 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.
  2. Lisez le contenu de la variable de type Email.
    Versions 19 et supérieures
    Remarque : Si l'email contient des entêtes spécifiques, il est possible de les lire grâce à la variable de type Email.
    Nouveauté 19
    Remarque : Si l'email contient des entêtes spécifiques, il est possible de les lire grâce à 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.
  3. 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.
  4. Si la propriété ..HTML est vide : le message est au format texte.
  5. 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 :
  1. 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.
  2. Lisez le contenu de la structure email (voir exemple ci-dessous).
  3. 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.
  4. Si la variable Email.HTML est vide : le message est au format texte.
  5. 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 A 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 :
WD Mail 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'application permet également de gérer plusieurs comptes emails différents. L'écriture d'un email s'appuie sur le champ de saisie HTML.
Les fonctions Email POP3 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.
WD JavaMail Exemples didactiques (WINDEV) : WD JavaMail
[ + ] Cet exemple est un exemple Java permettant de de lire et envoyer des emails.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Comment attacher des pièces jointes à la structure Email ?
On est renvoyé ici pour avoir plus d'infos sur la gestion de la propriété .Attache mais on n'en n'a pas vraiment.

QUID de la gestion des pièces jointes pour l'envoie d'un mail via la structure Email ?

Philip
27 oct. 2015