Skip to content

Commit 72123ea

Browse files
committed
Standardize content -Spotlight
Check properties, settings, heading levels, run Acrolinx.
1 parent 03045f9 commit 72123ea

File tree

5 files changed

+170
-145
lines changed

5 files changed

+170
-145
lines changed

articles/communication-services/how-tos/calling-sdk/includes/spotlight/spotlight-android.md

Lines changed: 33 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -5,46 +5,27 @@ ms.topic: include
55
ms.date: 06/20/2023
66
ms.author: cnwankwo
77
---
8-
[!INCLUDE [Install SDK](../install-sdk/install-sdk-android.md)]
9-
10-
Communication Services or Microsoft 365 users can call the spotlight APIs based on role type and conversation type
11-
12-
**In a one to one call or group call scenario, the following APIs are supported for both Communication Services and Microsoft 365 users**
138

14-
|APIs| Organizer | Presenter | Attendee |
15-
|----------------------------------------------|--------|--------|--------|
16-
| startSpotlight | ✔️ | ✔️ | ✔️ |
17-
| stopSpotlight | ✔️ | ✔️ | ✔️ |
18-
| stopAllSpotlight | ✔️ | ✔️ | ✔️ |
19-
| getSpotlightedParticipants | ✔️ | ✔️ | ✔️ |
20-
| maxSupported | ✔️ | ✔️ | ✔️ |
21-
22-
**For meeting scenario the following APIs are supported for both Communication Services and Microsoft 365 users**
23-
24-
|APIs| Organizer | Presenter | Attendee |
25-
|----------------------------------------------|--------|--------|--------|
26-
| startSpotlight | ✔️ | ✔️ | |
27-
| stopSpotlight | ✔️ | ✔️ | ✔️ |
28-
| stopAllSpotlight | ✔️ | ✔️ | |
29-
| getSpotlightedParticipants | ✔️ | ✔️ | ✔️ |
30-
| maxSupported | ✔️ | ✔️ | ✔️ |
9+
[!INCLUDE [Install SDK](../install-sdk/install-sdk-android.md)]
3110

32-
Spotlight is an extended feature of the core `Call` API. You first need to import calling Features from the Calling SDK:
11+
Spotlight is an extended feature of the core Call API. You first need to import calling features from the Calling SDK.
3312

3413
```java
3514
import com.azure.android.communication.calling.SpotlightFeature;
3615
```
3716

38-
Then you can get the feature API object from the call instance:
17+
Then you can get the feature API object from the call instance.
3918

4019
```java
4120
SpotlightCallFeature spotlightCallFeature;
4221
spotlightCallFeature = call.feature(Features.SPOTLIGHT);
4322
```
44-
### Start spotlight for participants:
45-
Any participant in the call or meeting can be pinned. Only Microsoft 365 users who have an organizer, co-organizer or presenter role can start spotlight for other participants. This action is idempotent, trying to start spotlight on a pinned participant does nothing
23+
### Start spotlight for participants
24+
25+
Any participant in the call or meeting can be pinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can start spotlight for other participants. This action is idempotent, trying to start spotlight on a pinned participant does nothing
26+
27+
You need a list of participant identifiers to use this feature.
4628

47-
To use this feature, a list of participants identifiers is required
4829
```java
4930
List<CommunicationIdentifier> spotlightIdentifiers = new ArrayList<>();
5031
CommunicationUserIdentifier acsUser = new CommunicationUserIdentifier(<USER_ID>);
@@ -53,17 +34,21 @@ spotlightIdentifiers.add(new CommunicationUserIdentifier("<USER_ID>"));
5334
spotlightIdentifiers.add(new MicrosoftTeamsUserIdentifier("<USER_ID>"));
5435
spotlightCallFeature.StartSpotlight(spotlightIdentifiers);
5536
```
56-
The following API can also be used to start the spotlight of participants
37+
38+
You can also use the following code to start a participant spotlight.
39+
5740
```java
5841
CommunicationUserIdentifier acsUser = new CommunicationUserIdentifier(<USER_ID>);
5942
MicrosoftTeamsUserIdentifier teamsUser = new MicrosoftTeamsUserIdentifier(<USER_ID>);
6043
spotlightCallFeature.StartSpotlight(acsUser, teamsUser);
6144
```
6245

