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
This article describes how to create a Room within your Azure Communication Services resource. A room is a server-managed communications space for a known, fixed, set of participants to collaborate for a predetermined duration. For more information and use cases, see [rooms conceptual documentation](../../concepts/rooms/room-concept.md).
18
+
This article describes how to create a Room within your Azure Communication Services resource. A room is a server-managed communications space for a known, fixed, set of participants to collaborate for a predetermined duration. For more information and use cases, see [Rooms API for structured meetings](../../concepts/rooms/room-concept.md).
19
19
20
20
## Object model
21
21
22
22
The following table lists the main properties of room objects:
|`pstnDialOutEnabled`| Enable or disable dialing out to a PSTN number in a room.|
30
-
|`participants`| List of participants to a room. Specified as a `CommunicationUserIdentifier`. |
29
+
|`pstnDialOutEnabled`| Enable or disable dialing out to a public switched telephone network (PSTN) number from a room.|
30
+
|`participants`| List of participants in a room. Specified as a `CommunicationUserIdentifier`. |
31
31
|`roleType`| The role of a room participant. Can be `Presenter`, `Attendee`, `Consumer`, or `Collaborator`. |
32
32
33
33
::: zone pivot="platform-azcli"
@@ -36,28 +36,28 @@ The following table lists the main properties of room objects:
36
36
37
37
::: zone pivot="programming-language-csharp"
38
38
39
-
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. The [rooms conceptual documentation](../../concepts/rooms/room-concept.md) covers more details and use cases for rooms.
39
+
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. For more information, see [Rooms API for structured meetings](../../concepts/rooms/room-concept.md).
40
40
41
41
[!INCLUDE [Use rooms with .NET SDK](./includes/rooms-quickstart-net.md)]
42
42
::: zone-end
43
43
44
44
::: zone pivot="programming-language-java"
45
45
46
-
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. The [rooms conceptual documentation](../../concepts/rooms/room-concept.md) covers more details and use cases for rooms.
46
+
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. For more information, see [Rooms API for structured meetings](../../concepts/rooms/room-concept.md).
47
47
48
48
[!INCLUDE [Use rooms with Java SDK](./includes/rooms-quickstart-java.md)]
49
49
::: zone-end
50
50
51
51
::: zone pivot="programming-language-python"
52
52
53
-
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. The [rooms conceptual documentation](../../concepts/rooms/room-concept.md) covers more details and use cases for rooms.
53
+
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. For more information, see [Rooms API for structured meetings](../../concepts/rooms/room-concept.md).
54
54
55
55
[!INCLUDE [Use rooms with Python SDK](./includes/rooms-quickstart-python.md)]
56
56
::: zone-end
57
57
58
58
::: zone pivot="programming-language-javascript"
59
59
60
-
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. The [rooms conceptual documentation](../../concepts/rooms/room-concept.md) covers more details and use cases for rooms.
60
+
A room is a server-managed communications space for a known, fixed set of participants to collaborate for a predetermined duration. For more information, see [Rooms API for structured meetings](../../concepts/rooms/room-concept.md).
61
61
62
62
[!INCLUDE [Use rooms with JavaScript SDK](./includes/rooms-quickstart-javascript.md)]
63
63
::: zone-end
@@ -75,6 +75,7 @@ This article described how to:
75
75
76
76
## Related articles
77
77
78
-
- Learn about [rooms concept](../../concepts/rooms/room-concept.md).
79
-
- Learn about [voice and video calling concepts](../../concepts/voice-video-calling/about-call-types.md).
80
-
- Review Azure Communication Services [samples](../../samples/overview.md).
78
+
-[Rooms API for structured meetings](../../concepts/rooms/room-concept.md).
79
+
-[Voice and video calling concepts](../../concepts/voice-video-calling/about-call-types.md).
80
+
-[Azure Communication Services samples](../../samples/overview.md).
Copy file name to clipboardExpand all lines: articles/communication-services/quickstarts/rooms/includes/rooms-quickstart-call-android.md
+18-28Lines changed: 18 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,22 +4,18 @@ description: include file
4
4
services: azure-communication-services
5
5
author: mrayyan
6
6
manager: alexokun
7
-
8
7
ms.service: azure-communication-services
9
-
ms.date: 07/20/2023
8
+
ms.date: 06/02/2025
10
9
ms.topic: include
11
10
ms.custom: include file
12
11
ms.author: t-siddiquim
13
12
---
14
13
15
-
## Sample app
16
-
17
-
18
-
To follow along with this quickstart, you can download the Room Call quickstart on [GitHub](https://github.com/Azure-Samples/communication-services-android-quickstarts/tree/main/RoomsCallQuickstart).
19
-
14
+
## Implement the sample app
20
15
21
-
## Setting up project
16
+
To implement the code needed to join participants to a rooms call, download from GitHub the [Room Call sample app](https://github.com/Azure-Samples/communication-services-android-quickstarts/tree/main/RoomsCallQuickstart).
22
17
18
+
## Set up the project
23
19
24
20
## Create an Android app with an empty activity
25
21
@@ -32,6 +28,7 @@ Name your project **Room Call Quickstart** and select **Kotlin**.
32
28
:::image type="content" source="..\..\voice-video-calling\media\android\android-room-project.png" alt-text="Screenshot showing new project properties in the Project Setup Screen.":::
33
29
34
30
## Install the package
31
+
35
32
In your module level `build.gradle`, add the following line to the `dependencies` section.
36
33
37
34
```groovy
@@ -43,10 +40,9 @@ dependencies {
43
40
}
44
41
```
45
42
46
-
47
43
## Add permissions to application manifest
48
44
49
-
To request permissions required to make a call, you must first declare the permissions in the application manifest (`app/src/main/AndroidManifest.xml`). Copy the following to your manifest file:
45
+
To request permissions required to make a call, first declare the permissions in the application manifest (`app/src/main/AndroidManifest.xml`). Copy the following to your manifest file:
50
46
51
47
```xml
52
48
<?xml version="1.0" encoding="utf-8"?>
@@ -86,14 +82,13 @@ To request permissions required to make a call, you must first declare the permi
86
82
</application>
87
83
88
84
</manifest>
89
-
90
85
```
91
86
92
87
### Set up the layout for the app
93
88
94
89
You need a text input for the room ID, a button for placing the call, and extra button for hanging up the call.
95
90
96
-
Go to`app/src/main/res/layout/activity_main.xml`, and replace the content of file with the following code:
91
+
Open the`app/src/main/res/layout/activity_main.xml` file, and replace the content of file with the following code:
97
92
98
93
```xml
99
94
<?xml version="1.0" encoding="utf-8"?>
@@ -167,18 +162,17 @@ Go to `app/src/main/res/layout/activity_main.xml`, and replace the content of fi
With the layout created, you can add the logic to start a Room call. The activity handles requesting runtime permissions, creating the call agent, and placing the call when the button is pressed.
169
+
With the layout created, you can add the logic to start a Room call. The activity handles requesting runtime permissions, creating the call agent, and placing the call when a participant presses the button.
176
170
177
171
The `onCreate` method invokes `getAllPermissions` and `createAgent`, and adds the bindings for the call button.
178
172
179
-
This event occurs only once when the activity is created. For more information about `onCreate`, see the guide [Understand the activity lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle).
173
+
This event occurs only once when the activity is created. For more information about `onCreate`, see [Understand the activity lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle).
180
174
181
-
Go to *MainActivity.kt* file, and replace the content with the following code:
175
+
Open the `MainActivity.kt` file, and replace the content with the following code:
182
176
183
177
```java
184
178
packagecom.contoso.roomscallquickstart
@@ -336,14 +330,13 @@ class MainActivity : AppCompatActivity() {
336
330
}
337
331
}
338
332
}
339
-
340
333
```
341
334
342
335
> [!NOTE]
343
-
>When you're designing your app, consider when these permissions should be requested. Permissions should be requested as they are needed, not ahead of time. For more information, see, the [Android Permissions Guide](https://developer.android.com/training/permissions/requesting).
344
-
336
+
>When designing your app, consider when you need to request these permissions. We recommend requesting permissions when needed not ahead of time. For more information, see the [AndroidPermissionsGuide](https://developer.android.com/training/permissions/requesting).
345
337
346
338
## Run your project
339
+
347
340
Before running your project, replace `<ACS_USER_TOKEN>` in `MainActivity.kt` with your AzureCommunicationServicesUserAccessToken.
348
341
349
342
```
@@ -352,12 +345,11 @@ private val userToken = "<ACS_USER_TOKEN>"
352
345
353
346
Run the project on an emulator or a physical device.
354
347
355
-
You should see a field to enter your Room ID and a button to start the Room Call. Enter your Room ID and verify the Call status has changed along with your Role.
356
-
348
+
Lookfor the field to enter your RoomID and a button to start the RoomCall. Enter your RoomID and verify the Call status changed along with your Role.
357
349
358
350
## Understanding joining a Room call
359
351
360
-
All the code that you have added in your QuickStart app allowed you to successfully start and join a room call. We need to dive deep into how it all works and what more methods/handlers you can access for Rooms.
352
+
All the code that you added in the app enables you to successfully start and join a room call. We need to dive deep into how it all works and which other methods and handlers you can access forRooms.
361
353
362
354
Room calls are joined through `CallAgent` which is created with a valid user token:
363
355
```kotlin
@@ -373,19 +365,17 @@ private fun createCallAgent() {
373
365
).show()
374
366
}
375
367
}
376
-
377
368
```
378
369
379
-
Using `CallAgent` and `RoomCallLocator`, we can join a room call using the `CallAgent.join` method which returns a `Call` object:
370
+
Participants can use `CallAgent` and `RoomCallLocator` to join a room call using the `CallAgent.join` method which returns a `Call` object:
The ability to join a room call and display the roles of call participants is available in the AndroidMobileCallingSDK version [2.4.0](https://search.maven.org/artifact/com.azure.android/azure-communication-calling/2.4.0/aar) and above.
429
419
430
-
You can learn more about roles of room call participants in the [rooms concept documentation](../../../concepts/rooms/room-concept.md#predefined-participant-roles-and-permissions).
420
+
Formore information about roles of room call participants, see [RoomsAPIfor structured meetings](../../../concepts/rooms/room-concept.md#predefined-participant-roles-and-permissions).
0 commit comments