Skip to content

Commit bcbca26

Browse files
authored
Merge pull request #408 from dyte-io/hs/android-core-v2
docs: update android-core local user section
2 parents 57458d2 + c4a6a65 commit bcbca26

File tree

4 files changed

+256
-63
lines changed

4 files changed

+256
-63
lines changed

docs/android-core/local-user/events.mdx

+137-28
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,13 @@ You can subscribe to various events on the local user by implementing `DyteSelfE
1919
Triggered when the user starts/stops the video using `enableVideo()` or
2020
`disableVideo()`.
2121

22+
<Tabs groupId="android-core-local-user">
23+
<TabItem value="kotlin" label="Kotlin" default>
24+
2225
```kotlin
2326
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
24-
override fun onVideoUpdate(videoEnabled: Boolean) {
25-
if (videoEnabled) {
27+
override fun onVideoUpdate(isEnabled: Boolean) {
28+
if (isEnabled) {
2629
// video is enabled, and other participants in room can see local user
2730
} else {
2831
// video is disabled, and other participants in room can not see local user.
@@ -31,15 +34,38 @@ meeting.addSelfEventsListener(object : DyteSelfEventsListener {
3134
})
3235
```
3336

37+
</TabItem>
38+
39+
<TabItem value="java" label="Java" default>
40+
41+
```java
42+
meeting.addSelfEventsListener(new DyteSelfEventsListener() {
43+
@Override
44+
public void onVideoUpdate(boolean isEnabled) {
45+
if (isEnabled) {
46+
// video is enabled, and other participants in room can see local user
47+
} else {
48+
// video is disabled, and other participants in room can not see local user.
49+
}
50+
}
51+
});
52+
```
53+
54+
</TabItem>
55+
</Tabs>
56+
3457
### Audio update
3558

3659
Triggered when the user starts/stops the audio using `enableAudio()` or
3760
`disableAudio()`.
3861

62+
<Tabs groupId="android-core-local-user">
63+
<TabItem value="kotlin" label="Kotlin" default>
64+
3965
```kotlin
4066
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
41-
override fun onAudioUpdate(audioEnabled: Boolean) {
42-
if (audioEnabled) {
67+
override fun onAudioUpdate(isEnabled: Boolean) {
68+
if (isEnabled) {
4369
// audio is enabled, and other participants in room can hear local user
4470
} else {
4571
// audio is disabled, and other participants in room can not hear local user.
@@ -48,89 +74,172 @@ meeting.addSelfEventsListener(object : DyteSelfEventsListener {
4874
})
4975
```
5076

51-
### Proximity changed
5277

53-
Triggered whenever there is a change in proximity, indicating if the device is near an earpiece, which subsequently causes the display to turn on or off.
78+
</TabItem>
5479

55-
```kotlin
56-
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
57-
override fun onProximityChanged(isNear: Boolean) {
58-
// if `isNear` is true, display should be turned off, as user might be speaking through earpiece
59-
// if false, display should be turned on, as user might be looking at display and listening through speaker/earphones.
80+
<TabItem value="java" label="Java" default>
81+
82+
```java
83+
meeting.addSelfEventsListener(new DyteSelfEventsListener() {
84+
override fun onAudioUpdate(boolean isEnabled) {
85+
if (isEnabled) {
86+
// audio is enabled, and other participants in room can hear local user
87+
} else {
88+
// audio is disabled, and other participants in room can not hear local user.
89+
}
6090
}
61-
})
91+
});
6292
```
6393

94+
95+
</TabItem>
96+
</Tabs>
97+
6498
### Waitlist status
6599

66100
For meetings whose waiting room is enabled:
67101

68102
To get status of localUser in waiting room we can use
69103

104+
<Tabs groupId="android-core-local-user">
105+
<TabItem value="kotlin" label="Kotlin" default>
106+
70107
```kotlin
71108
val waitListStatus = meeting.localUser.waitListStatus
72109
```
73110

111+
</TabItem>
112+
113+
<TabItem value="java" label="Java" default>
114+
115+
```java
116+
WaitListStatus waitListStatus = meeting.localUser.getWaitListStatus();
117+
```
118+
119+
</TabItem>
120+
</Tabs>
121+
122+
74123
You can listen to those changes in `onWaitListStatusUpdate()` callbacks
75124

125+
<Tabs groupId="android-core-local-user">
126+
<TabItem value="kotlin" label="Kotlin" default>
127+
76128
```kotlin
77129
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
78130
override fun onWaitListStatusUpdate(waitListStatus: WaitListStatus) {
79131
// handle waitlist status here
80132
}
81-
});
133+
})
82134
```
83135

84-
### Process message within a room
136+
</TabItem>
85137

86-
Manage messages among participants within a room.
138+
<TabItem value="java" label="Java" default>
87139

88-
```kotlin
89-
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
90-
override fun onRoomMessage(type: String, payload: Map<String, *>) {
91-
// handle the message here
140+
```java
141+
meeting.addSelfEventsListener(new DyteSelfEventsListener() {
142+
@Override
143+
public void onWaitListStatusUpdate(WaitListStatus waitListStatus) {
144+
// handle waitlist status here
92145
}
93146
});
94147
```
95148

149+
</TabItem>
150+
</Tabs>
151+
96152
### Screenshare callbacks for local user
97153

154+
<Tabs groupId="android-core-local-user">
155+
<TabItem value="kotlin" label="Kotlin" default>
156+
98157
```kotlin
99158
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
100159
override fun onScreenShareStartFailed(reason: String) {
101-
// screenshare failed to start
102160
}
103161

104-
override fun onScreenShareStarted() {
105-
// screenshare started presenting in the meeting
162+
override fun onScreenShareUpdate(isEnabled: Boolean) {
106163
}
164+
})
165+
```
166+
167+
</TabItem>
168+
169+
<TabItem value="java" label="Java" default>
107170

108-
override fun onScreenShareStopped() {
109-
// screenshared stopped by the local user
171+
```java
172+
meeting.addSelfEventsListener(new DyteSelfEventsListener() {
173+
@Override
174+
public void onScreenShareStartFailed(@NonNull String reason) {
175+
}
176+
177+
@Override
178+
public void onScreenShareUpdate(boolean isEnabled) {
110179
}
111180
});
112181
```
113182

183+
</TabItem>
184+
</Tabs>
185+
114186
### Device permission callbacks once local user is joined in the meeting
115187

188+
<Tabs groupId="android-core-local-user">
189+
<TabItem value="kotlin" label="Kotlin" default>
190+
116191
```kotlin
117192
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
118193
override fun onMeetingRoomJoinedWithoutCameraPermission() {
119-
// local user joined without camera permission
120194
}
121195

122196
override fun onMeetingRoomJoinedWithoutMicPermission() {
123-
// local user joined without microphone permission
197+
}
198+
})
199+
```
200+
201+
</TabItem>
202+
203+
<TabItem value="java" label="Java" default>
204+
205+
```kotlin
206+
meeting.addSelfEventsListener(new DyteSelfEventsListener() {
207+
@Override
208+
public void onMeetingRoomJoinedWithoutCameraPermission() {
209+
}
210+
211+
@Override
212+
public void onMeetingRoomJoinedWithoutMicPermission() {
124213
}
125214
});
126215
```
127216

217+
</TabItem>
218+
</Tabs>
219+
128220
### When local user is kicked out from the meeting by a remote user
129221

222+
<Tabs groupId="android-core-local-user">
223+
<TabItem value="kotlin" label="Kotlin" default>
224+
130225
```kotlin
131226
meeting.addSelfEventsListener(object : DyteSelfEventsListener {
132227
override fun onRemovedFromMeeting() {
133-
// removed from meeting
134-
}
228+
}
135229
});
136230
```
231+
232+
</TabItem>
233+
234+
<TabItem value="java" label="Java" default>
235+
236+
```java
237+
meeting.addSelfEventsListener(new DyteSelfEventsListener() {
238+
@Override
239+
public void onRemovedFromMeeting() {
240+
}
241+
})
242+
```
243+
244+
</TabItem>
245+
</Tabs>

0 commit comments

Comments
 (0)