6346
### Remove spotlight from participants
64-
Any pinned participant in the call or meeting can be unpinned. Only Microsoft 365 users who have an organizer, co-organizer or presenter role can unpin other participants. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing
6547

66-
To use this feature, a list of participants identifiers is required
48+
Any pinned participant in the call or meeting can be unpinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can unpin other participants. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing.
49+
50+
You need a list of participants identifiers to use this feature.
51+
6752
```java
6853
List<CommunicationIdentifier> spotlightIdentifiers = new ArrayList<>();
6954
CommunicationUserIdentifier acsUser = new CommunicationUserIdentifier(<USER_ID>);
@@ -72,20 +57,28 @@ spotlightIdentifiers.add(new CommunicationUserIdentifier("<USER_ID>"));
7257
spotlightIdentifiers.add(new MicrosoftTeamsUserIdentifier("<USER_ID>"));
7358
spotlightCallFeature.StopSpotlight(spotlightIdentifiers);
7459
```
75-
The following API can also be used to remove the spotlight of participants
60+
61+
You can also use the following code to remove a participant spotlight.
62+
7663
```java
7764
CommunicationUserIdentifier acsUser = new CommunicationUserIdentifier(<USER_ID>);
7865
MicrosoftTeamsUserIdentifier teamsUser = new MicrosoftTeamsUserIdentifier(<USER_ID>);
7966
spotlightCallFeature.StopSpotlight(acsUser, teamsUser);
8067
```
8168
### Remove all spotlights
82-
All pinned participants can be unpinned using this API. Only MicrosoftTeamsUserIdentifier users who have an organizer, co-organizer or presenter role can unpin all participants.
69+
70+
All pinned participants can be unpinned using this operation. Only `MicrosoftTeamsUserIdentifier` users who have an organizer, co-organizer, or presenter role can unpin all participants.
71+
8372
```java
8473
spotlightCallFeature.stopAllSpotlight();
8574
```
8675

8776
### Handle changed states
88-
The `Spotlight` API allows you to subscribe to `SpotlightChanged` events. A `SpotlightChanged` event comes from a `call` instance and contains information about newly spotlighted participants and participants whose spotlight were stopped
77+
78+
Spotlight mode enables you to subscribe to `SpotlightChanged` events. A `SpotlightChanged` event comes from a call instance and contains information about newly spotlighted participants and participants whose spotlight stopped. The returned array `SpotlightedParticipant` is sorted by the order the participants were spotlighted.
79+
80+
To get information about all participants with spotlight state changes on the current call, use the following code.
81+
8982
```java
9083
import com.azure.android.communication.calling.SpotlightedParticipant;
9184

@@ -106,8 +99,9 @@ void onSpotlightChanged(SpotlightChangedEvent args) {
10699
spotlightCallFeature.addOnSpotlightChangedListener(onSpotlightChanged);
107100
```
108101

109-
### Get all spotlighted participants:
110-
To get information about all participants that have spotlight state on current call, you can use the following API. The returned array is sorted by the order the participants were spotlighted.
102+
### Get all spotlighted participants
103+
104+
To get information about all participants that have spotlight state on current call, use the following operation. The returned array is sorted by the order the participants were spotlighted.
111105

112106
``` java
113107
List<SpotlightedParticipant> currentSpotlightedParticipants = spotlightCallFeature.getSpotlightedParticipants();
@@ -117,8 +111,10 @@ foreach (SpotlightedParticipant participant in currentSpotlightedParticipants)
117111
}
118112
```
119113

120-
### Get the maximum supported spotlight:
121-
The following API can be used to get the maximum number of participants that can be spotlighted using the Calling SDK
114+
### Get the maximum supported spotlight participants
115+
116+
Use the following operation to get the maximum number of participants that can be spotlighted using the Calling SDK.
117+
122118
``` java
123119
spotlightCallFeature.maxSupported();
124120
```

articles/communication-services/how-tos/calling-sdk/includes/spotlight/spotlight-ios.md

