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 esta tarea de forma fácil y rápida.
Información importante: se necesita una cuenta Zapier de pago.
o bien
Configuración del zap
Debe configurar el primer paso. El botón «Crear un zap» lleva a esta página, donde se debe seleccionar un «Activador». Entonces, se puede seleccionar «Schedule».
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.
Seguidamente, podrá elegir a qué hora del día se ejecutará el script y si quiere o no que se ejecute en el fin de semana.
Tras confirmar 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».
Seleccione Javascript.
Primero debe rellenar las secciones de «Entrada», sustituyendo las «xxx» con sus datos.
- La primera clave es la URL y, para el valor, sustituya las «xxx» por el nombre de la instancia de Lucca
- La segunda clave es la appToken y, para el valor, sustituya «xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx» por su clave API de Lucca.
Aviso: la clave de API que debe utilizar es una clave de API de Lucca y debe concederle la autorización de «Ver los datos Lucca».
Seguidamente, podrá copiar el siguiente código incluido 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 = []; if(monthS=="02" && dayS == "29") { 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); }); |
Punto importante: la prueba debe realizarse en un día en el que como mínimo un usuario cumpla años.
Atención: Tenga en cuenta que la prueba de código Javascript no será válida si tiene una restricción de dirección IP en su instancia de Lucca.
Ya solo tiene que configurar la última acción, que permitirá enviar los resultados en uno de sus canales Slack.
Seleccione la opción «Send Channel Message».
En el paso siguiente, conéctese con los datos de nombre de usuario de su cuenta Slack.
Seguidamente, complete las opciones, empezando con el nombre del canal e introduzca su texto. Puede utilizar el texto de este ejemplo para su configuración:
Después, solo deberá confirmar este paso y ejecutar las pruebas para finalizar la configuración.
Ejecución del zap
Puede ejecutar el zap pulsando el botón «OFF» para que cambie a «ON».