Slack: Souhaitez un joyeux anniversaire

 

Pour souhaiter un joyeux anniversaire et fêter les années d'ancienneté automatiquement sur slack vous pouvez utiliser zapier pour pouvoir facilement et rapidement effectuer cette tâche.

chrome_2017-08-11_14-28-39.png

ou bien

chrome_2017-08-11_14-28-45.png

Connexion à zapier :

Vous pourrez vous y connecter ici : https://zapier.com.

Créez vous un compte ou utiliser un compte déjà existant.

Configuration du zap :

Vous devez configurer la première étape. Le bouton « Choose App » vous proposera une liste d’outils disponibles Dans l’onglet « Built-in apps » vous pourrez alors choisir l’horloge.

chrome_2017-08-11_14-29-56.png

Il vous sera alors demandé de configurer votre horloge.

Tout d’abord en vous demandant à quelle récurrence vous voulez que le script soit lancé, par exemple tous les jours.

chrome_2017-08-11_14-30-36.png

Vous pourrez ensuite choisir à quelle heure de la journée le script sera lancé et si oui ou non vous voulez qu’il se lance le week-end.

chrome_2017-08-11_14-31-36.png

Une fois cette étape validée, vous pourrez ensuite lancer les tests pour cette étape avec le dernier onglet « Test this Step ».

 

Pour la deuxième étape, celle de l’action, nous allons choisir l’application “code”.

Choisir Javascript

Vous devrez d’abord remplir la partie “Input” comme ci-dessous :

En remplaçant les “xxx” par vos informations. Dans la première case remplacez les “xxx” par le nom de votre entreprise puis dans la case appToken remplacer tous les “xxx” par votre token,  que vous pourrez obtenir en contactant le support de Lucca (support@lucca.fr).

Vous pourrez ensuite copier le code ci-dessous dans la partie “Code”:

 

var today = new Date();


var yearS = "" + today.getFullYear();

var month = today.getMonth() + 1;

var monthS = month > 9 ? "" + month : "0" + month;

var dayS = today.getDate() > 9 ? "" + today.getDate() : "0" + today.getDate();


var todayS = yearS + "-" + monthS + "-" + dayS;


var urlBase = input.url + "/api/v3/users?fields=birthDate,picture.href,firstName,lastName,DtContractStart&dtContractEnd=since," + todayS + ",null";


var appToken = input.appToken;


var potentialBirthDateArray = [];

for (var yearShift = 1; yearShift <= 70; yearShift++) {

   potentialBirthDateArray.push((today.getFullYear() - yearShift) + "-" + monthS + "-" + dayS);

}


var getSeniorityAnniversary = function (people) {

   fetch(urlBase + "&DtContractStart=" + potentialBirthDateArray.join(","), {

       "headers": {

           "Authorization": "lucca application=" + appToken

       }

   }).then(function (response) {

       return response.json();

   }).then(function (results) {

       results = results.data.items;

       results.map(function (result) {


           if (result.picture && result.picture.href) {

               result.pictureHref = result.picture.href;

           } else {

               result.pictureHref = null;

           }


           result.year = (today.getFullYear() - result.dtContractStart.split("-")[0]);

           result.birthDayMessage = result.firstName + " " + result.lastName.slice(0, 1) + ". déjà " + result.year + " ans avec nous ! :cake: ";


           people.push(result);

       });

       callback(null, people);

   }).catch(function (error) {

       console.log(error);

   });

}


fetch(urlBase + "&birthDate=" + potentialBirthDateArray.join(","), {

   "headers": {

       "Authorization": "lucca application=" + appToken

   }

})

   .then(function (res) {

       return res.json();

   }).then(function (data) {

       var people = data.data.items;

       if (people.length > 0) {

           people.map(function (person) {

               if (person.picture && person.picture.href) {

                   person.pictureHref = person.picture.href;

               } else {

                   person.pictureHref = null;

               }

               person.year = (today.getFullYear() - person.birthDate.split("-")[0]);

               person.birthDayMessage = "Joyeux anniversaire " + person.firstName + " " + person.lastName.slice(0, 1) + ". ! " + person.year + " ans seulement ! :cake: ";

           });

       }


       getSeniorityAnniversary(people);

   }).catch(function (error) {

       console.log(error);

   });

 

Vous n’avez plus qu’à configurer la dernière action qui permettra d’envoyer les résultats sur l’un de vos channels Slack.

Choisissez l’option “envoyer un message à un channel”

Pour la prochaine étape, connectez-vous avec les identifiants de votre compte Slack.

Puis complétez les options, en commençant par le nom du channel:

Une fois le nom du channel rentré vous aurez à rentrer le message que vous voulez afficher, vous pouvez prendre le texte de l’exemple ci-dessous.

Vous n’avez plus qu’à valider cette étape et lancer les tests pour finir la configuration.

Lancement du zap :

Vous pouvez lancer le zap en appuyant sur le bouton « OFF » pour qu’il passe à « ON ».

Tout les matin à 7 heures Slack vous donnera la liste des absents du jour.

 

Cet article vous a-t-il été utile ?
Utilisateurs qui ont trouvé cela utile : 0 sur 0
Vous avez d’autres questions ? Envoyer une demande

Commentaires