Delen via


Reageren op Azure SignalR Service-gebeurtenissen

Met Azure SignalR Service-gebeurtenissen kunnen toepassingen reageren op clientverbindingen die zijn verbonden of losgekoppeld met behulp van moderne serverloze architecturen. Het doet dit zonder de noodzaak van ingewikkelde code of dure en inefficiƫnte polling-services. In plaats daarvan worden gebeurtenissen via Azure Event Grid gepusht naar abonnees zoals Azure Functions, Azure Logic Apps of zelfs naar uw eigen aangepaste HTTP-listener. Met Azure SignalR betaalt u alleen voor wat u verbruikt.

Azure SignalR Service-gebeurtenissen worden betrouwbaar verzonden naar de Event Grid-service die betrouwbare leveringsservices aan uw toepassingen biedt via uitgebreid beleid voor opnieuw proberen en bezorging van dode brieven. Zie De bezorging van Event Grid-berichten en probeer het opnieuw voor meer informatie.

Event Grid Model

Serverloze status

Azure SignalR Service-gebeurtenissen zijn alleen actief wanneer clientverbindingen zich in een serverloze status bevinden. Als een client niet wordt gerouteerd naar een hubserver, wordt deze in de serverloze status gebracht. De klassieke modus werkt alleen wanneer de hub waarmee clientverbindingen verbinding maken geen hubserver heeft. Serverloze modus wordt aanbevolen als best practice. Zie Servicemodus kiezen voor meer informatie over de servicemodus.

Beschikbare Azure SignalR Service-gebeurtenissen

Event Grid maakt gebruik van gebeurtenisabonnementen om gebeurtenisberichten naar abonnees te routeren. Azure SignalR Service-gebeurtenisabonnementen ondersteunen twee soorten gebeurtenissen:

Gebeurtenisnaam Beschrijving
Microsoft.SignalRService.ClientConnectionConnected Wordt gegenereerd wanneer een clientverbinding is verbonden.
Microsoft.SignalRService.ClientConnectionDisconnected Wordt gegenereerd wanneer de verbinding met een client wordt verbroken.

Gebeurtenisschema

Azure SignalR Service-gebeurtenissen bevatten alle informatie die u nodig hebt om te reageren op de wijzigingen in uw gegevens. U kunt een Azure SignalR Service-gebeurtenis identificeren met de eigenschap eventType, begint met Microsoft.SignalRService. Aanvullende informatie over het gebruik van Event Grid-gebeurteniseigenschappen wordt beschreven in het Event Grid-gebeurtenisschema.

Hier volgt een voorbeeld van een verbonden gebeurtenis voor een clientverbinding:

[{
  "topic": "/subscriptions/{subscription-id}/resourceGroups/signalr-rg/providers/Microsoft.SignalRService/SignalR/signalr-resource",
  "subject": "/hub/chat",
  "eventType": "Microsoft.SignalRService.ClientConnectionConnected",
  "eventTime": "2019-06-10T18:41:00.9584103Z",
  "id": "831e1650-001e-001b-66ab-eeb76e069631",
  "data": {
    "timestamp": "2019-06-10T18:41:00.9584103Z",
    "hubName": "chat",
    "connectionId": "crH0uxVSvP61p5wkFY1x1A",
    "userId": "user-eymwyo23"
  },
  "dataVersion": "1.0",
  "metadataVersion": "1"
}]

Zie het schema voor signalR-service-gebeurtenissen voor meer informatie.

Volgende stappen

Meer informatie over Event Grid en azure SignalR Service-gebeurtenissen proberen: