Skip to content

Commit 74fb7aa

Browse files
authored
Merge pull request #273341 from garchiro7/origin/leave-call-confirmation
Add leave call confirmation customization documentation
2 parents 509c490 + bafd1be commit 74fb7aa

File tree

8 files changed

+146
-24
lines changed

8 files changed

+146
-24
lines changed

articles/communication-services/concepts/ui-library/includes/mobile-ui-use-cases.md

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ You can use the call composite in Communication Services to create these use cas
2828
| | Manage the camera device |
2929
| | Manage the speaker device (wired or Bluetooth) |
3030
| | Make local preview available for a user to check video |
31+
| | Enable end call confirmation dialogue |
3132
| Call controls | Mute and unmute a call |
3233
| | Turn video on or off during a call |
3334
| | End a call |
@@ -79,24 +80,33 @@ Use the UI Library for mobile native platforms to give local and remote particip
7980

8081
### Skip Setup Screen
8182

82-
UI Library provides the capability to join a call skipping the setup screen of the call join experience. By default, user goes through a setup screen to join a call. Here, user sets the call configuration such as camera turn on or off, microphone turn on or off and audio device selection before joining a call. This screen requires user interaction to join a call, which might be unnecessary for some users. So we provide the capability to join a call by skipping the setup screen and providing the call configuration APIs. For more information, see [How to use Skip Setup Screen Feature](../../../how-tos/ui-library-sdk/skip-setup-screen.md)
83+
UI Library provides the capability to join a call skipping the setup screen of the call join experience. By default, user goes through a setup screen to join a call. Here, user sets the call configuration such as camera turn on or off, microphone turn on or off and audio device selection before joining a call. This screen requires user interaction to join a call, which might be unnecessary for some users. So we provide the capability to join a call by skipping the setup screen and providing the call configuration APIs. For more information, see [How to use Skip Setup Screen Feature.](../../../how-tos/ui-library-sdk/skip-setup-screen.md)
8384

8485
### Audio Only Mode
8586

86-
The Audio Only Mode in the UI Library allows participants to join calls using only their audio, without sharing or receiving video. This feature is used to conserve bandwidth and maximize privacy. When activated, the Audio Only Mode automatically disables the video functionalities for both sending and receiving streams, and adjusts the UI to reflect this change by removing video-related controls. This mode can be enabled through the CallComposite configuration, more information available through the [Audio Only Quick Start](../../../how-tos/ui-library-sdk/audio-only-mode.md)
87+
The Audio Only Mode in the UI Library allows participants to join calls using only their audio, without sharing or receiving video. This feature is used to conserve bandwidth and maximize privacy. When activated, the Audio Only Mode automatically disables the video functionalities for both sending and receiving streams, and adjusts the UI to reflect this change by removing video-related controls. This mode can be enabled through the CallComposite configuration, more information available through the [Audio Only Quick Start.](../../../how-tos/ui-library-sdk/audio-only-mode.md)
8788

8889
### Orientation
8990

90-
UI Library supports screen orientation setup for each of the screen separately prior to launch the library experience. This allows application developers to set up a fixed orientation for the calling experience which would align their application orientation. To learn more about the list of supported orientation for both Android and iOS platform and usage of the API, see [How to use Orientation Feature](../../../how-tos/ui-library-sdk/orientation.md)
91+
UI Library supports screen orientation setup for each of the screen separately prior to launch the library experience. This allows application developers to set up a fixed orientation for the calling experience, which would align their application orientation. To learn more about the list of supported orientation for both Android and iOS platform and usage of the API, see [How to use Orientation Feature.](../../../how-tos/ui-library-sdk/orientation.md)
9192

9293
### Multitasking and Picture-in-Picture
93-
UI Library supports picture in picture mode for call screen. While being in the call, user can click back button on call screen to enable multitasking which will take user back to previous screen. If Picture-in-Picture is enabled, a system Picture-in-Picture will be displayed for call. To learn more about the multitasking and Picture-in-Picture for both Android and iOS platform and usage of the API, see [How to use Picture-in-Picture](../../../how-tos/ui-library-sdk/picture-in-picture.md)
94+
95+
UI Library supports picture in picture mode for call screen. While being in the call, user can click back button on call screen to enable multitasking, which will take user back to previous screen. If Picture-in-Picture is enabled, a system Picture-in-Picture will be displayed for call. To learn more about the multitasking and Picture-in-Picture for both Android and iOS platform and usage of the API, see [How to use Picture-in-Picture.](../../../how-tos/ui-library-sdk/picture-in-picture.md)
9496

