Windev, les emails et la dématérialisation

L'email, l'une des inventions les plus anciennes de l'Internet (voir ici), évolue en permanence.
On pensait la fin de l'email arrivée avec les applications de messagerie instantanée pour entreprises type Slack ou Teams. Mais aujourd'hui, l'email est plus que jamais utilisé, tout le monde reçoit maintenant ses emails sur son smartphone, en même temps que sur son PC ou son Mac/ipad. On reçoit de plus en plus de documents par email (factures, bons de commande, bons de livraison, etc...), au profit de la dématérialisation.

Nos boites emails contiennent donc quantité de données personnelles qu'il faut absolument protéger au maximum. Il devient nécessaire et obligatoire de sécuriser l'utilisation des emails. Au début, les serveurs SMTP (protocole d'envoi d'emails) n'étaient même pas protégés par des mots de passe. Aujourd'hui, c'est obligatoire et il faut, bien évidemment, utiliser exclusivement des connexions cryptées (protocole TLS et/ou SSL)

Je rencontre encore des utilisateurs qui utilisent de très anciennes boites email en se connectant sans cryptages. Évidemment, il faut absolument bannir cela, c'est très dangereux, car n'importe qui peut se connecter sur votre boite sans que vous le sachiez.

L'utilisation des emails dans Windev est relativement facile et puissante. Il est ainsi possible d'accéder aux boites aux lettres pour lire et envoyer des emails depuis vos applications développées avec Windev. Cela participe à la simplification de votre dématérialisation, notamment des achats. Vous pouvez ainsi automatiser la récupération de documents d'achats (bons de commandes, factures, etc...), mais aussi depuis vos dossiers d'achats, envoyer vos emails et les archiver sans dépendre d'un client de messagerie comme Outlook.

Dans les premières versions de Windev, le WDLangage proposait une structure globale unique nommée email. Maintenant, il faut d'utiliser des variables de type email et les champs HTML basés sur Chromium.

Les connexions se font classiquement pour l'envoi (en SMTP) et pour la lecture (en IMAP) avec un login et un mot de passe (authentification classique).

Remarque : il faut absolument abandonner les connexions de type POP3 pour la lecture. L'IMAP est plus puissant et permet de synchroniser les actions de classement dans les dossiers entre vos différents clients de messagerie, par exemple, entre votre téléphone et votre ordinateur.

Ce mode de connexion classique, par simple login+mot de passe, devra progressivement être abandonné au profit d'une authentification selon le protocole OAuth2. Du côté de Microsoft, cela devient même obligatoire sur Microsoft 365.

Voici un exemple de code pour se connecter en SMTP sur une boite email Outlook 365 : 

Ce code contient la connexion proprement dite, ainsi que la gestion du token.

Pour se connecter selon ce protocole, il faut au préalable obtenir 2 clés d'identification : la clé ClientID et la clé ClientSecret. Dans le cas de Microsoft, pour obtenir ces clés, il faut se rendre sur votre compte Azure associé à votre compte Microsoft 365. Là, rendez-vous dans "Azure Active Directory", où vous pourrez inscrire votre application. L'inscription vous donnera le ClientID. Ensuite, il faudra créer le client secret, puis définir les API autorisées (voir la LST 124 de PCSOFT). Attention : lors de la génération du ClientSecret, c'est sa valeur qu'il faut utiliser dans le code.
Il existe une autre façon de se connecter à une boite aux lettres de Microsoft 365, en utilisant les API. PCSOFT nous a fourni un exemple sur son blog du support technique : https://bit.ly/3kIoIba

Pour vos projets Windev exploitant vos messageries électroniques, contactez-nous sur info@sealog.info.




Commentaires