Service Postal – Teams
Le rôle d’un service postal est d’assurer le transport et la distribution de courrier. Ce service vieux comme le monde car déjà les égyptiens en faisiant l’usage.
Mon objectif est de permettre, à un public cible, l’envoi par mail d’un message accompagnée de pièces jointes qui seraient donc publié sur les publications de tous les canaux ‘Général’ de toutes les équipes Teams de mon organisation. Cela me permettrait, par exemple, d’utiliser Teams pour la diffusion de bulletins d’information au sein de mon organisation.
Nativement, chaque canal dans une équipe Teams a sa propre adresse mail. Si vous voulez envoyer un e-mail à un canal dans Teams, il suffit d’utiliser l’adresse de messagerie du canal. Une fois qu’un message fait partie d’un canal, tout le monde peut y répondre pour démarrer une conversation.
Voici un exemple de message publié par courrier électronique via l’adresse d’un canal Teams
La démarche semble simple et efficace, mais à l’usage pas très pratique pour différentes raisons :
- La pièce jointe et le message sont sauvegardées dans l’espace Fichier de l’équipe, donc si j’envoie le même message à plusieurs Canaux, je vais créer plusieurs copies de mes pièces jointes et de mon message.
- Les pièces jointes étant dans les fichiers de l’équipes, celles-ci sont modifiables par l’ensemble des membres de l’équipe
- Pour envoyer un courrier sur un canal d’une équipe, il faut soi-même être membre de ce canal
Donc à l’usage cette option de remise n’est pas très pratique dans le cadre de mon objectif.
Une autre option native proposée par Teams, est lors de la rédaction d’une conversation ou d’une annonce, de publier cette dernière dans d’autres canaux.
Mais là, dès qu’on sélectionne plusieurs Canaux pour diffuser le message, la notion de pièces jointes n’est plus disponible.
Donc aucune des solutions natives ne me permet d’envoyer une publication accompagnée de pièces jointes sur tous les canaux ‘Général’ de toutes les équipes de mon organisation. Je propose donc une alternative, plus complexe à mettre en place, mais qui j’espère vous rendra bien des services.
Mon approche est de mettre en place un service postal en place, via un facteur, qui prendra en charge la publication de messages et pièces jointes dans Teams. Le service postal sera matérialisé par un compte de service Office 365, et le facteur par un flux Power Automate. Pour que votre service postal puisse publier dans des équipes Teams, il faudra l’ajouter comme membre des équipes auxquelles il doit pouvoir délivrer ses messages.
Remarque : Il vous faudra quelques notions de bases sur Power Automate pour effectuer sereinement l’implémentation de mon service de distribution.
Création du service Postal
Dans le centre d’administration d’Office 365, nous allons créer un compte utilisateur de type « Service », qui ne sera donc pas utilisé par un vrai utilisateur.
Mon service postal est donc accessible via l’adresse mail : Teams-ServicePostal@contoso.com
Je vais lui donner les moyens d’embaucher un facteur, donc de créer un Flux Power Automate
La licence Power Automate est gratuite, donc pas de stress.
Par contre, par la suite, j’ai besoin de OneDrive, et là la licence n’est pas gratuite.
Donc soit vous lui attribuer une licence « OneDrive » uniquement, soit une licence plus large de type Business ou Entreprise, soit une licence Educative si vous avez.
Implémentation du Facteur
Je me connecte donc au portail Office 365 avec mon compte « Service Postal », teams-servicepostal@contoso.com
Je peux ouvrir l’environnement Power Automate, et me lancer dans la création d’un flux de publication pour Teams.
Pour mon flux, je vais partir d’un flux automatisé « vierge »
Je lui donne un nom : Teams Postman
Et comme déclencheur : « A l’arrivée d’un courrier dans Office 365 Outlook »
En l’état, dès qu’un courrier arrivera sur ma boite partagée « teams-servicepostal@contoso.com », mon flux lancera son traitement.
Mon hypothèse de travail pour cet exemple, est de traité uniquement les courriers reçus qui ont des pièces jointes et qui proviennent d’une adresse spécifique, celle du responsable de la communication, ou celle de la direction de mon école, ou celle du manager de mon entreprise, etc.
Vous pouvez filtrer les courriers à traiter en vous aidant du champ « De » et donc ne prendre en compte que les courriers venant d’une ou plusieurs personnes sépcifiques.
Les pièces jointes reçues, il va falloir les sauvegarder quelque part. Je propose de les conserver dans l’espace OneDrive de notre facteur, OneDrive Entreprise devient ici la besace de notre facteur. Il est possible aussi que pour un courrier reçu, j’ai à transmettre non pas une pièce jointe mais plusieurs. Donc nous devons les sauvegarder une à une, via une boucle.
Chaque pièce jointe doit donc être sauvegardée dans l’espace OneDrive de notre facteur.
Histoire de mettre un peu d’organisation dans le stockage des pièces jointes, je préfère organiser celles-ci en fonction de l’expéditeur et du sujet du message.
A partir d’ici, je vous invite à sauvegarder votre flux régulièrement, histoire de ne pas perdre vos travaux.
Je vous propose aussi de faire un premier test, en envoyant un courrier avec pièces jointes sur l’adresse de votre service postal, et de vérifier que ces pièces jointes sont bien sauvegardées au bon endroit.
J’envoie donc depuis une adresse autorisée « director@contoso.com », un courrier avec des pièces jointes sur l’adresse « teams-servicepostal@contoso.com » dont le sujet est « Test Postman »
Après quelques minutes d’attente, dans Power Automate j’obtiens ceci :
Et dans l’espace OneDrive de mon facteur:
Mes pièces jointes sont donc disponibles de manière centralisée, mais je dois les rendre accessibles en lecture à toute mon organisation. Je vais donc pour chaque pièce jointe créer un lien de partage par chemin d’accès.
La notion de chemin d’accès est disponible via la brique « Créer un fichier – OneDrive »
Le type de lien est pour de la lecture uniquement, et le lien sera accessible uniquement aux membres de mon organisation.
Des liens de partage, j’en aurai au moins un, voire plusieurs, dépendant du nombre de pièces jointes. Pour les diffuser dans Teams, je vais sauvegarder ces liens dans une chaine de caractère que je dois d’abord initialiser
Maintenant que ma variable de type « Chaine » est disponible, je vais concaténer mes liens dans cette variable
Pour chaque pièce jointe, je construis une chaine comme suit : <a href=Url du lien de partage>Nom du fichier</a><br>
- Pièce jointe Nom provient de l’action : « A l’arrivée d’un nouvel e-mail – Nom de la pièce jointe »
- URL Web provient de l’action « Créer un lien de partage par chemin d’accès »
A ce stade-ci, ma boucle de traitement des pièces jointes est terminée.
Mais avant de prendre en charge la publication vers Teams, j’ai besoin de connaitre le nom et prénom de la personne qui a fait l’envoi du courrier. A ce stade je ne connais que l’adresse de l’expéditeur. Celle-ci va me permettre d’obtenir le profil de l’utilisateur lié à cette adresse d’expédition.
Pour publier mon message, je dois d’abord lister les équipes Teams disponibles et accessibles par mon facteur, et exécuter un traitement pour chacune d’entre elle.
Pour chaque équipe, il faut la liste des canaux disponibles, et pour chacun d’entre eux, effectuer un traitement
Ce qui me donne une boucle dans une boucle !
Mon objectif est de publier uniquement mes messages dans le canal « Général » de toutes mes équipes.
Je vais donc devoir mettre une condition en place.
Si je suis dans le canal « General » d’une équipe alors je dois publier mon message et ses pièces jointes, si ce n’est pas le cas, je ne fais rien.
- L’objet du message dans Teams est construit sur base du nom de l’expéditeur via l’action « Obtenir le profil de l’utilisateur » et de l’objet du courrier traité
- Dans le message de Teams, j’y mets le corps du courrier traité et les liens de partages pour consulter les documents (pièces jointes) sauvegardés dans l’espace OneDrive du facteur
Le flux au complet
Testons notre solution de service postal
Envoi d’un courrier à mon service postal avec deux pièces jointes
Réception de la publication dans Teams
Avantages :
- Nous pouvons contrôler qui diffuse dans les équipes Teams, en filtrant sur la réception des messages au niveau du flux
- Nous contrôlons sur quelles équipes les messages doivent être publiés en y ajoutant mon compte « facteur » dans les équipes de destination
- Les pièces jointes sont accessibles en lecture seule et de manière centralisée dans l’espace OneDrive de mon facteur
Inconvénients :
- Nécessite la mise en place d’un flux Power Automate, donc pas une solution native
- Les pièces jointes devant être stockées dans OneDrive Entreprise, cela nécessite une licence « payante » pour la mise en place de mon facteur
- La publication dans Teams se fait via un compte de service, donc pas moyen d’entamer une discussion avec l’expéditeur du courrier via la publication
Merci de votre lecture, j’espère que cette approche peut vous servir dans vos usages autour de Teams.
Merci pour ce tuto. Génial.