9597
### CallKit support
96-
UI Library supports CallKit Integration to handle interaction with CallKit for calls. To learn more about the integration for iOS platform and usage of the API, see [How to use CallKit](../../../how-tos/ui-library-sdk/callkit.md)
98+
99+
UI Library supports CallKit Integration to handle interaction with CallKit for calls. To learn more about the integration for iOS platform and usage of the API, see [How to use CallKit.](../../../how-tos/ui-library-sdk/callkit.md)
97100

98101
### One-to-one call and PUSH notification support
99-
UI Library supports one-to-one VoIP call to dial users by communication identifier. To receive incoming call UI Library also supports registering for PUSH notifications. To learn more about the integration for Android and iOS platform and usage of the API, see [How to make one-to-one call and receive PUSH notifications](../../../how-tos/ui-library-sdk/one-to-one-calling.md)
102+
103+
UI Library supports one-to-one VoIP call to dial users by communication identifier. To receive incoming call UI Library also supports registering for PUSH notifications. To learn more about the integration for Android and iOS platform and usage of the API, see [How to make one-to-one call and receive PUSH notifications.](../../../how-tos/ui-library-sdk/one-to-one-calling.md)
104+
105+
### Disable end call prompt
106+
107+
When developing applications that integrate calling capabilities, ensuring a seamless and intuitive user experience is crucial. One area where UX can be streamlined is during the call termination process. Specifically, developers might find it beneficial to disable the left call confirmation prompt that appears when a user want to end call. This feature, while useful in preventing accidental call terminations, can sometimes hinder the user experience, especially in environments where speed and efficiency are crucial. [How to disable the call confirmation](../../../how-tos/ui-library-sdk/leave-call-confirmation.md)
108+
109+
Fast-Paced Communication Environments: In settings such as trading floors, emergency call centers, or customer service centers where decisions and actions must be executed rapidly, the additional step of confirming call termination can impede workflow efficiency.
100110

101111
## Chat use cases
102112

articles/communication-services/concepts/voice-video-calling/calling-sdk-features.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Azure Communication Services allows end-user browsers, apps, and services to dri
2121

2222
To build your own user experience with the Calling SDK, check out [Calling quickstarts](../../quickstarts/voice-video-calling/getting-started-with-calling.md) or [Calling hero sample](../../samples/calling-hero-sample.md).
2323