Lines changed: 24 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -7,29 +7,7 @@ ms.author: cnwankwo
77
---
88
[!INCLUDE [Install SDK](../install-sdk/install-sdk-ios.md)]
99

10-
Communication Services or Microsoft 365 users can call the spotlight APIs based on role type and conversation type
11-
12-
**In a one to one call or group call scenario, the following APIs are supported for both Communication Services and Microsoft 365 users**
13-
14-
|APIs| Organizer | Presenter | Attendee |
15-
|----------------------------------------------|--------|--------|--------|
16-
| startSpotlight | ✔️ | ✔️ | ✔️ |
17-
| stopSpotlight | ✔️ | ✔️ | ✔️ |
18-
| stopAllSpotlight | ✔️ | ✔️ | ✔️ |
19-
| spotlightedParticipants | ✔️ | ✔️ | ✔️ |
20-
| maxSupported | ✔️ | ✔️ | ✔️ |
21-
22-
**For meeting scenario the following APIs are supported for both Communication Services and Microsoft 365 users**
23-
24-
|APIs| Organizer | Presenter | Attendee |
25-
|----------------------------------------------|--------|--------|--------|
26-
| startSpotlight | ✔️ | ✔️ | |
27-
| stopSpotlight | ✔️ | ✔️ | ✔️ |
28-
| stopAllSpotlight | ✔️ | ✔️ | |
29-
| spotlightedParticipants | ✔️ | ✔️ | ✔️ |
30-
| maxSupported | ✔️ | ✔️ | ✔️ |
31-
32-
Spotlight is an extended feature of the core `Call` API. You first need to import calling Features from the Calling SDK:
10+
Spotlight is an extended feature of the core Call API. You first need to import calling features from the Calling SDK.
3311

3412
```swift
3513
import AzureCommunicationCalling
@@ -43,10 +21,11 @@ Then you can get the feature API object from the call instance:
4321
spotlightFeature = self.call!.feature(Features.spotlight)
4422
```
4523

46-
### Start spotlight for participants:
47-
Any participant in the call or meeting can be pinned. Only Microsoft 365 users who have an organizer, co-organizer or presenter role can start spotlight for other participants. This action is idempotent, trying to start spotlight on a pinned participant does nothing
24+
### Start spotlight for participants
25+
26+
Any participant in the call or meeting can be pinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can start spotlight for other participants. This action is idempotent, trying to start spotlight on a pinned participant does nothing
4827

49-
To use this feature, a list of participants identifiers is required
28+
You need a list of participant identifiers to use this feature.
5029

5130
```swift
5231
var identifiers : [CommunicationIdentifier] = []
@@ -60,9 +39,11 @@ spotlightFeature.startSpotlight(participants: identifiers, completionHandler: {
6039
```
6140

6241
### Remove spotlight from participants
63-
Any pinned participant in the call or meeting can be unpinned. Only Microsoft 365 users who have an organizer, co-organizer or presenter role can unpin other participants. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing
6442

65-
To use this feature, a list of participants identifiers is required
43+
Any pinned participant in the call or meeting can be unpinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can unpin other participants. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing.
44+
45+
You need a list of participants identifiers to use this feature.
46+
6647
```swift
6748
var identifiers : [CommunicationIdentifier] = []
6849
identifiers.append(CommunicationUserIdentifier("<USER_ID>"))
@@ -75,7 +56,9 @@ spotlightFeature.stopSpotlight(participants: identifiers, completionHandler: { (
7556
```
7657

7758
### Remove all spotlights
78-
All pinned participants can be unpinned using this API. Only MicrosoftTeamsUserIdentifier users who have an organizer, co-organizer or presenter role can unpin all participants.
59+
60+
All pinned participants can be unpinned using this operation. Only `MicrosoftTeamsUserIdentifier` users who have an organizer, co-organizer, or presenter role can unpin all participants.
61+
7962
```swift
8063
spotlightFeature.stopAllSpotlight(completionHandler: { (error) in
8164
if let error = error {
@@ -85,7 +68,11 @@ spotlightFeature.stopAllSpotlight(completionHandler: { (error) in
8568
```
8669

