Geburtstage in Slack anzeigen

Bevor Sie beginnen

Nutzen Sie Zapier, um Geburtstage und das Dienstalter automatisch in Slack anzuzeigen, damit Sie Ihren Mitarbeitenden Ihren Glückwunsch ausdrücken können.

Wichtiger Hinweis: Für die Verwendung dieser Funktion ist ein Kostenpflichtiges Zapier-Konto ist erforderlich. 

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

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

Parametrierung von Zap

Sie müssen den ersten Schritt konfigurieren. Über die Schaltfläche „Zap erstellen“ gelangen Sie zu dieser Seite, auf der Sie einen „Trigger“ auswählen müssen. Sie können anschließend „Schedule“ auswählen.

1_create-a-zap_full_en.png

2_choose-schedule_en.png

Sie werden anschließend dazu aufgefordert, Ihre Uhr zu konfigurieren. Stellen Sie sich zunächst die Frage, wie oft das Skript ausgeführt werden soll, beispielsweise jeden Tag.

3_event-periodicity_en.png

Wählen Sie anschließend die Uhrzeit aus, zu der das Script gestartet werden soll. Dies kann ebenfalls am Wochenende geschehen.

4_setting-trigger_en.png

Nachdem Sie diesen Schritt abgeschlossen haben, können Sie ihn im Tab „Test Trigger“ testen.

Für den zweiten Schritt der Aktion wählen Sie die Anwendung „Code by Zapier“.

5_choosing-code_en.png

Javascript auswählen

6_choose-action_en.png

Sie müssen zunächst die „Input“-Teile vervollständigen, indem Sie „xxx“ durch Ihre Informationen ersetzen.

- Der erste Schlüssel ist die URL. Ersetzen Sie als Wert „xxx“ durch den Namen der Lucca-Instanz

- Der zweite Schlüssel ist appToken und ersetzen Sie als Wert „xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx“ durch Ihren Lucca-API-Schlüssel.

Achtung: Der zu verwendende API-Schlüssel ist von Lucca. Ihm muss die Berechtigung „Lucca-Daten anzeigen“ zugewiesen werden.

7_setting-action_en.png

Sie können anschließend den folgenden Code kopieren: 

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 = [];
var increment = 1;

if(monthS=="02" && dayS == "29") {
    increment = 4;
}
for (var yearShift = increment ; yearShift <= 70; yearShift+=increment) {

    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) + ". schon " + result.year + " Jahre bei uns! :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 = "Herzlichen Glückwunsch," + person.firstName + " " + person.lastName.slice(0, 1) + ". ! Erst " + person.year + " Jahre! :cake: ";

           });

       }


       getSeniorityAnniversary(people);

   }).catch(function (error) {

       console.log(error);

   });

Wichtig ist, dass der Test an einem Tag durchgeführt werden muss, an dem mindestens ein:e Benutzer:in Geburtstag hat.

Bitte beachten Sie, dass der Javascript-Codetest nicht bestanden wird, wenn Sie eine IP-Adressbeschränkung auf Ihrer Lucca-Instanz haben.

Jetzt müssen Sie nur noch die letzte Aktion konfigurieren, die die Übermittlung der Ergebnisse an einen Ihrer Slack-Kanäle ermöglicht.

8_step-add_en.png

9_process-slack_en.png

Wählen Sie die Option „Send Channel Message“ aus.

10_message-slack_en.png

Melden Sie sich im nächsten Schritt mit den Anmeldedaten Ihres Slack-Kontos an:

11_sign-in_en.png

Vervollständigen Sie dann die Optionen. Beginnen Sie mit dem Namen des Kanals und geben Sie dann Ihren Text ein. Sie können dies hier als Beispiel für Ihre Einstellungen verwenden:

12_setup-sending-message_en.png

Jetzt müssen Sie diesen Schritt nur noch bestätigen und die Tests starten, um die Parametrierung abzuschließen.

Starten des Zap

Sie können den Zap starten, indem Sie auf die Schaltfläche „OFF“ klicken, damit sie auf „ON“ umschaltet.

13_start-zap_en.png

Contenu de la page

War dieser Beitrag hilfreich?
1 von 1 fanden dies hilfreich