24-
If you'd like help with the end-user experience, the Azure Communication Services UI Library provides a collection of open-source production-ready UI components to drop into your application. With this set of prebuilt controls, you can create beautiful communication experiences using [Microsoft's Fluent design language](https://developer.microsoft.com/en-us/fluentui#/). If you want to learn more about the UI Library, visit [the overview site](../ui-library/ui-library-overview.md) or [Storybook](https://aka.ms/acsstorybook).
24+
If you'd like help with the end-user experience, the Azure Communication Services UI Library provides a collection of open-source production-ready UI components to drop into your application. With this set of prebuilt controls, you can create beautiful communication experiences using [Microsoft's Fluent design language](https://developer.microsoft.com/en-us/fluentui#/). If you want to learn more about the UI Library, visit [the overview site](../ui-library/ui-library-overview.md).
2525

2626
Once you start development, check out the [known issues page](../known-issues.md) to find bugs we're working on.
2727

@@ -99,7 +99,7 @@ The following list presents the set of features that are currently available in
9999
| | Custom background image | ✔️ | ✔️ | ✔️ | ✔️ |
100100
| [Audio Effects](../../tutorials/audio-quality-enhancements/add-noise-supression.md) | [Music Mode](./music-mode.md) || ✔️ | ✔️ | ✔️ |
101101
| | Echo cancellation || ✔️ | ✔️ | ✔️ |
102-
| | Noise supression | ✔️ | ✔️ | ✔️ | ✔️ |
102+
| | Noise suppression | ✔️ | ✔️ | ✔️ | ✔️ |
103103
| | Automatic gain control (AGC) || ✔️ | ✔️ | ✔️ |
104104
| Notifications <sup>4</sup> | [Push notifications](../../how-tos/calling-sdk/push-notifications.md) | ✔️ | ✔️ | ✔️ | ✔️ |
105105

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
description: Learn how to use the Calling composite on Android to customize the leave call confirmation API
3+
author: garchiro7
4+
5+
ms.author: jorgegarc
6+
ms.date: 05/01/2024
7+
ms.topic: include
8+
ms.service: azure-communication-services
9+
---
10+
11+
### Disabling Leave Call Confirmation
12+
13+
To disable the left call confirmation prompt when clicking the end call button, utilize `CallCompositeCallScreenOptions` to configure `CallCompositeCallScreenControlBarOptions`. Set `CallCompositeLeaveCallConfirmationMode.ALWAYS_DISABLED` as the constructor parameter. By default, the UI library employs `CallCompositeLeaveCallConfirmationMode.ALWAYS_ENABLED`.
14+
15+
#### [Kotlin](#tab/kotlin)
16+
17+
```kotlin
18+
val callScreenOptions = CallCompositeCallScreenOptions(
19+
CallCompositeCallScreenControlBarOptions()
20+
.setLeaveCallConfirmation(CallCompositeLeaveCallConfirmationMode.ALWAYS_DISABLED)
21+
)
22+
23+
val callComposite: CallComposite =
24+
CallCompositeBuilder()
25+
.callScreenOptions(callScreenOptions)
26+
.build()
27+
```
28+
29+
#### [Java](#tab/java)
30+
31+
```java
32+
CallComposite callComposite =
33+
new CallCompositeBuilder()
34+
.callScreenOptions(new CallCompositeCallScreenOptions(
35+
new CallCompositeCallScreenControlBarOptions()
36+
.setLeaveCallConfirmation(CallCompositeLeaveCallConfirmationMode.ALWAYS_DISABLED)
37+
))
38+
.build();
39+
```
40+
41+
This setup ensures that the left call confirmation prompt is disabled upon clicking the end call button.
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
description: Learn how to use the Calling composite on iOS to customize the leave call confirmation API
3+
author: garchiro7
4+
5+
ms.author: jorgegarc
6+
ms.date: 05/01/2024
7+
ms.topic: include
8+
ms.service: azure-communication-services
9+
---
10+
11+
### Disabling Leave Call Confirmation
12+
13+
To disable the left call confirmation prompt triggered by clicking the end call button, utilize the `CallScreenOptions` class to configure the `CallScreenControlBarOptions`. Set the `LeaveCallConfirmationMode` parameter to `alwaysDisabled`. By default, the UI library enables `LeaveCallConfirmationMode` as `alwaysEnabled`.
14+
15+
```swift
16+
let callCompositeOptions = CallCompositeOptions(
17+
callScreenOptions: CallScreenOptions(
18+
controlBarOptions: CallScreenControlBarOptions(
19+
leaveCallConfirmationMode: LeaveCallConfirmationMode.alwaysDisabled
20+
)
21+
)
22+
)
23+
24+
let callComposite = CallComposite(withOptions: callCompositeOptions)
25+
```
26+
27+
This setup ensures that the left call confirmation prompt is disabled when the end call button is clicked.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
title: Disable the left call confirmation prompt when clicking the end call button in the UI Library
3+
titleSuffix: An Azure Communication Services how-to guide
4+
description: Disable the left call confirmation prompt in the Azure Communication Services UI Library.
5+
author: garchiro7
6+
ms.author: jorgegarc
7+
ms.service: azure-communication-services
8+
ms.subservice: calling
9+
ms.topic: how-to
10+
ms.date: 05/01/2024
11+
ms.custom: template-how-to
12+
zone_pivot_groups: acs-plat-ios-android
13+
14+
#Customer intent: As a developer, I want disable the leave call confirmation prompt when clicking the end call button in the UI Library.
15+
---
16+
17+
# Disable the call confirmation prompt in an application
18+
19+
The Azure Communication Services UI Library offers the option to disable the left call confirmation prompt, by default the UI Library show a prompt asking the user to confirm the end of the call; one common customization might involve streamlining the user experience, such as disabling the left call confirmation prompt when a user decide to end the call. This adjustment can make the call termination process quicker and reduce friction for users who are accustomed to instant actions.
20+
21+
In this article, you learn how to disable the left call confirmation prompt.
22+
23+
## Prerequisites
24+
25+
- An Azure account with an active subscription. [Create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F).
26+
- A deployed Communication Services resource. [Create a Communication Services resource](../../quickstarts/create-communication-resource.md).
27+
- A user access token to enable the call client. [Get a user access token](../../quickstarts/access-tokens.md).
28+
- Optional: Completion of the [quickstart for getting started with the UI Library composites](../../quickstarts/ui-library/get-started-composites.md).
29+
30+
## Set up the feature
31+
32+
::: zone pivot="platform-android"
33+
[!INCLUDE [Disable the leave call confirmation prompt in the Android UI Library](./includes/leave-call-confirmation/android.md)]
34+
::: zone-end
35+
36+
::: zone pivot="platform-ios"
37+
[!INCLUDE [Disable the leave call confirmation prompt in the iOS UI Library](./includes/leave-call-confirmation/ios.md)]
38+
::: zone-end
39+
40+
## Next steps
41+
42+
- [Learn more about the UI Library](../../concepts/ui-library/ui-library-overview.md)

articles/communication-services/quickstarts/voice-video-calling/get-started-raw-media-access.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,6 @@ ms.custom: mode-other, devx-track-js
3939
For more information, see the following articles:
4040

4141
- Check out the [calling hero sample](../../samples/calling-hero-sample.md).
42-
- Get started with the [UI Library](https://aka.ms/acsstorybook).
42+
- Get started with the [UI Library](../../concepts/ui-library/ui-library-overview.md).
4343
- Learn about [Calling SDK capabilities](./getting-started-with-calling.md?pivots=platform-web).
4444
- Learn more about [how calling works](../../concepts/voice-video-calling/about-call-types.md).

articles/communication-services/quickstarts/voice-video-calling/get-started-video-effects.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,6 @@ ms.custom: mode-other, devx-track-js
3838
For more information, see the following articles:
3939

4040
- Check out our [calling hero sample](../../samples/calling-hero-sample.md)
41-
- Get started with the [UI Library](https://aka.ms/acsstorybook)
41+
- Get started with the [UI Library](../../concepts/ui-library/ui-library-overview.md)
4242
- Learn about [Calling SDK capabilities](./getting-started-with-calling.md?pivots=platform-web)
4343
- Learn more about [how calling works](../../concepts/voice-video-calling/about-call-types.md)

articles/communication-services/toc.yml

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -414,25 +414,27 @@ items:
414414
href: how-tos/calling-sdk/push-notifications.md
415415
- name: Using the mobile UI Library for voice and video
416416
items:
417-
- name: Set up localization
418-
href: how-tos/ui-library-sdk/localization.md
419-
- name: Set up theming
417+
- name: Configure default orientation
418+
href: how-tos/ui-library-sdk/orientation.md
419+
- name: Configure theming
420420
href: how-tos/ui-library-sdk/theming.md
421+
- name: Disable end call confirmation
422+
href: how-tos/ui-library-sdk/leave-call-confirmation.md
423+
- name: Enable audio only mode
424+
href: how-tos/ui-library-sdk/audio-only-mode.md
425+
- name: Enable picture-in-picture
426+
href: how-tos/ui-library-sdk/picture-in-picture.md
427+
- name: Enable skip the setup screen
428+
href: how-tos/ui-library-sdk/skip-setup-screen.md
421429
- name: Inject participant view data
422430
href: how-tos/ui-library-sdk/data-model.md
423-
- name: Skip the setup screen
424-
href: how-tos/ui-library-sdk/skip-setup-screen.md
425-
- name: Set up orientation
426-
href: how-tos/ui-library-sdk/orientation.md
427-
- name: Set up picture-in-picture
428-
href: how-tos/ui-library-sdk/picture-in-picture.md
429-
- name: Set up CallKit
431+
- name: Integrate CalllKit
430432
href: how-tos/ui-library-sdk/callkit.md
431-
- name: Set up one-to-one calling and push notifications
433+
- name: Set up localization
434+
href: how-tos/ui-library-sdk/localization.md
435+
- name: Set up up one-to-one calling and push notifications
432436
href: how-tos/ui-library-sdk/one-to-one-calling.md
433-
- name: Audio Only Mode
434-
href: how-tos/ui-library-sdk/audio-only-mode.md
435-
- name: Troubleshoot
437+
- name: Troubleshooting
436438
href: how-tos/ui-library-sdk/troubleshooting.md
437439
- name: Events
438440
items:

0 commit comments

Comments
 (0)