Learn365-Webhooks

Überblick

Learn365 bietet die Möglichkeit, Ereignisse zu abonnieren, die im System stattfinden. Sie können beispielsweise das Ereignis „CourseEnrollment“ abonnieren und eine benutzerdefinierte Überwachungslogik hinzufügen, die protokolliert, wer sich für Ihre Kurse anmeldet.

Und wie geht das? Ganz einfach: Sie müssen einen Webhook mit einem bestimmten Filter registrieren, der Ereignisse darstellt, die Sie abonnieren möchten.

Webhooks in Learn365 wurden auf der Basis von ASP.NET-WebHooks implementiert. Hierbei handelt es sich um eine Standardbibliothek, die Microsoft im ASP.NET-Framework verwendet.

Grundsätzlich funktioniert der Ablauf bei Webhooks wie folgt:

  • Der Webhook-Absender – in diesem Fall Learn365 – meldet Ereignisse, die ein Client abonnieren kann. Die Ereignisse beschreiben beobachtbare Änderungen am System. Das könnte das Einfügen eines neuen Datenelements, das Abschließen eines Prozesses usw. sein.
  • Der Webhook-Empfänger (kundenseitige Endpunkte) abonniert solche Ereignisse, indem er einen Webhook registriert. Dieser umfasst vier Aspekte:
    • Einen URI, an den die Ereignisbenachrichtigung in Form einer HTTP-POST-Anfrage zu senden ist
    • Eine Anzahl von Filtern, die die konkreten Ereignisse beschreiben, für die der Webhook ausgelöst werden soll
    • Einen Geheimschlüssel, mit dem die HTTP-POST-Anfrage signiert wird
    • Zusatzdaten, die in der HTTP-POST-Anfrage enthalten sein müssen; dies könnten etwa zusätzliche HTTP-Headerfelder oder Eigenschaften sein, die im HTTP-POST-Anfragetext enthalten sind
  • Sobald ein Ereignis eintritt, werden die passenden Webhook-Registrierungen ermittelt und die entsprechenden HTTP-POST-Anfragen gesendet. Typischerweise wird mehrfach versucht, HTTP-POST-Anfragen zu generieren, wenn der Empfänger aus irgendeinem Grund nicht reagiert oder die HTTP-POST-Anfrage eine Fehlerantwort generiert.

 

Ereignisse für LMS365-Webhooks

Bitte lesen Sie diesen Artikel, um sich mit den neuen LMS365-Konnektoren vertraut zu machen.

Derzeit abonnierbare Ereignisse (Filter) sind:

CourseEnrollment

CourseUnenrollment

CourseStarted

CourseCompleted

CoursePublished

CourseUnpublished

EnrollmentApprovalRequest

Die Liste dieser Ereignisse wird in Zukunft erweitert werden.

Sie können das in Swagger ausprobieren.

 

Benutzerdefinierte Webhooks registrieren oder ein Ereignis abonnieren

Sie müssen eine POST-Anfrage an https://api.365.systems/documentation/swaggerui3/#/WebHookRegistrations senden.

Beispiel:

POST /webhooks/registrations/ HTTP/1.1
Host: api.365.systems
Authorization: Basic <basic auth header>
Content-Type: application/json
Cache-Control: no-cache
 
{
"Secret":"some secret",
"Description":"some description",
"IsPaused":false,
"Filters":["CourseCompleted"]
}
 
Hierbei ist „WebHookUri“ ein gültiger benutzerdefinierter Webhook-Handler. Damit Sie verstehen, wie LMS365-Webhooks funktionieren und wie man einen benutzerdefinierten Webhooks-Handler implementiert, empfehlen wir Ihnen, sich mit der Dokumentation zu ASP.NET Webhooks vertraut zu machen.
War dieser Beitrag hilfreich?
1 von 6 fanden dies hilfreich

Kommentare

Zu diesem Beitrag können keine Kommentare hinterlassen werden.