8770
### Handle changed states
88-
The `Spotlight` API allows you to subscribe to `SpotlightChanged` events. A `SpotlightChanged` event comes from a `call` instance and contains information about newly spotlighted participants and participants whose spotlight were stopped
71+
72+
Spotlight mode enables you to subscribe to `SpotlightChanged` events. A `SpotlightChanged` event comes from a call instance and contains information about newly spotlighted participants and participants whose spotlight stopped. The returned array `SpotlightedParticipant` is sorted by the order the participants were spotlighted.
73+
74+
To get information about all participants with spotlight state changes on the current call, use the following code.
75+
8976
```swift
9077
// event : { added: SpotlightedParticipant[]; removed: SpotlightedParticipant[] }
9178
// SpotlightedParticipant = { identifier: CommunicationIdentifier }
@@ -107,17 +94,20 @@ public class SpotlightDelegate: SpotlightCallFeatureDelegate {
10794
}
10895
```
10996

110-
### Get all spotlighted participants:
111-
To get information about all participants that have spotlight state on current call, you can use the following API. The returned array is sorted by the order the participants were spotlighted.
97+
### Get all spotlighted participants
98+
99+
To get information about all participants that have spotlight state on the current call, use the following operation. The returned array is sorted by the order the participants were spotlighted.
112100

113101
``` swift
114102
spotlightCallFeature.spotlightedParticipants.forEach { participant in
115103
print("Spotlight active for participant: " + Utilities.toMri(participant.identifier))
116104
}
117105
```
118106

119-
### Get the maximum supported spotlight:
120-
The following API can be used to get the maximum number of participants that can be spotlighted using the Calling SDK
107+
### Get the maximum supported spotlight participants
108+
109+
Use the following operation to get the maximum number of participants that can be spotlighted using the Calling SDK.
110+
121111
``` swift
122112
spotlightCallFeature.maxSupported();
123113
```

articles/communication-services/how-tos/calling-sdk/includes/spotlight/spotlight-web.md

Lines changed: 36 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -5,45 +5,54 @@ ms.topic: include
55
ms.date: 03/01/2023
66
ms.author: cnwankwo
77
---
8+
89
[!INCLUDE [Install SDK](../install-sdk/install-sdk-web.md)]
910

10-
Spotlight is an extended feature of the core `Call` API. You first need to import calling Features from the Calling SDK:
11+
Spotlight is an extended feature of the core Call API. You first need to import calling features from the Calling SDK.
1112

1213
```js
1314
import { Features} from "@azure/communication-calling";
1415
```
1516

16-
Then you can get the feature API object from the call instance:
17+
Then you can get the feature API object from the call instance.
1718

1819
```js
1920
const spotLightFeature = call.feature(Features.Spotlight);
2021
```
2122

22-
### Start spotlight for current participant:
23-
To pin the video of the current/local participant, use the following code. This action is idempotent, trying to start spotlight on a pinned participant does nothing
23+
### Start spotlight for current participant
24+
25+
To pin the video of the current/local participant, use the following code. This action is idempotent, trying to start spotlight on a pinned participant does nothing.
26+
2427
```js
2528
spotLightFeature.startSpotlight();
2629
```
2730

2831
### Spotlight specific participants
29-
Any participant in the call or meeting can be pinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can start spotlight for other participants. This action is idempotent, trying to start spotlight on a pinned participant does nothing
32+
33+
Any participant in the call or meeting can be pinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can start spotlight for other participants. This action is idempotent, trying to start spotlight on a pinned participant does nothing.
34+
3035
```js
3136
// Specify list of participants to be spotlighted
3237
CommunicationUserIdentifier acsUser = new CommunicationUserIdentifier(<USER_ID>);
3338
MicrosoftTeamsUserIdentifier teamsUser = new MicrosoftTeamsUserIdentifier(<USER_ID>)
3439
spotLightFeature.startSpotlight([acsUser, teamsUser]);
3540
```
3641

37-
### Stop spotlight for current participant:
38-
To unpin the video of the current/local participant, use the following code. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing
42+
### Stop spotlight for current participant
43+
44+
To unpin the video of the current/local participant, use the following code. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing.
45+
3946
```js
4047
spotLightFeature.stopSpotlight();
4148
```
4249

