Recevoir des notifications de modification pour les mises à jour des événements d’appel d’urgence Microsoft Teams
Microsoft Teams prend en charge les notifications pour les appels d’urgence. Ces notifications peuvent être routées pour informer le personnel de sécurité spécifique au sein de Teams. La notification des événements d’appel d’urgence de Microsoft Graph étend cette fonctionnalité pour permettre la réception de notifications d’appel d’urgence en dehors de Teams (par exemple, par des applications clientes personnalisées), comme illustré dans le diagramme suivant.
- L’administrateur du locataire Teams configure l’appel d’urgence pour le locataire.
- L’application cliente crée un abonnement aux événements d’appel d’urgence Microsoft Graph.
- La notification d’événement d’appel d’urgence est déclenchée à l’application cliente lorsqu’un utilisateur Teams effectue un appel d’urgence (par exemple, 911) sur Teams.
- L’application cliente renouvelle l’abonnement existant avant son expiration ou en crée un après son expiration pour continuer à s’abonner aux notifications d’événements d’appel d’urgence.
Autorisations
Type d’autorisation | Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins) | Versions prises en charge |
---|---|---|
Déléguée (compte professionnel ou scolaire) | Non prise en charge. | Non prise en charge. |
Déléguée (compte Microsoft personnel) | Non prise en charge. | Non prise en charge. |
Application | CallEvents-Emergency.Read.All | Bêta. |
S’abonner aux événements de démarrage d’appel d’urgence
Pour vous abonner à lorsqu’un numéro de stratégie d’appel d’urgence est composé, définissez la resource
propriété dans la charge utile communications/calls/getEmergencyEventsByPolicy(policyName='{policyName}')
de l’abonnement sur , en remplaçant le {policyName}
champ par le nom de stratégie configuré pour votre organization.
Les abonnements aux événements d’appel d’urgence prennent uniquement en charge les notifications enrichies. Définissez includeResourceData
sur true
et fournissez une valeur de certificat codé en base64 pour encryptionCertificate
et un identificateur de chaîne pour encryptionCertificateId
. Pour plus d’informations, consultez Configurer des notifications de modification qui incluent des données de ressources.
Les abonnements pour les événements d’appel d’urgence ont une durée de vie maximale d’un jour. Pour conserver les abonnements plus longtemps, mettez à jour la propriété expirationDateTime de l’abonnement. Pour plus d’informations, consultez Mettre à jour l’API d’abonnement.
Remarque
Les abonnements sont limités à un abonnement par combinaison de nom d’application, de locataire et de stratégie. Un deuxième abonnement qui utilise la même application, le même locataire et la même stratégie d’urgence qu’un autre échoue avec le code de status HTTP 409, ce qui signifie que la demande d’abonnement a été dupliquée et ne peut pas être créée.
Exemple de charge utile d’abonnement
POST https://graph.microsoft.com/beta/subscriptions
Content-Type: application/json
{
"changeType": "updated",
"notificationUrl": "https://contoso.com/notificationUrl",
"resource": "communications/calls/getEmergencyEventsByPolicy(policyName='EmergencyPolicy')",
"includeResourceData": true,
"encryptionCertificate": "{base64encodedCertificate}",
"encryptionCertificateId": "{customId}",
"expirationDateTime": "2021-02-01T11:00:00.0000000Z",
"clientState": "{secretClientState}"
}
Pour la définition des propriétés sur la demande d’abonnement, consultez Ressource d’abonnement.
Notifications d’événements d’appel d’urgence
Les notifications pour les appels d’urgence sont déclenchées lorsqu’un appel avec une stratégie d’appel d’urgence applicable est lancé.
Exemple de charge utile de notification
POST https://contoso.com/notificationUrl
Content-Type: application/json
{
"value": [{
"subscriptionId": "{Subscription id}",
"clientState": "{secret client state}",
"changeType": "updated",
"tenantId": "00000000-0000-0000-0000-000000000000",
"resource": "communications/calls/getEmergencyEventsByPolicy(policyName='EmergencyPolicy')",
"subscriptionExpirationDateTime": "2021-02-01T11:00:00.0000000Z",
"resourceData": {
"@odata.id": "communications/calls/getEmergencyEventsByPolicy(policyName='EmergencyPolicy')",
"@odata.type": "#microsoft.graph.emergencyCallEvent",
"id": "11111111-0000-0000-0000-000000000000",
},
"organizationId": "00000000-0000-0000-0000-000000000000",
"encryptedContent": {
"data": "{Encrypted content}",
"dataSignature": "{Encrypted data signature}",
"dataKey": "{Encrypted data key for encrypting content}",
"encryptionCertificateId": "{User specified id of encryption certificate}",
"encryptionCertificateThumbprint": "{Encrpytion certification thumbprint}"
}
}],
"validationTokens": ["{Validation Tokens}"]
}
Exemple de données de ressource de notification déchiffrées
{
"@odata.id": "communications/calls/getEmergencyEventsByPolicy(policyName='EmergencyPolicy')",
"@odata.type": "#microsoft.graph.emergencyCallEvent",
"id": "11111111-0000-0000-0000-000000000000",
"emergencyCallEvent": {
"id": "11111111-0000-0000-0000-000000000000",
"callEventType": "callStarted",
"policyName": "EmergencyPolicy",
"eventDateTime": "2024-01-01T10:00:00.0000000+00:00",
"emergencyNumberDialed": "{emergencyNumberDialed}",
"callerInfo": {
"displayName": "Emergency caller display name",
"upn": "emergencyCaller@contoso.com",
"phoneNumber": "00000000000",
"tenantId": "00000000-0000-0000-0000-000000000000",
"location": {
"address": {
"street": "Microsoft Way",
"city": "Redmond",
"state": "WA",
"countryOrRegion": "United States",
"postalCode": "00000",
"additionalData": {
"companyName": "Company name",
"additionalInfo": "700",
"houseNumber": "725",
"county": "County",
"streetSuffix": "Street suffix"
}
},
"coordinates": {
"latitude": "00.0000",
"longitude": "00.0000"
}
}
}
}
}