Azure Communication Services: eventos de llamada de voz y vídeo
En este artículo, se proporcionan las propiedades y el esquema de los eventos de llamadas de voz y vídeo de los servicios de comunicación. Para una introducción a los esquemas de eventos, consulte Esquema de eventos de Azure Event Grid.
Tipos de eventos
Azure Communication Services emite los siguientes tipos de eventos de llamada de voz y vídeo:
Tipo de evento | Descripción |
---|---|
Microsoft.Communication.RecordingFileStatusUpdated | Publicado cuando hay disponible un archivo de grabación |
Microsoft.Communication.CallStarted | Publicado cuando se inicia una llamada |
Microsoft.Communication.CallEnded | Publicado cuando finaliza una llamada |
Microsoft.Communication.CallParticipantAdded | Publicado cuando se agrega un participante a una llamada Y se unen a él |
Microsoft.Communication.CallParticipantRemoved | Publicado cuando un participante sale o se quita de una llamada |
Microsoft.Communication.IncomingCall | Publicado cuando hay una llamada entrante |
Respuestas de eventos
Cuando se desencadena un evento, el servicio Event Grid envía datos sobre ese evento a los puntos de conexión correspondientes.
Esta sección contiene un ejemplo del aspecto que deben tener los datos para cada evento.
Microsoft.Communication.RecordingFileStatusUpdated
[
{
"id": "7283825e-f8f1-4c61-a9ea-752c56890500",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "/recording/call/{call-id}/serverCallId/{server-call-id}/recordingId/{recording-id}",
"data": {
"recordingStorageInfo": {
"recordingChunks": [
{
"documentId": "0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8",
"index": 0,
"endReason": "SessionEnded",
"contentLocation": "https://storage.asm.skype.com/v1/objects/0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8/content/video",
"metadataLocation": "https://storage.asm.skype.com/v1/objects/0-eus-d12-801b3f3fc462fe8a01e6810cbff729b8/content/acsmetadata",
"deleteLocation": "https://us-storage.asm.skype.com/v1/objects/0-eus-d1-83e9599991e21ad21220427d78fbf558"
}
]
},
"recordingStartTime": "2021-07-27T15:20:23.6089755Z",
"recordingDurationMs": 6620,
"sessionEndReason": "CallEnded"
},
"eventType": "Microsoft.Communication.RecordingFileStatusUpdated",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-07-27T15:20:34.2199328Z"
}
]
Importante
La funcionalidad descrita en este artículo se encuentra actualmente en versión preliminar pública. Esta versión preliminar se ofrece sin un Acuerdo de Nivel de Servicio y no se recomienda para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas. Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.
Microsoft.Communication.CallStarted
[
{
"id": "a8bcd8a3-12d7-46ba-8cde-f6d0bda8feeb",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "call/{serverCallId}/startedBy/8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"data": {
"startedBy": {
"communicationIdentifier": {
"rawId": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"communicationUser": {
"id": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1"
}
},
"role": "{role}"
},
"serverCallId": "{serverCallId}",
"group": {
"id": "00000000-0000-0000-0000-000000000000"
},
"room": {
"id": "{roomId}"
},
"isTwoParty": false,
"correlationId": "{correlationId}",
"isRoomsCall": true
},
"eventType": "Microsoft.Communication.CallStarted",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-09-22T17:02:38.6905856Z"
}
]
Microsoft.Communication.CallEnded
[
{
"id": "530183db-987b-4a3a-b6c1-3391bab12864",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "call/{serverCallId}",
"data": {
"durationOfCall": 49.728617199999995,
"startedBy": {
"communicationIdentifier": {
"rawId": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"communicationUser": {
"id": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1"
}
},
"role": "{role}"
},
"serverCallId": "{serverCallId}",
"group": {
"id": "00000000-0000-0000-0000-000000000000"
},
"room": {
"id": "{roomId}"
},
"isTwoParty": false,
"correlationId": "{correlationId}",
"isRoomsCall": true
},
"eventType": "Microsoft.Communication.CallEnded",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-09-22T17:03:12.6143005Z"
}
]
Microsoft.Communication.CallParticipantAdded
[
{
"id": "615adcbd-23b2-4563-aba7-9d1b424d3d38",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "call/{serverCallId}/participant/8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"data": {
"user": {
"communicationIdentifier": {
"rawId": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"communicationUser": {
"id": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1"
}
},
"role": "{role}"
},
"displayName": "Sharif Edge",
"participantId": "041e3b8a-1cce-4ebf-b587-131312c39410",
"endpointType": "acs-web-test-client-ACSWeb(3617/1.0.0.0/os=windows; browser=chrome; browserVer=93.0; deviceType=Desktop)/TsCallingVersion=_TS_BUILD_VERSION_/Ovb=_TS_OVB_VERSION_",
"startedBy": {
"communicationIdentifier": {
"rawId": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"communicationUser": {
"id": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1"
}
},
"role": "{role}"
},
"serverCallId": "{serverCallId}",
"group": {
"id": "00000000-0000-0000-0000-000000000000"
},
"room": {
"id": "{roomId}"
},
"isTwoParty": false,
"correlationId": "{correlationId}",
"isRoomsCall": true
},
"eventType": "Microsoft.Communication.CallParticipantAdded",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-09-22T17:02:39.2843314Z"
}
]
Microsoft.Communication.CallParticipantRemoved
[
{
"id": "7b2307f3-57ec-4257-85a1-8ce654534ea9",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "call/aHR0cHM6Ly9jb252LWRldi0yMS5jb252LWRldi5za3lwZS5uZXQ6NDQzL2NvbnYvbVQ4NnVfempBMG05QVM4VnRvSWFrdz9pPTAmZT02Mzc2Nzc3MTc2MDAwMjgyMzA/participant/8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-27cc-07fd-0848220077d8",
"data": {
"user": {
"communicationIdentifier": {
"rawId": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-27cc-07fd-0848220077d8",
"communicationUser": {
"id": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-27cc-07fd-0848220077d8"
}
},
"role": "{role}"
},
"displayName": "Sharif Chrome",
"participantId": "750a1442-3156-4914-94d2-62cf73796833",
"endpointType": "acs-web-test-client-ACSWeb(3617/1.0.0.0/os=windows; browser=chrome; browserVer=93.0; deviceType=Desktop)/TsCallingVersion=_TS_BUILD_VERSION_/Ovb=_TS_OVB_VERSION_",
"startedBy": {
"communicationIdentifier": {
"rawId": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1",
"communicationUser": {
"id": "8:acs:bc360ba8-d29b-4ef2-b698-769ebef85521_0000000c-1fb9-4878-07fd-0848220077e1"
}
},
"role": "{role}"
},
"serverCallId": "aHR0cHM6Ly9jb252LWRldi0yMS5jb252LWRldi5za3lwZS5uZXQ6NDQzL2NvbnYvbVQ4NnVfempBMG05QVM4VnRvSWFrdz9pPTAmZT02Mzc2Nzc3MTc2MDAwMjgyMzA",
"group": {
"id": "00000000-0000-0000-0000-000000000000"
},
"room": {
"id": "{roomId}"
},
"isTwoParty": false,
"correlationId": "{correlationId}",
"isRoomsCall": true
},
"eventType": "Microsoft.Communication.CallParticipantRemoved",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2021-09-22T17:28:41.1497652Z"
}
]
Microsoft.Communication.IncomingCall
[
{
"id": "d5546be8-227a-4db8-b2c3-4f06fd675fd6",
"topic": "/subscriptions/{subscription-id}/resourcegroups/{group-name}/providers/microsoft.communication/communicationservices/{communication-services-resource-name}",
"subject": "/caller/8:acs:98e4cbef-70e7-4733-8594-063c4a72d711_00000014-2033-438d-1000-343a0d006e10/recipient/8:acs:98e4cbef-70e7-4733-8594-063c4a72d711_00000014-1889-f3a7-6a0b-343a0d0061f3",
"data": {
"to": {
"kind": "communicationUser",
"rawId": "8:acs:98e4cbef-70e7-4733-8594-063c4a72d711_00000014-1889-f3a7-6a0b-343a0d0061f3",
"communicationUser": {
"id": "8:acs:98e4cbef-70e7-4733-8594-063c4a72d711_00000014-1889-f3a7-6a0b-343a0d0061f3"
}
},
"from": {
"kind": "communicationUser",
"rawId": "8:acs:98e4cbef-70e7-4733-8594-063c4a72d711_00000014-2033-438d-1000-343a0d006e10",
"communicationUser": {
"id": "8:acs:98e4cbef-70e7-4733-8594-063c4a72d711_00000014-2033-438d-1000-343a0d006e10"
}
},
"serverCallId": "tob2JIV0wzOHdab3dWcGVWZmsrL2QxYVZnQ2U1bVVLQTh1T056YmpvdXdnQjNzZTlnTEhjNFlYem5BVU9nRGY5dUFQ",
"callerDisplayName": "John Doe",
"customContext": {
"voipHeaders": {
"voipHeaderName": "value"
}
},
"incomingCallContext": "eyJhbGciOiJub25lIiwidHliSldUIn0.eyJjYyI6Ikg0c0lBQi9iT0JiOUs0SVhtQS9UMGhJbFVaUUlHQVBIc1J1M1RlbzgyNW4xcmtHJNa2hCNVVTQkNUbjFKTVo1NCt3ZDk1WFY0ZnNENUg0VDV2dk5VQ001NWxpRkpJb0pDUWlXS0F3OTJRSEVwUWo4aFFleDl4ZmxjRi9lMTlaODNEUmN6QUpvMVRWVXoxK1dWYm1lNW5zNmF5cFRyVGJ1KzMxU3FMY3E1SFhHWHZpc3FWd2kwcUJWSEhta0xjVFJEQ0hlSjNhdzA5MHE2T0pOaFNqS0pFdXpCcVdidzRoSmJGMGtxUkNaOFA4T3VUMTF0MzVHN0kvS0w3aVQyc09aS2F0NHQ2cFV5d0UwSUlEYm4wQStjcGtiVjlUK0E4SUhLZ2JKUjc1Vm8vZ0hFZGtRT3RCYXl1akc4cUt2U1dITFFCR3JFYjJNY3RuRVF0TEZQV1JEUzJHMDk3TGU5VnhhTktob2JIV0wzOHdab3dWcGVWZmsrL2QxYVZnQ2U1bVVLQTh1T056YmpvdXdnQjNzZTlnTEhjNFlYem5BVU9nRGY5dUFQMndsMXA0WU5nK1cySVRxSEtZUzJDV25IcEUySkhVZzd2UnVHOTBsZ081cU81MngvekR0OElYWHBFSi9peUxtNkdibmR1eEdZREozRXNWWXh4ZzZPd1hqc0pCUjZvR1U3NDIrYTR4M1RpQXFaV245UVIrMHNaVDg3YXpRQzbDNUR3BuZFhST1FTMVRTRzVVTkRGeU5UVjNORTFHU2kxck1UTk9VMUF0TWtWNVNreFRUVVI0YlMxRk1VdEVabnBRTjFsQ1EwWkVlVTQxZURCc1IyaHljVTVYTFROeWVTMVJNVjgyVFhrdGRFNUJZV3hrZW5SSVUwMTFVVE5GWkRKUkluMTlmUS5hMTZ0eXdzTDhuVHNPY1RWa2JnV3FPbTRncktHZmVMaC1KNjZUZXoza0JWQVJmYWYwOTRDWDFJSE5tUXRJeDN1TWk2aXZ3QXFFQWV1UlNGTjhlS3gzWV8yZXppZUN5WDlaSHp6Q1ZKemdZUVprc0RjYnprMGJoR09laWkydkpEMnlBMFdyUW1SeGFxOGZUM25EOUQ1Z1ZSUVczMGRheGQ5V001X1ZuNFNENmxtLVR5TUSVEifQ.",
"correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd"
},
"eventType": "Microsoft.Communication.IncomingCall",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2022-08-25T19:27:24.2415391Z"
}
]
Limitaciones
Además de IncomingCall
, los eventos de llamada solo están disponibles para los usuarios de VoIP de Azure Communication Services. Se excluyen los eventos de usuarios RTC, bots, bots de eco y Teams.
No habrá eventos de llamada disponibles para Azure Communication Services: llamada de interoperabilidad de reuniones en Teams.
Los eventos IncomingCall
tienen soporte para usuarios VoIP de Azure Communication Services y números PSTN. Para más información sobre qué escenarios pueden activar eventos IncomingCall
, consulte la siguiente documentación Conceptos de llamada entrante.
Pasos siguientes
Consulte el siguiente tutorial: Inicio rápido: Control de eventos de llamadas de voz y vídeo.