Presentar los cumpleaños en Slack

Antes de empezar

Para desear un feliz cumpleaños y celebrar los años de antigüedad automáticamente en Slack, puede utilizar Zapier para realizar fácil y rápidamente esta tarea.

Información importante: se requiere una cuenta Zapier de pago. 

mceclip0.png
o bien

mceclip1.png

Configuración del zap

Debe configurar el primer paso. El botón «Make a zap» presenta una lista de las herramientas disponibles. Luego podrá seleccionar «Schedule».

Capture_d__cran_2020-12-16___16.51.49.png

A continuación, se le pedirá que configure su reloj. En primer lugar, se le preguntará con qué recurrencia quiere que se ejecute el script, por ejemplo, todos los días.

Capture_d__cran_2020-12-16___16.52.19.png

A continuación, podrá elegir a qué hora del día se ejecutará el script y si quiere o no que se ejecute el fin de semana.

Capture_d__cran_2020-12-16___16.53.07.png

Una vez validado este paso, podrá ejecutar pruebas para este paso con la última pestaña, «Test trigger».

Para el segundo paso, el de la acción, puede seleccionar la aplicación «Code by Zapier».

Capture_d__cran_2020-12-16___16.55.13.png

Seleccione Javascript.

Capture_d__cran_2020-12-16___16.55.34.png

En primer lugar, deberá cumplimentar las partes «Input», tal como se indica a continuación:

image__1___2_.png

Reemplace las «xxx» con sus datos.

– En la casilla URL, reemplace las «xxx» por el nombre de instancia Lucca.

Capture_d__cran_2020-12-17___11.09.04.png

Aviso: la clave de API que debe utilizar es una clave de API Lucca y debe conceder la autorización de «ver los datos Lucca».

A continuación, podrá copiar el código que aparece a continuación, en la parte «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;="70;" yearshift++)="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) + ". ¡ya " + result.year + " años con nosotros! :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 = "Feliz cumpleaños" + person.firstName + " " + person.lastName.slice(0, 1) + ". ! " + ¡person.year + " años solamente! :cake: ";

           });

       }


       getSeniorityAnniversary(people);

   }).catch(function (error) {

       console.log(error);

   });

Ya solamente tiene que configurar la última acción, que permitirá enviar los resultados en uno de sus canales Slack.

Capture_d__cran_2020-12-16___17.20.19.png

Seleccione la opción «Send Channel Message».

Capture_d__cran_2020-12-16___17.20.35.png

En el paso siguiente, conéctese con los datos de identificación de su cuenta Slack. A continuación, complete las opciones, empezando con el nombre del canal:

Capture_d__cran_2020-12-16___17.21.16.png

Una vez introducido el nombre del canal, tendrá que introducir el mensaje que quiera mostrar.
Puede usar el texto de ejemplo que aparece a continuación.

mceclip6.png

Luego solamente tendrá que validar este paso y ejecutar las pruebas para terminar la configuración.

Ejecución del zap

Puede ejecutar el zap pulsando el botón «OFF» para que cambie a «ON».

mceclip7.png

Cada mañana, a las 7:00h, Slack le dará la lista de los cumpleaños del día.

Contenido de la página

¿Fue útil este artículo?
Usuarios a los que les pareció útil: 1 de 1