You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Call Automation uses a REST API interface to receive requests for actions and provide responses to notify whether the request was successfully submitted or not. Due to the asynchronous nature of calling, most actions have corresponding events that are triggered when the action completes successfully or fails. This guide covers the actions available for steering calls, like CreateCall, Transfer, Redirect, and managing participants. Actions are accompanied with sample code on how to invoke the said action and sequence diagrams describing the events expected after invoking an action. These diagrams help you visualize how to program your service application with Call Automation.
18
18
19
-
Call Automation supports various other actions to manage call media and recording that aren't included in this guide.
19
+
Call Automation supports various other actions to manage call media and recording that have separate guides.
20
20
21
21
> [!NOTE]
22
22
> Call Automation currently doesn't support [Rooms](../../concepts/rooms/room-concept.md) calls.
@@ -308,7 +308,7 @@ client.redirect_call(
308
308
```
309
309
310
310
-----
311
-
To redirect the call to a phone number, construct the target with PhoneNumberIdentifier.
311
+
To redirect the call to a phone number, construct the target and caller ID with PhoneNumberIdentifier.
312
312
313
313
# [csharp](#tab/csharp)
314
314
@@ -351,7 +351,7 @@ No events are published for redirect. If the target is a Communication Services
351
351
352
352
## Transfer a 1:1 call
353
353
354
-
When your application answers a call or places an outbound call to an endpoint, that endpoint can be transferred to another destination endpoint. Transferring a 1:1 call removes your application from the call and hence remove its ability to control the call using Call Automation.
354
+
When your application answers a call or places an outbound call to an endpoint, that endpoint can be transferred to another destination endpoint. Transferring a 1:1 call removes your application from the call and hence remove its ability to control the call using Call Automation. The call invite to the target will display the caller ID of the endpoint being transferred. Providing a custom caller ID is not supported.
355
355
356
356
# [csharp](#tab/csharp)
357
357
@@ -385,18 +385,14 @@ result = call_connection_client.transfer_call_to_participant(
385
385
target_participant=transfer_destination
386
386
)
387
387
```
388
-
389
-
-----
390
-
When transferring to a phone number, it's mandatory to provide a source caller ID. This ID serves as the identity of your application(the source) for the destination endpoint.
391
-
392
388
-----
393
389
The sequence diagram shows the expected flow when your application places an outbound 1:1 call and then transfers it to another endpoint.
394
390
395
391

396
392
397
393
## Add a participant to a call
398
394
399
-
You can add a participant (Communication Services user or phone number) to an existing call. When adding a phone number, it's mandatory to provide source caller ID. This caller ID is shown on call notification to the participant being added.
395
+
You can add a participant (Communication Services user or phone number) to an existing call. When adding a phone number, it's mandatory to provide a caller ID. This caller ID is shown on call notification to the participant being added.
400
396
401
397
# [csharp](#tab/csharp)
402
398
@@ -443,7 +439,7 @@ result = call_connection_client.add_participant(call_invite)
443
439
```
444
440
445
441
-----
446
-
To add a Communication Services user, provide a CommunicationUserIdentifier instead of PhoneNumberIdentifier. Source caller ID isn't mandatory in this case.
442
+
To add a Communication Services user, provide a CommunicationUserIdentifier instead of PhoneNumberIdentifier. Caller ID isn't mandatory in this case.
447
443
448
444
AddParticipant publishes a `AddParticipantSucceeded` or `AddParticipantFailed` event, along with a `ParticipantUpdated` providing the latest list of participants in the call.
449
445
@@ -484,7 +480,7 @@ result = call_connection_client.remove_participant(remove_this_user)
484
480
```
485
481
486
482
-----
487
-
RemoveParticipant will publish a `RemoveParticipantSucceeded` or `RemoveParticipantFailed` event, along with a `ParticipantUpdated` providing the latest list of participants in the call. The removed participant is excluded if the remove operation was successful.
483
+
RemoveParticipant will publish a `RemoveParticipantSucceeded` or `RemoveParticipantFailed` event, along with a `ParticipantUpdated`event providing the latest list of participants in the call. The removed participant is omitted from the list.
488
484

0 commit comments