Partage via


Réaction aux événements d’Azure SignalR Service

Les événements Azure SignalR Service permettent aux applications de réagir aux connexions établies ou interrompues à l’aide d’architectures sans serveur modernes. et sans qu’il soit nécessaire de faire appel à du code complexe ou à des services d’interrogation coûteux et inefficaces. Au lieu de cela, les événements sont envoyés (push) via Azure Event Grid aux abonnés, comme Azure Functions, Azure Logic Apps, ou même à votre propre écouteur HTTP personnalisé. Avec Azure SignalR, vous ne payez que ce que vous utilisez.

Les événements Azure SignalR Service sont envoyés de manière fiable au service Event Grid qui fournit des services de remise fiables à vos applications via des stratégies de nouvelle tentative enrichies et la remise de lettres mortes. Pour plus d’informations, consultez Distribution et nouvelle tentative de distribution de messages avec Azure Grid.

Event Grid Model

État sans serveur

Les événements Azure SignalR Service ne sont actifs que lorsque les connexions clientes sont dans un état serverless. Si un client n’est pas acheminé vers un serveur hub, il passe à l’état serverless. Le mode classique fonctionne uniquement lorsque le hub utilisé pour les connexions clientes n’a pas de serveur hub. Il est recommandé d’utiliser le mode serverless. Pour plus d’informations sur le mode de service, consultez Comment choisir le mode de service.

Événements Azure SignalR Service disponibles

Event Grid utilise les abonnements aux événements pour acheminer les messages d’événements vers les abonnés. Les abonnements d’événement Azure SignalR Service prennent en charge deux types d’événements :

Nom de l'événement Description
Microsoft.SignalRService.ClientConnectionConnected Déclenché lorsqu’une connexion client est établie.
Microsoft.SignalRService.ClientConnectionDisconnected Déclenché lorsqu’une connexion client est interrompue.

Schéma d’événement

Les événements Azure SignalR Service contiennent toutes les informations dont vous avez besoin pour répondre aux modifications de vos données. Vous pouvez identifier un événement Azure SignalR Service avec la propriété eventType commence par Microsoft.SignalRService. Plus d’informations sur l’utilisation des propriétés d’événement Event Grid sont documentées dans schéma d’événement Event Grid.

Voici un exemple d’événement connecté à une connexion cliente :

[{
  "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"
}]

Pour plus d’informations, consultez Schéma d’événements SignalR Service.

Étapes suivantes

En savoir plus sur Event Grid et essayer les événements Azure SignalR Service :