Zum Hauptinhalt springen

Webhooks

Webhooks ermöglichen es Ihnen, externe Apps und Automatisierungen mit Teams Manager zu verbinden und Informationen zu bestimmten Aktionen innerhalb der App abzurufen.

Sie können beispielsweise den Webhook auslösen, wenn ein Team erstellt wird. Dadurch werden die entsprechenden Details an Ihre App/Automatisierung übermittelt, die ein Skript auslöst, das die Details zur weiteren Verarbeitung an eine separate Datenbank sendet.

Dies ist ein relativ einfaches Beispiel; in der Praxis kann diese Funktion je nach Ihrem Einfallsreichtum und Ihren Programmierkenntnissen auf vielfältige Weise eingesetzt werden.

Lassen Sie uns den Webhook-Einrichtungs- und Nutzungsprozess durchgehen, um besser zu verstehen, welchen Nutzen Sie daraus ziehen können.

🪝 Webhook-Einrichtung


  1. Navigieren Sie zu Einstellungen > Expertenmodus > Verbundene Apps > Webhooks, um zu beginnen.

  2. Klicken Sie auf + Neuen Webhook hinzufügen.

  3. Geben Sie den Webhook-Namen und die Beschreibung an.

  4. Fügen Sie ein Webhook-Geheimnis hinzu (optional).

  5. Wählen Sie einen Auslöser aus der Liste. Dies ist die Aktion, die innerhalb von Teams Manager ausgeführt wird und das System veranlasst, die erforderlichen Informationen zu senden. In unserem Fall wird die Anfrage durch die Erstellung einer neuen Space-Anfrage ausgelöst.

  6. Wählen Sie Ihre bevorzugte Plattform – entweder Microsoft Flow oder eine Azure-Funktion.

  7. Klicken Sie auf Weiter.

  8. Fügen Sie die URL Ihrer bevorzugten Plattform in das Feld ganz oben im Popup-Fenster ein. Dasselbe Popup-Fenster zeigt auch die Informationen an, die als Ergebnis dieser Anfrage empfangen werden.

  9. Klicken Sie auf Erstellen, um Ihren Webhook abzuschließen.

Nach der Erstellung können Webhooks bearbeitet oder gelöscht werden, indem Sie auf die Schaltfläche neben dem gewünschten Eintrag in der Liste klicken.

🤫 Webhook-Geheimnis


Das Webhook-Geheimnis ist eine Sicherheitsfunktion, mit der Sie überprüfen können, ob die Anfrage tatsächlich von Teams Manager stammt.

Wenn Sie einen Webhook in Teams Manager erstellen, können Sie das Geheimnis in das Feld Webhook-Geheimnis einfügen. Wenn Sie nicht sicher sind, wie Ihr Passwort aussehen soll, können Sie einfach eine UUID generieren und diese als Geheimnis verwenden.

Wenn Sie eine Webhook-Anfrage erhalten (vorausgesetzt, ein Geheimnis wurde festgelegt), können Sie den entsprechenden Hash über den x-tm-signature-Header abrufen.

Dieser Hash ist eine hexadezimale Darstellung des HmacSHA256-Hash des Webhook-Anfragekörpers und des von Ihnen angegebenen Geheimnisses.

Sie können einen Hash zum Vergleich generieren, indem Sie das folgende Code-Snippet verwenden (NodeJS / Typescript):

import * as crypto from "crypto"; // ... const hash = crypto .createHmac("sha256", "MyWebhookSecret") // Create Hmac with our secret .update(request.body) // Insert the body as message .digest("hex"); // Convert to hex console.log("Generated hash:", hash); console.log("Do hashes match (valid request):", hash === request.headers["x-tm-signature"]);

So kann es in C# (Version >= .NET 5.0 aufgrund von BitConverter) umgesetzt werden:

using System.Security.Cryptography; // ... string GenerateHash(string key, string message) { var hmac = new HMACSHA256(System.Text.Encoding.UTF8.GetBytes(key)); // Create Hmac with our secret var hashAsBytes = hash.ComputeHash(System.Text.Encoding.UTF8.GetBytes(message)); // Insert the body as message and get hash as byte array var hash = BitConverter.ToString(hashAsBytes); // Convert hash bytes to hex string return hash.Replace("-", "").ToLower(); // Return modified string } var hash = GenerateHash(Request.Body, "MyWebhookSecret"); if(hash == Request.Headers["x-tm-signature"]) Console.WriteLine("Hashes match. Request is valid"); else Console.WriteLine("InvalidHash");

🏅 Endergebnisse


Sobald die Auslöseraktion innerhalb von Teams Manager ausgeführt wird, erhalten Sie alle erwarteten Informationen auf Ihrer bevorzugten Plattform.

In unserem Fall haben wir die Vorlagen-ID, den Kommentar, die Metafelder, die Gastzugriffseinstellungen, die Richtlinie, den Teamnamen, den E-Mail-Kurznamen, die Beschreibung usw. für eine neue Space-Anfrage erhalten.

Das zuvor angegebene Webhook-Geheimnis wird ebenfalls empfangen und kann unter dem x-tm-signature-Header gefunden werden.

⛑️ Benötigen Sie weitere Hilfe?


Erhalten Sie weitere Unterstützung für Teams Manager über unser Support-Chat-Widget in der App oder kontaktieren Sie uns unter [email protected].

Hat dies deine Frage beantwortet?