50+
### Remove spotlight from participants
4351

52+
Any pinned participant in the call or meeting can be unpinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can unpin other participants. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing.
53+
54+
You need a list of participants identifiers to use this feature.
4455

45-
### Remove spotlight from participants
46-
Any pinned participant in the call or meeting can be unpinned. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can unpin other participants. This action is idempotent, trying to stop spotlight on an unpinned participant does nothing
4756
```js
4857
// Specify list of participants to be spotlighted
4958
CommunicationUserIdentifier acsUser = new CommunicationUserIdentifier(<USER_ID>);
@@ -52,15 +61,19 @@ spotLightFeature.stopSpotlight([acsUser, teamsUser]);
5261
```
5362

5463
### Remove all spotlights
55-
All pinned participants can be unpinned using this API. Only Microsoft 365 users who have an organizer, co-organizer, or presenter role can unpin all participants.
64+
65+
All pinned participants can be unpinned using this operation. Only `MicrosoftTeamsUserIdentifier` users who have an organizer, co-organizer, or presenter role can unpin all participants.
66+
5667
```js
5768
spotLightFeature.stopAllSpotLight();
5869
```
5970

71+
### Handle changed states
6072

73+
Spotlight mode enables you to subscribe to `SpotlightChanged` events. A `SpotlightChanged` event comes from a call instance and contains information about newly spotlighted participants and participants whose spotlight stopped. The returned array `SpotlightedParticipant` is sorted by the order the participants were spotlighted.
74+
75+
To get information about all participants with spotlight state changes on the current call, use the following code.
6176

62-
### Handle changed states
63-
The `Spotlight` API allows you to subscribe to `spotlightChanged` events. A `spotlightChanged` event comes from a `call` instance and contains information about newly spotlighted participants and participants whose spotlight were stopped
6477
```js
6578
// event : { added: SpotlightedParticipant[]; removed: SpotlightedParticipant[] }
6679
// SpotlightedParticipant = { identifier: CommunicationIdentifier, order?: number }
@@ -75,24 +88,24 @@ const spotlightChangedHandler = (event) => {
7588
spotLightFeature.on('spotlightChanged', spotlightChangedHandler);
7689
```
7790

78-
Use the following to stop receiving spotlightUpdated events
91+
Use the following to stop receiving `spotlightUpdated` events.
92+
7993
```js
8094
spotLightFeature.off('spotlightChanged', spotlightChangedHandler);
8195
```
96+
8297
### Get List of all participants currently spotlighted
83-
To get information about all participants that are spotlighted on the current call, use the following API call. It returns an array of SpotlightedParticipant
98+
99+
To get information about all participants that have spotlight state on current call, use the following operation. The returned array `SpotlightedParticipant` is sorted by the order the participants were spotlighted.
100+
84101
```js
85102
let spotlightedParticipants = spotLightFeature.getSpotlightedParticipants();
86103
```
87-
### Get the maximum supported spotlight:
88-
The following API can be used to get the maximum number of participants that can be spotlighted using the Calling SDK
104+
105+
### Get the maximum supported spotlight participants
106+
107+
Use the following operation to get the maximum number of participants that can be spotlighted using the Calling SDK.
108+
89109
```js
90110
spotLightFeature.maxParticipantsToSpotlight;
91111
```
92-
93-
## Troubleshooting
94-
|code| Subcode | Result Category | Reason | Resolution |
95-
|----------------------------------------------|--------|--------|---------|----------|
96-
|400 | 45900 | ExpectedError | All provided participant IDs are already spotlighted | Only participants who aren't currently spotlighted can be spotlighted |
97-
|400 | 45902 | ExpectedError | The maximum number of participants that can be spotlighted has been reached | Only seven participants can be in the spotlight state at any given time |
98-
|403 | 45903 | ExpectedError | Only participants with the roles of organizer, co-organizer, or presenter can initiate a spotlight | Ensure the participant calling the `startSpotlight` API has assigned role of organizer, co-organizer or presenter |

0 commit comments

Comments
 (0)