Latest / M365.FM – Microsoft 365, Copilot & KI Podcast auf Deutsch / Microsoft Graph Change Notifications einfach erklärt: Echtzeit statt Polling (KI-Synchronfassung)
Transcript
- 0:00Bereit für 10 Tage voller Microsoft 365, Co-Pilot, KI, Azure und den Menschen, die die Zukunft der Arbeit gestalten?
- 0:07Diesen Januar ist die M365-Con zurück und wir legen noch eine Schippe drauf?
- 0:12Seien Sie dabei bei Live-Sessions, Praxis-Demos und Expertenwissen von MVPs und Fachleuten aus aller Welt.
- 0:18Keine generischen Folien, keine endlosen Schlagworte.
- 0:21Wir gehen echte Herausforderungen an.
- 0:23Co-Pilot Studio, KI-Agenten-Fabrik, Sicherheit, Governance und Automatisierung, K.
- 0:28Egal ob IT-Profi, Entwickler oder Führungskraft des GIP-Sessions, die genau für Sie gemacht sind.
- 0:35An 10 vollen Tagen können Sie diverse Technologien erkunden und sich mit der globalen Community vernetzen.
- 0:40Schauen Sie live zu und nehmen Sie praktische Erkenntnisse für Ihr Unternehmen mit.
- 0:45Januar 2027, 10 Tage, eine Microsoft-Community.
- 0:49Die Registrierung ist jetzt eröffnet.
- 0:51Gehen Sie auf m365.com.net und sichern Sie sich noch heute Ihren Platz.
- 0:55Das ist m365.com.net.
- 1:00Melden Sie sich jetzt auf m365.net an.
- 1:02Wir sehen uns live im Januar, Refin.
- 1:04Das heutige Thema ist etwas, von dem fast jeder, der mit Microsoft 365 arbeitet, schon gehört hat.
- 1:09Aber die meisten verstehen nicht wirklich, wie es im Hintergrund funktioniert.
- 1:12Ich spreche von Microsoft Graph Änderungsbenachrichtigungen.
- 1:16Was genau sind Sie und warum sollten Sie Sie interessieren?
- 1:18Fangen wir mit dem Problem an, das Sie lösen.
- 1:20Stellen Sie sich vor, Sie entwickeln eine App, die wissen muss, wenn sich in Microsoft 365 etwas ändert.
- 1:24Vielleicht geht eine neue E-Mail ein, jemand aktualisiert eine Datei in SharePoint oder ein neuer Benutzer wird im Firmenverzeichnis hinzugefügt.
- 1:29Wie findet Ihre App das aber?
- 1:30Die Sache ist die, der alte Weg ist das Polling.
- 1:33Ihre App sendet alle paar Minuten eine Anfrage an Microsoft Graph und fragt,
- 1:36gibt es etwas Neues seit meiner letzten Prüfung?
- 1:38Wenn sich nichts geändert hat, haben Sie eine Anfrage verschwendet.
- 1:40Und wenn sich fünf Sekunden nach Ihrer Prüfung etwas ändert, erfahren Sie es erst beim nächsten Zyklus.
- 1:45Sie prüfen entweder zu oft verschwendende Ressourcen und riskieren Drosselungen oder zu selten, wodurch Sie Dinge verpassen.
- 1:50Microsoft drosselt tatsächlich Apps, die zu aggressiv pollen.
- 1:53Entwickler nennen es Graph-Gefängnis.
- 1:55Und Ihre App wird eine Zeit lang blockiert, weil sie zu viele Anfragen stellt.
- 1:59Die Frage lautet also, gibt es keinen besseren Weg?
- 2:01Was wäre, wenn das System Ihnen einfach Bescheid gäbe, wenn sich etwas ändert, anstatt dass Ihre App ständig fragt?
- 2:06Genau das tun Änderungsbenachrichtigungen.
- 2:09Was sind Microsoft Graph Änderungsbenachrichtigungen?
- 2:11Hier ist die einfachste Definition.
- 2:13Änderungsbenachrichtigungen lassen Ihre App sofort auf Ereignisse in Microsoft Reinewurt von B6 reagieren, ohne ständiges Prüfen.
- 2:19Stellen Sie es sich wie ein Bewegungsmelder an Ihrem Briefkasten vor.
- 2:21Anstatt stündlich vorbeizulaufen, um hineinzusehen, installieren Sie einen Sensor, der Sie benachrichtigt, sobald Post ankommt.
- 2:27Sie verschwenden keine Zeit mehr mit Lehr- und Prüfungen und verpassen Ihr Endezustimmen.
- 2:30Genau das tun Änderungsbenachrichtigungen für Ihre App.
- 2:32Wenn sich etwas ändert, wie bei einer neuen E-Mail, einer aktualisierten Datei oder einem Kalenderereignis, sendet Microsoft Graph automatisch eine Benachrichtigung an Ihre App.
- 2:39Kein Abrufboiling erfordert.
- 2:41Dieses System besteht aus zwei Teilen, einem Abonnement und einer Benachrichtigung, die zusammenarbeiten.
- 2:46Beim Abonnement teilen Sie Microsoft Graph mit, was Sie überwachen möchten.
- 2:48Sie sagen zum Beispiel, hey, sag mir Bescheid, wenn jemand eine neue Nachricht an diesem Posteingang sendet.
- 2:53Oder sag mir Bescheid, wenn eine Datei in dieser SharePoint-Bibliothek aktualisiert wird.
- 2:56Sie registrieren Ihr Interesse und Graph Magazine.
- 2:58Die Benachrichtigung ist das, was als nächstes passiert.
- 3:00Wenn die Änderung eintritt, sendet Graph ein HTTP-Post an einen von Ihnen bereitgestellten Endpunkt.
- 3:04Ihre App empfängt diesen Post, weiß, dass etwas passiert ist und kann dann entscheiden, was zu tun ist.
- 3:08Zum Beispiel neue Daten abrufen, einen Workflow auslösen oder eine Datenbank aktualisieren.
- 3:13Hier ist der entscheidende Unterschied zum Abrufverfahren.
- 3:15Benachrichtigungen werden automatisch zugestellt.
- 3:16Ihre App muss nicht nachfragen. Das System übermittelt die Informationen in dem Moment, in dem sie eintritt.
- 3:20Das ist das Magische daran.
- 3:22Microsoft Graph unterstützt Änderungsbenachrichtigungen für eine Vielzahl von Ressourcen.
- 3:25Nachrichtenereignisse, Kontakte, Benutzergruppen, Dateien, Teams-Nachrichten, Sicherheitswarnungen.
- 3:30So ziemlich alles, worauf Sie über Graph zugreifen können, kann auf Änderungen überwacht werden.
- 3:33Aber wie richtet man das eigentlich ein?
- 3:35Wie teilen Sie Graph mit, was beobachtet werden soll und wohin die Warnungen gesendet werden?
- 3:38Ein Abonnement erstellen.
- 3:39Graph mitteilen, was beobachtet werden soll.
- 3:41Was ist also ein Abonnement?
- 3:42Es ist einfach eine Registrierungsanfrage.
- 3:44Ihre App sagt, gib mir Bescheid, wenn dies geschieht.
- 3:45Und Sie senden diese Anfrage an die Microsoft Graph API.
- 3:48Graph speichert Sie und wartet.
- 3:49Sie müssen Graph in dieser Anfrage einige Details mitteilen.
- 3:52Erstens die Ressourcen, die Sie überwachen möchten, also den Pfad zu den Daten.
- 3:55Zum Beispiel Users, wenn Sie Änderungen an Benutzerkonten überwachen.
- 3:58Oder Mailfolder-Mailfolder-Inbox-Messages-Wormails, wenn neue E-Mails informiert werden möchten.
- 4:03Als nächstes die ADN.
- 4:05Möchten Sie wissen, wann etwas erstellt, aktualisiert oder gelöscht wird?
- 4:08Sie können eine auswählen oder alle drei anfordern.
- 4:10Drittens die Benachrichtigungs-URL.
- 4:11Dies ist die Adresse Ihres Endpunkts, der Ort, an den Graph die Benachrichtigung senden soll, wenn etwas passiert.
- 4:15Es muss ein öffentlich zugänglicher HTTPS-Endpunkt sein.
- 4:18Dabei gibt es keine Abgrößungen.
- 4:19Viertens das Ablaufdat.
- 4:20Abonnements dauern nicht ewig.
- 4:22Sie wählen ein zukünftiges Datum und eine Uhrzeit aus, an denen das Abonnement hat.
- 4:25Aber verschiedene Ressourcen haben unterschiedliche maximale Laufzeiten.
- 4:28Outlook-Nachrichten können bis zu sieben Tage laufen.
- 4:30Teams-Chat-Nachrichten sind auf maximal drei Tage begrenzt.
- 4:33SharePoint-Dateien können etwa 30 Tage lang bestehen.
- 4:35Präsenz-Formationen?
- 4:36Diese laufen schon nach einer Stunde ab.
- 4:38Hier ist ein konkretes Beispiel.
- 4:39Angenommen, Sie möchten wissen, wann jemand in Ihrem Unternehmen die Berufsbezeichnung ändert.
- 4:42Sie erstellen ein Abonnement für die Benutzer-Ressource mit dem Änderungstyp aktualisiert.
- 4:46Sie verweisen auf Ihre Benachrichtigungs-URL und setzen das Ablaufdatum auf einige Tage später.
- 4:49Wenn jemand sein Profil in Azure ID aktualisiert, sendet Graph einen Poster in Ihren Endpunkt mit einer Benachrichtigungs-Nutzlast.
- 4:55Diese Nutzlast enthält die ID des Benutzers und teilt Ihnen mit, was sich geändert.
- 4:58Ihre App kann dann darauf reagieren, ein HR-System aktualisieren, eine Benachrichtigung an den Manager auslösen oder was immer Sie benötigen.
- 5:03Graph antwortet auf Ihre Abonnement-Anfrage mit einer Abonnement-ID.
- 5:06Sie benötigen diese ID später, um das Abonnement zu verwalten, zu erneuern, zu aktualisieren oder zu löschen.
- 5:11Aber hier ist der Punkt.
- 5:12Bevor Graph mit dem Senden von Benachrichtigungen beginnt, muss bestätigt werden, dass Ihr Endpunkt tatsächlich aktiv ist und zuhört.
- 5:17Das erfordert ein Handshake.
- 5:19Die Validierung des Handshake-Tokens erklärt.
- 5:22Wenn Sie ein Abonnement erstellen, vertraut Microsoft Graph Ihrem Endpunkt nicht blinden.
- 5:26Es sendet zuerst ein Test-Ping, eine Verifizierungsanfrage.
- 5:29Dieser Ping enthält ein Validierungstoken, eine zufällige Zeichenfolge.
- 5:32Ihr Endpunkt muss dieses Token empfangen und innerhalb von 10 Sekunden als Glatt-Text zurücksenden.
- 5:36Stellen Sie es sich wie einen Zusteller vor, der an Ihrer Tür klingelt, um sicherzugehen, dass Sie zu Hause sind, bevor Ihr ein Paket hintet.
- 5:41Wenn niemand antwortet, lässt der Fahrer nichts da.
- 5:43Genau wie hier.
- 5:44Wenn Ihr Endpunkt das Validierungstoken nicht zurückgibt, sendet Graph keine Benachrichtigungen dorthin.
- 5:49Die Antwort muss Klartext sein.
- 5:50Kein JSON oder XML, nur die reine Token-Zeichenfolge.
- 5:54Wenn das Format nicht stimmt, schlägt der Handshake-Fähl.
- 5:56Es ist in der Sicherheitsüberprüfung.
- 5:57Sie beweist, dass Ihr Endpunkt aktiv ist, zuhört und unter Ihrer Kontrolle steht.
- 6:01Dies verhindert, dass jemand ein Abonnement auf eine URL richtet, die ihm nicht gehört, in der Hoffnung, Benachrichtigungen für jemand anderen abzufangen.
- 6:06Kein Handshake bedeutet kein Abonnement.
- 6:08Graph lehnt die Erstellungsanfrage ab und Sie erhalten eine Fehlermeldung.
- 6:11Sie korrigieren Ihren Endpunkt und versuchen es an.
- 6:13Sobald der Handshake erfolgreich war, ist das Abonnement aktiv und die Benachrichtigungen fließen.
- 6:17Aber hier ist die Sache.
- 6:18Sie fließen nicht für immer.
- 6:20Die Verbindung aktiv halten.
- 6:22Abonnement erneuert.
- 6:23Jedes Abonnement hat einen Ablaufdatum.
- 6:25Sie legen es bei der Erstellung fest.
- 6:27Graph setzt es durch.
- 6:28Wenn dieser Tag kommt, endet das Abonnement.
- 6:30Keine Benachrichtigungen mehr.
- 6:32Stellen Sie es sich wie eine Parkuhr vor.
- 6:34Sie bezahlen die Zeit und wenn sie abläuft, läuft die Parkuhr ab.
- 6:37Verschiedene Ressourcen haben unterschiedliche Limits.
- 6:39Outlook-Nachrichten können sieben Tage laufen.
- 6:42Teams-Chat-Nachrichten drei Tage.
- 6:43SharePoint-Dateien etwa 30 Tage.
- 6:45Präsenzinformationen nur eine Stunde.
- 6:47Deine App kann also nicht einfach ein Abonnement erstellen und ist dann vergessen.
- 6:50Du benötigst einen Prozess, der es am Leben erhält.
- 6:52Die Erneuerung ist einfach.
- 6:53Sende eine Patch-Anfrage mit der Abonnement-ID.
- 6:55Füge ein neues Ablaufdatum hinzu.
- 6:57Tut dies, bevor das aktuelle abläuft und Graph verlängert das Abonnement.
- 7:01Hier ist die bewährte Methode, die ich empfehle.
- 7:03Überprüfe den Ablaufzeitstempel bei jeder Benachrichtigung, die du erhältst.
- 7:06Wenn es kurz vor dem Ablauf steht, sagen wir innerhalb eines Tages, erneuere sofort.
- 7:09Auf diese Weise brauchst du keinen separaten Hintergrundjob nur für die Abonnementverwaltung.
- 7:12Microsoft hat auch Lebenszyklus-Benachrichtigungen hinzugefügt.
- 7:15Diese Warnmeldungen informieren dich, bevor ein Abonnement abläuft.
- 7:18Sie sagen dir, wenn dein Abonnement bald endet oder wenn dein Zugriffstoken neu autorisiert werden muss.
- 7:22Abonniere diese und deine App kann erneuern, bevor etwas ausfällt.
- 7:26Aber was, wenn dein Endpunkt ausfällt oder du ein Erneuerungsfenster verpasst?
- 7:28Genau hier kommt das Sicherheitsnetz ins Spiel.
- 7:31Wenn Dinge schief gehen, Zuverlässigkeit und Sicherheitsnetze.
- 7:34Dein Abonnement ist aktiv, dein Endpunkt empfängt, Benachrichtigungen fließen.
- 7:37Alles sieht gut aus, aber was passiert, wenn etwas kaputt geht?
- 7:40Vielleicht geht dein Endpunkt wegen Wartung offline.
- 7:41Ein Netzwerkproblem lässt deine Nachricht fallen.
- 7:44Oder du verpasst das Zeitfenster und das Abo läuft ab.
- 7:46Da etwas passiert eben.
- 7:47Die Frage ist, wie erholst du dich davon?
- 7:49Microsoft Graph erwartet, dass dein Web.endpunkt schnell reagiert, innerhalb von 3 Sekunden.
- 7:53Wenn es länger dauert, markiert Graph ihn als langsam.
- 7:55Wenn mehr als 10% deiner Antworten in einem 10-Minuten-Zeitraum 3 Sekunden überschreiten,
- 7:59verzögert Graph die Benachrichtigung in 10 Minuten.
- 8:01Es sendet nur eine kleine Stichprobe, um zu prüfen, ob du dich erholt hast.
- 8:04Es wird noch schlimmer.
- 8:05Wenn mehr als 15% deiner Antworten das 10-sekündige Retray-Timeout überschreiten,
- 8:08markiert Graph deinen Endpunkt als verworfen.
- 8:10Benachrichtigungen stoppen für 10 Minuten komplett.
- 8:12Die sind weg. Du kannst sie nicht zurückholen.
- 8:13Dein Endpunkt muss also schnell und zuverlässig sein.
- 8:15Das bedeutet nicht, dass du jede Benachrichtigung unter 3 Sekunden verarbeiten musst.
- 8:19Bestätige den Empfang schnell mit einer 202-Accepted-Antwort
- 8:22und verarbeite die Benachrichtigung dann asynchron.
- 8:25Reihe sie ein. Bearbeite sie spät.
- 8:26Der Schlüssel ist diese schnelle Antwort.
- 8:28Selbst bei einem perfekten Endpunkt kann noch etwas schief gehen.
- 8:30Abonnements laufen ab.
- 8:32Netzwerkstörung kommt.
- 8:33In seltenen Fällen könnte sogar Microsoft Graph selbst eine Benachrichtigung verpassen.
- 8:37Deshalb brauchst du ein Sicherheitsnetz.
- 8:38Delta-Abfragen. Stellst dir so vor.
- 8:40Änderungsbenachrichtigungen sind der Feuerlangen.
- 8:42Sie sagen dir, dass gerade etwas passiert.
- 8:43Delta-Abfragen sind die Spring-Kleinlage.
- 8:45Sie fangen alles auf, was der Alarm verpasst hat.
- 8:47Sie arbeiten zusammen.
- 8:48Benachrichtigungen bieten dir Echtzeitwahrnehmung.
- 8:50Delta-Abfragen liefern dir ein vollständiges Bild, das du jederzeit abgleichen kannst.
- 8:53Das empfohlene Muster ist einfach.
- 8:55Nutzen Sie Änderungsbenachrichtigungen für sofortige Informationen.
- 8:57Führen Sie regelmäßig eine Delta-Abfrage aus,
- 8:59vielleicht alle paar Stunden oder einmal täglich, um alles zu erfassen, was durchgegangen ist.
- 9:02Auf diese Weise verpassen Sie nie dauerhaft eine Änderung,
- 9:04selbst wenn eine Benachrichtigung verloren ging oder ein Abonnement abgelaufen ist.
- 9:08Praxisnahe Anwendungsfälle.
- 9:09Was Sie damit aufbauen können.
- 9:10Was ermöglicht das also konkret?
- 9:12Lassen Sie mich Ihnen einige echte Beispiele zeigen.
- 9:13Nehmen wir die HR-Automatisierung.
- 9:15Stellen Sie sich vor, jemand fängt morgen in Ihrem Unternehmen an.
- 9:17Sobald EntraID einen neuen Benutzer erstellt, wird eine Änderungsbenachrichtigung ausgelöst.
- 9:21Ihre App ruft das Profil ab und erstellt in sekundenschnelle Konten für Ihre HR-Plattform,
- 9:24Zeiterfassung und Gebäudezutritt.
- 9:26Kein Polling, keine Verzögerung.
- 9:28Bei Sicherheitswarnungen, zum Beispiel wenn ein Benutzerkonto deaktiviert wird.
- 9:31Eine Änderungsbenachrichtigung stößt einen Workflow an,
- 9:33der auf verdächtige Änderungen prüft und Ihr Sicherheitsteam alarmiert.
- 9:36Früher hätte man alle paar Minuten abgefragt.
- 9:37Jetzt geschieht es sofort.
- 9:39Die Inhaltsverarbeitung funktioniert genauso.
- 9:41Wenn eine Datei in einer SharePoint-Dokumentenbibliothek landet,
- 9:43möchten Sie wissen, ob es eine Rechnung ist.
- 9:45Die Benachrichtigung teilt Ihnen mit, dass eine neue Datei existiert.
- 9:47Ihre App greift darauf zu, klassifiziert Sie mit SKI
- 9:49und sendet Sie automatisch an das richtige Spesensystem.
- 9:53Echtzeitdashboards zeigen Analysen, während sie passieren, nicht erst nach Stunden.
- 9:57Änderungsbenachrichtigungen synchronisieren Dataverse sofort mit Fabric.
- 9:59Ihre Power BI-Dashboards werden nahezu in Echtzeit aktualisiert.
- 10:02Hier ist eines, das ich interessant finde.
- 10:04Co-Pilot-Connectoren.
- 10:04Microsoft fügt Echtzeitsynchronisierung über Webhooks hinzu,
- 10:07sodass KI-Agenten reagieren, sobald sich Daten ändern.
- 10:10Wenn ein Kundendatensatz in Dynamics 365 aktualisiert wird,
- 10:13erstellt ein Co-Pilot-Agent sofort ein Follow-up, ohne Wartezeit.
- 10:17All diese Beispiele haben eins gemeinsam.
- 10:20Vor den Änderungsbenachrichtigungen haben Sie geplante Jobs erstellt,
- 10:22die stündlich oder täglich abgefragt haben.
- 10:24Es funktionierte, war aber langsam, ineffizient und fehlanfällig.
- 10:28Änderungsbenachrichtigungen kehren dieses Modell.
- 10:30Echtzeit-Ereignis gesteuert sofort.
- 10:31Wahl des richtigen Bereitstellungskanals.
- 10:34Nicht jede App benötigt dieselbe Bereitstellung.
- 10:36Schauen wir uns Ihre Optionen an.
- 10:37Webhooks sind am einfachsten.
- 10:39Graph sendet einen HTTP-Poster an Ihren Endpunkt.
- 10:41Sie verarbeiten ihn und fahren fort.
- 10:43Bei niedrigen bis mittlerem Volumen,
- 10:44sagen wir ein paar hundert Benachrichtigungen pro Stunde,
- 10:45funktioniert das einwandfrei.
- 10:46Aber was, wenn Sie etwas Größeres bauen?
- 10:48Tausende Benachrichtigungen pro Sekunde
- 10:50können einen einzelnen Endpunkt überlasten.
- 10:52Sie benötigen etwas Leistungsstärkeres.
- 10:53Event-Hubs bewältigt Millionen von Ereignissen pro Sekunde.
- 10:55Anstatt dass Graph Benachrichtigungen einzeln sendet,
- 10:58schickt es Sie an einen Hub.
- 10:59Ihre App liest in Ihrem eigenen Tempo
- 11:01mit geringen Risikonüberflutung.
- 11:02Dies ist für große Unternehmensszenarien
- 11:04wie Tausende von SharePoint-Sites
- 11:05oder Millionen von Postfächern gedacht.
- 11:06Dann gibt es noch Event-Grid, die serverlose Option.
- 11:08Es sendet Benachrichtigungen an Azure Functions
- 11:10oder Logic-Apps
- 11:11und übernimmt automatisch Wiederholungsversuche
- 11:13sowie Dead-Lettering.
- 11:14Wir sehen uns beim nächsten Mal.