@voltkit-rtc/react-native 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +53 -0
- package/README.md +8 -8
- package/lib/commonjs/local-media.js +98 -20
- package/lib/commonjs/local-media.js.map +1 -1
- package/lib/commonjs/native-session.js +41 -11
- package/lib/commonjs/native-session.js.map +1 -1
- package/lib/commonjs/native.js +1 -1
- package/lib/commonjs/platform/common.js +1 -1
- package/lib/commonjs/provider.js +9 -1
- package/lib/commonjs/provider.js.map +1 -1
- package/lib/module/local-media.js +98 -20
- package/lib/module/local-media.js.map +1 -1
- package/lib/module/native-session.js +41 -11
- package/lib/module/native-session.js.map +1 -1
- package/lib/module/native.js +1 -1
- package/lib/module/platform/common.js +1 -1
- package/lib/module/provider.js +9 -1
- package/lib/module/provider.js.map +1 -1
- package/lib/typescript/commonjs/native-session.d.ts.map +1 -1
- package/lib/typescript/commonjs/native.d.ts +1 -1
- package/lib/typescript/commonjs/platform/common.d.ts +1 -1
- package/lib/typescript/commonjs/provider.d.ts.map +1 -1
- package/lib/typescript/module/native-session.d.ts.map +1 -1
- package/lib/typescript/module/native.d.ts +1 -1
- package/lib/typescript/module/platform/common.d.ts +1 -1
- package/lib/typescript/module/provider.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/local-media.ts +93 -21
- package/src/native-session.tsx +38 -9
- package/src/native.ts +1 -1
- package/src/platform/common.ts +1 -1
- package/src/provider.tsx +9 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,58 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.3
|
|
4
|
+
|
|
5
|
+
Prepared 2026-10-31, not published. The testers' report on 0.1.2 (`src/__tests__/tester-1031.test.tsx`, RN012-1 to
|
|
6
|
+
RN012-5) and the lead's decisions D1 and D2. Peer dependencies `@voltkit-rtc/client >=0.9.15 <0.10.0` and
|
|
7
|
+
`@voltkit-rtc/react ^0.1.3`: 0.9.15 forgets a `publish()` that rejected, one cut short by the connection included, so
|
|
8
|
+
nothing of it goes on air later behind the app's back, and a closed client refuses every call with `not-connected`. The
|
|
9
|
+
native code is the same, but build the app again after upgrading: its version check reads this package's version.
|
|
10
|
+
|
|
11
|
+
- **The call service follows the client, not the screen** (RN012-1, Medium-High). A screen's provider replaced by
|
|
12
|
+
another holding the same connected client (two screens of an app on "Your own client") stopped the service and left
|
|
13
|
+
it off until the app next came to the front: the first background stay would have cut the call. The SDK's own stop,
|
|
14
|
+
run by Android a moment later, was taken for a stop from outside and held as a failure. Now a call gone is decided
|
|
15
|
+
once the turn of the JavaScript thread is over, so a provider replaced in the same render never stops the service;
|
|
16
|
+
and a `stopped` event, whoever stopped it, is only the service's state: a live call gets it back at once while the
|
|
17
|
+
app is visible, and at the next front otherwise. The test fixture tells `stopped` later, as the Kotlin side does
|
|
18
|
+
(`main.post`).
|
|
19
|
+
- **A demoted user's devices never open** (RN012-2, privacy). `roleChanged` to viewer while the permission dialog was
|
|
20
|
+
up opened the camera and microphone once before the publish was refused. The role is read again after the dialog
|
|
21
|
+
and after the devices opened: `forbidden`, nothing left open.
|
|
22
|
+
- **Go live after Stop while the dialog is up** (RN012-3, decision D2). `publish()`, `unpublish()`, `publish()` was
|
|
23
|
+
refused with `source-already-published`: the first start now ends at the Stop, and the second is its own start and
|
|
24
|
+
goes live.
|
|
25
|
+
- **What is on air goes on; only the rest is opened** (decision D2, the React SDK's R012-2 class). After the server
|
|
26
|
+
took the microphone and refused the camera, the microphone was stopped here while its producer stayed on air
|
|
27
|
+
(silence for the viewers, `micEnabled: true`), and a retry was refused until `unpublish()`. Now only what the client
|
|
28
|
+
let go of is stopped, by kind, the stream is never released under a track the client keeps, and `publish()` again
|
|
29
|
+
asks for, opens and sends the camera alone. `source-already-published` only when everything asked for is on air.
|
|
30
|
+
- **`webrtc-missing` is reported once under StrictMode** (RN012-4), and again only when the provider is asked for a
|
|
31
|
+
client anew.
|
|
32
|
+
- **An `onError` that throws** (RN012-5) no longer becomes an unhandled rejection or keeps the next call's `onError`
|
|
33
|
+
from hearing the failure; the same for a call whose close throws at the notification's Leave.
|
|
34
|
+
- README: the testing table names the versions this release ran on (VK1031-11).
|
|
35
|
+
|
|
36
|
+
## 0.1.2
|
|
37
|
+
|
|
38
|
+
From the SDK red team (`src/__tests__/redteam.test.tsx` RN-1, RN-2), with the lead's decisions:
|
|
39
|
+
|
|
40
|
+
- **Stop wins over a Go live still under way** (RN-1, RN-2, privacy). `unpublish()` tapped while the Android
|
|
41
|
+
permission dialog was up, or while the camera was opening, let the camera and microphone go live after the user
|
|
42
|
+
stopped. `publish()` now watches for the stop: after the dialog nothing opens, a camera that opened is released,
|
|
43
|
+
nothing is published, and it rejects with `unpublished`.
|
|
44
|
+
- **Permissions are hints** (client 0.9.14): where `permissions` says audio or video is off, `publish()` asks the
|
|
45
|
+
controller before refusing; with client 0.9.13 the hint stands.
|
|
46
|
+
- The test fixture's native version is 0.1.2 (no stale-native warning in Jest).
|
|
47
|
+
|
|
48
|
+
Published 2026-10-28. README only: the Music add-on. Music is an add-on on standard and HD voice (₹10 per
|
|
49
|
+
1,000 participant-minutes while music plays, enabled in the project's Settings → Media and quality) and included with
|
|
50
|
+
video; a listener who receives a web host's `music` track is billed it on a voice tier too. This SDK still does not
|
|
51
|
+
publish music (`publishMusic()` rejects with `music-unavailable`). No behaviour changed (`SDK_VERSION` follows the
|
|
52
|
+
package version); the peers are unchanged
|
|
53
|
+
(`@voltkit-rtc/client >=0.9.13 <0.10.0` takes 0.9.14, `@voltkit-rtc/react ^0.1.1` takes 0.1.2). Build the app again
|
|
54
|
+
after upgrading all the same: its version check reads this package's version.
|
|
55
|
+
|
|
3
56
|
## 0.1.1
|
|
4
57
|
|
|
5
58
|
2026-10-27. Two fixes from the testers' report on 0.1.0 (RN010-1, RN010-2). Peer dependency `@voltkit-rtc/client`
|
package/README.md
CHANGED
|
@@ -78,8 +78,8 @@ library, and under Expo's `tsconfig.base` alike.
|
|
|
78
78
|
| React Native | 0.82 or newer, with the New Architecture; tested with 0.88.0 and Hermes |
|
|
79
79
|
| React | 19.1 or newer |
|
|
80
80
|
| react-native-webrtc | 155.0.1 or a later 155.x |
|
|
81
|
-
| `@voltkit-rtc/client` | 0.9.
|
|
82
|
-
| `@voltkit-rtc/react` | 0.1.
|
|
81
|
+
| `@voltkit-rtc/client` | 0.9.15 or a later 0.9.x |
|
|
82
|
+
| `@voltkit-rtc/react` | 0.1.3 or a later 0.1.x |
|
|
83
83
|
| Android | minSdk 24 (Android 7.0), react-native-webrtc's minimum |
|
|
84
84
|
| Expo | SDK 58 or newer, in a development build; not Expo Go |
|
|
85
85
|
| iOS | Preview: see [iOS preview](#ios-preview) |
|
|
@@ -580,7 +580,7 @@ browser SDK's: https://voltkit.in/docs/client-sdk.
|
|
|
580
580
|
|
|
581
581
|
| Call | |
|
|
582
582
|
| --- | --- |
|
|
583
|
-
| `publish(options?)` | ask for the permissions, then open the camera and microphone and publish them (hosts and cohosts) |
|
|
583
|
+
| `publish(options?)` | ask for the permissions, then open the camera and microphone and publish them (hosts and cohosts). `unpublish()` while the permission dialog is up or the camera is opening wins: no device opens after it, what opened is released, nothing goes live, and `publish` rejects with `unpublished` (0.1.2). Where `permissions` says no, the controller is asked first (client 0.9.14): the hint can be stale. What is on air goes on, and only the rest is asked for and opened (0.1.3): after the server took the microphone and refused the camera, `publish()` again sends the camera alone. A role changed to viewer while the dialog is up, or while the devices open, closes them again: `forbidden`, nothing open (0.1.3). Stop, then Go live while the dialog is still up: the first ends with `unpublished` and the second goes live (0.1.3) |
|
|
584
584
|
| `unpublish()` | stop publishing everything, screen included, and release the devices |
|
|
585
585
|
| `setMicEnabled(on)`, `setCamEnabled(on)` | switch one off or on; viewers are told |
|
|
586
586
|
| `setAudioQuality(quality)` | `'std'` or `'hd'` while live; resolves to the quality in use |
|
|
@@ -1262,8 +1262,8 @@ on for a publish that cannot happen:
|
|
|
1262
1262
|
| `media-unavailable` | a permission was refused: `data.permission` and `data.status`, see [Permissions](#permissions) |
|
|
1263
1263
|
| `not-connected` | the session is not connected, or there is no client yet |
|
|
1264
1264
|
| `forbidden` | your role is not `host` or `cohost` |
|
|
1265
|
-
| `source-already-published` |
|
|
1266
|
-
| `media-disabled` | the project switched that kind off. Check `permissions.audio` and `permissions.video`, or pass `audio: false` or `video: false` |
|
|
1265
|
+
| `source-already-published` | everything asked for is on air already, or a publish is under way: `unpublish()` first. With only the microphone on air (the server refused the camera), `publish()` again opens and sends the camera alone (0.1.3) |
|
|
1266
|
+
| `media-disabled` | the project switched that kind off. Check `permissions.audio` and `permissions.video`, or pass `audio: false` or `video: false`. A web host's `publishMusic` gets it too where the project has neither the Music add-on nor video enabled; this SDK does not publish music |
|
|
1267
1267
|
|
|
1268
1268
|
A camera or microphone that another app holds, or that fails to open, rejects
|
|
1269
1269
|
with `media-unavailable`, with `data.reason` set to the capture error's name (or
|
|
@@ -1309,7 +1309,7 @@ export function mediaProblem(err: unknown): string | null {
|
|
|
1309
1309
|
| `camera-failed` | the camera could not switch; the old one stays on air | try again |
|
|
1310
1310
|
| `bad-params` | an id no camera, microphone or output has, or an output chosen in the `media` audio mode | use an id from `useDevices` or `useAudioOutput` |
|
|
1311
1311
|
| `screen-share-service-required`, `screen-share-denied`, `screen-share-unsupported`, `screen-share-active`, `screen-share-failed` | screen sharing is not set up in the build, the user cancelled, iOS, a share is already starting, or the capture could not start | see [Screen sharing](#screen-sharing) |
|
|
1312
|
-
| `music-unavailable` | in-app music needs a browser | leave
|
|
1312
|
+
| `music-unavailable` | in-app music needs a browser. Receiving a host's `music` track works, and is billed as the Music add-on: ₹10 per 1,000 participant-minutes while music plays, on standard and HD voice, included with video | leave publishing music out of the app |
|
|
1313
1313
|
|
|
1314
1314
|
### Reconnection
|
|
1315
1315
|
|
|
@@ -1497,8 +1497,8 @@ Bluetooth routing tested in unit tests, not on hardware.** Tested with:
|
|
|
1497
1497
|
| React | 19.3.0 |
|
|
1498
1498
|
| react-native-webrtc | 155.0.1 (WebRTC `org.jitsi:webrtc` 155.0.1) |
|
|
1499
1499
|
| Expo | SDK 58 (`expo` 58.0.19), development build, R8-minified release build |
|
|
1500
|
-
| `@voltkit-rtc/client` | 0.9.
|
|
1501
|
-
| `@voltkit-rtc/react` | 0.1.
|
|
1500
|
+
| `@voltkit-rtc/client` | 0.9.15 |
|
|
1501
|
+
| `@voltkit-rtc/react` | 0.1.3 |
|
|
1502
1502
|
| Android | the Android emulator (a Pixel 10 Pro AVD, x86_64, API 37.1, Google Play image); earpiece and Bluetooth routing in unit tests, not on hardware |
|
|
1503
1503
|
| iOS | not tested: preview |
|
|
1504
1504
|
|
|
@@ -222,8 +222,12 @@ function localActions(client) {
|
|
|
222
222
|
|
|
223
223
|
// ----------------------------------------------------------------------------------------------------- publish
|
|
224
224
|
|
|
225
|
-
/**
|
|
226
|
-
const publishing = new
|
|
225
|
+
/** The publish() between asking for the permissions and publishing, per client: the one start under way. */
|
|
226
|
+
const publishing = new WeakMap();
|
|
227
|
+
const mayPublish = client => {
|
|
228
|
+
const role = client.info?.role;
|
|
229
|
+
return role === 'host' || role === 'cohost';
|
|
230
|
+
};
|
|
227
231
|
async function publishDevices(client, options) {
|
|
228
232
|
// facingMode is a capture choice, not a publish option.
|
|
229
233
|
const {
|
|
@@ -235,44 +239,118 @@ async function publishDevices(client, options) {
|
|
|
235
239
|
if (audio === false && video === false) throw new TypeError('publish: ask for audio, video or both');
|
|
236
240
|
// Everything that would refuse the publish is checked before a permission is asked for or a device opens.
|
|
237
241
|
if (client.connectionState !== 'connected') throw new _client.RpcError('not-connected', 'connect before publishing');
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
242
|
+
if (!mayPublish(client)) throw new _client.RpcError('forbidden', 'only hosts and cohosts can publish');
|
|
243
|
+
// What is on air goes on as it is, and only the rest is asked for and opened (0.1.3, decision D2): a retry after the
|
|
244
|
+
// server took the microphone and refused the camera sends the camera alone. Everything asked for on air already, or
|
|
245
|
+
// a start under way: unpublish first.
|
|
246
|
+
const onAir = kind => (0, _common.localStream)(client)?.getTracks().some(track => track.kind === kind && track.readyState === 'live') ?? false;
|
|
247
|
+
const wantAudio = audio !== false && !onAir('audio');
|
|
248
|
+
const wantVideo = video !== false && !onAir('video');
|
|
249
|
+
if (publishing.has(client) || !wantAudio && !wantVideo) {
|
|
241
250
|
throw new _client.RpcError('source-already-published', 'already publishing: unpublish() first');
|
|
242
251
|
}
|
|
243
|
-
const
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
252
|
+
const start = {};
|
|
253
|
+
publishing.set(client, start);
|
|
254
|
+
const ended = () => {
|
|
255
|
+
if (publishing.get(client) === start) publishing.delete(client);
|
|
256
|
+
};
|
|
257
|
+
// Stop wins over a start still under way (0.1.2): unpublish() -- the user's Stop -- while the permission dialog is up
|
|
258
|
+
// or the camera is opening says so with localStreamChanged(null). No device opens after it, what opened is released,
|
|
259
|
+
// nothing is published, and this start rejects with `unpublished`. It is over from that moment: a Go live right
|
|
260
|
+
// after the Stop is the user's last word and its own start, not this one's double tap (RN012-3).
|
|
261
|
+
let stopped = false;
|
|
262
|
+
const unwatch = client.on('localStreamChanged', local => {
|
|
263
|
+
if (local !== null) return;
|
|
264
|
+
stopped = true;
|
|
265
|
+
ended();
|
|
266
|
+
});
|
|
267
|
+
const stoppedError = () => new _client.RpcError('unpublished', 'unpublish() ran while the camera and microphone were opening');
|
|
268
|
+
const demotedError = () => new _client.RpcError('forbidden', 'the role changed while the camera and microphone were opening: only hosts and cohosts can publish');
|
|
248
269
|
try {
|
|
270
|
+
let permissions = client.mediaPermissions;
|
|
271
|
+
if (wantAudio && !permissions.audio || wantVideo && !permissions.video) {
|
|
272
|
+
// A hint from the join (client 0.9.14): the controller is asked before refusing. Null: it cannot say, and the
|
|
273
|
+
// client's publish lets it decide.
|
|
274
|
+
const fresh = await refreshPermissions(client, permissions);
|
|
275
|
+
permissions = fresh ?? {
|
|
276
|
+
...permissions,
|
|
277
|
+
audio: true,
|
|
278
|
+
video: true
|
|
279
|
+
};
|
|
280
|
+
if (stopped) throw stoppedError();
|
|
281
|
+
}
|
|
282
|
+
if (wantAudio && !permissions.audio) throw new _client.RpcError('media-disabled', 'audio is switched off for this project');
|
|
283
|
+
if (wantVideo && !permissions.video) throw new _client.RpcError('media-disabled', 'video is switched off for this project');
|
|
284
|
+
if (!(0, _globals.registerVoltkitGlobals)()) throw (0, _errors.webrtcMissing)();
|
|
249
285
|
const kinds = [];
|
|
250
|
-
if (
|
|
251
|
-
if (
|
|
286
|
+
if (wantVideo) kinds.push('camera');
|
|
287
|
+
if (wantAudio) kinds.push('microphone');
|
|
252
288
|
const statuses = await (0, _permissions.requestMediaPermissions)(kinds);
|
|
253
289
|
for (const kind of kinds) {
|
|
254
290
|
const status = statuses[kind];
|
|
255
291
|
if (status !== 'granted') throw (0, _errors.permissionRefused)(kind, status);
|
|
256
292
|
}
|
|
257
293
|
// The dialog stays up as long as the user thinks: the call may be over by now (the screen unmounted, a kick, the
|
|
258
|
-
// room closed)
|
|
294
|
+
// room closed), the user tapped Stop, or a demotion came (RN012-2: a viewer's camera light never comes on). Nothing
|
|
295
|
+
// opens a device then.
|
|
296
|
+
if (stopped) throw stoppedError();
|
|
259
297
|
if (client.connectionState !== 'connected') throw new _client.RpcError('not-connected', 'the session ended while the permissions were being asked for');
|
|
260
|
-
|
|
298
|
+
if (!mayPublish(client)) throw demotedError();
|
|
299
|
+
const constraints = captureConstraints({
|
|
300
|
+
...options,
|
|
301
|
+
audio: wantAudio ? audio : false,
|
|
302
|
+
video: wantVideo ? video : false
|
|
303
|
+
}, permissions);
|
|
261
304
|
const platform = (0, _index.reactNativePlatform)();
|
|
262
305
|
const stream = await platform.getUserMedia(constraints);
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
await client.publish(stream, constraints, publishOptions);
|
|
266
|
-
} catch (error) {
|
|
267
|
-
// Released here, the stream before its tracks (platform/streams.ts): the client kept none of it.
|
|
306
|
+
// Released here, the stream before its tracks (platform/streams.ts), while the client kept none of it.
|
|
307
|
+
const release = () => {
|
|
268
308
|
const book = (0, _streams.streamBook)();
|
|
269
309
|
const tracks = stream.getTracks();
|
|
270
310
|
book.release(stream);
|
|
271
311
|
for (const track of tracks) book.stop(track);
|
|
312
|
+
};
|
|
313
|
+
if (stopped) {
|
|
314
|
+
release();
|
|
315
|
+
throw stoppedError();
|
|
316
|
+
}
|
|
317
|
+
// Demoted while the devices were opening: closed again at once, nothing is published.
|
|
318
|
+
if (!mayPublish(client)) {
|
|
319
|
+
release();
|
|
320
|
+
throw demotedError();
|
|
321
|
+
}
|
|
322
|
+
try {
|
|
323
|
+
// With the constraints, a reconnect that finds the devices gone opens them again.
|
|
324
|
+
await client.publish(stream, constraints, publishOptions);
|
|
325
|
+
} catch (error) {
|
|
326
|
+
// Only what the client let go of. A microphone it kept on air (the server took it, then refused the camera)
|
|
327
|
+
// stays live, in a stream the client holds now: stopped here, it stayed on air as a dead track with micEnabled
|
|
328
|
+
// saying true (the R012-2 class), and the stream is never released under a track the client keeps. By kind:
|
|
329
|
+
// behind a video processor `local` holds the picture, not the camera.
|
|
330
|
+
const kept = (0, _common.localStream)(client)?.getTracks().filter(track => track.readyState === 'live').map(track => track.kind) ?? [];
|
|
331
|
+
if (kept.length === 0) release();else {
|
|
332
|
+
const book = (0, _streams.streamBook)();
|
|
333
|
+
for (const track of stream.getTracks()) if (!kept.includes(track.kind)) book.stop(track);
|
|
334
|
+
}
|
|
272
335
|
throw error;
|
|
273
336
|
}
|
|
274
337
|
} finally {
|
|
275
|
-
|
|
338
|
+
if (typeof unwatch === 'function') unwatch();
|
|
339
|
+
ended();
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
/**
|
|
344
|
+
* The project's permissions as the controller says now (client 0.9.14), or null when it cannot say. A client older
|
|
345
|
+
* than 0.9.14 cannot ask: its hint stands. A failed question leaves the hint standing too.
|
|
346
|
+
*/
|
|
347
|
+
async function refreshPermissions(client, hint) {
|
|
348
|
+
const refresh = client.refreshMediaPermissions;
|
|
349
|
+
if (typeof refresh !== 'function') return hint;
|
|
350
|
+
try {
|
|
351
|
+
return await refresh.call(client);
|
|
352
|
+
} catch {
|
|
353
|
+
return hint;
|
|
276
354
|
}
|
|
277
355
|
}
|
|
278
356
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_client","_react2","_errors","_permissions","_globals","_index","_streams","_devices","_common","LocalSession","screen","listeners","Set","holders","stopListening","constructor","client","hold","listen","held","subscribe","listener","add","delete","changed","offs","on","stream","endScreen","state","off","sessions","WeakMap","localSessionOf","session","get","set","EVENTS","FALLBACK","Object","freeze","publishing","micEnabled","camEnabled","audioQuality","videoQuality","DEFAULT_MEDIA_PERMISSIONS","maxVideoQuality","videoFrameRate","screenSharing","screenStream","permissions","facingMode","facingOf","settings","localStream","getVideoTracks","getSettings","facing","read","mediaPermissions","sameFields","a","b","keys","length","every","key","is","localSource","version","cache","onChange","map","event","push","getSnapshot","value","next","settled","noSubscription","undefined","fallback","useLocalMedia","useVoltkitClient","source","useMemo","useSyncExternalStore","actions","localActions","call","task","RpcError","publish","options","c","publishDevices","unpublish","setMicEnabled","setCamEnabled","setAudioQuality","quality","setVideoQuality","raiseCapture","setVideoFrameRate","frameRate","switchCamera","startScreenShare","publishScreen","stopScreenShare","unpublishScreen","WeakSet","audio","video","_facingMode","publishOptions","TypeError","connectionState","role","info","has","getTracks","some","track","readyState","registerVoltkitGlobals","webrtcMissing","kinds","statuses","requestMediaPermissions","kind","status","permissionRefused","constraints","captureConstraints","platform","reactNativePlatform","getUserMedia","error","book","streamBook","tracks","release","stop","FRAMES","width","height","microphone","audioQualityMax","camera","hd","echoCancellation","noiseSuppression","autoGainControl","channelCount","ideal","fps","maxFrameRate","allowedQuality","maxQuality","max","frame","Math","min","applyConstraints","getConstraints","switching","previous","Promise","resolve","catch","then","flipCamera","cameras","listCameras","current","find","deviceId","front","target","switchDevice"],"sourceRoot":"../../src","sources":["local-media.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_client","_react2","_errors","_permissions","_globals","_index","_streams","_devices","_common","LocalSession","screen","listeners","Set","holders","stopListening","constructor","client","hold","listen","held","subscribe","listener","add","delete","changed","offs","on","stream","endScreen","state","off","sessions","WeakMap","localSessionOf","session","get","set","EVENTS","FALLBACK","Object","freeze","publishing","micEnabled","camEnabled","audioQuality","videoQuality","DEFAULT_MEDIA_PERMISSIONS","maxVideoQuality","videoFrameRate","screenSharing","screenStream","permissions","facingMode","facingOf","settings","localStream","getVideoTracks","getSettings","facing","read","mediaPermissions","sameFields","a","b","keys","length","every","key","is","localSource","version","cache","onChange","map","event","push","getSnapshot","value","next","settled","noSubscription","undefined","fallback","useLocalMedia","useVoltkitClient","source","useMemo","useSyncExternalStore","actions","localActions","call","task","RpcError","publish","options","c","publishDevices","unpublish","setMicEnabled","setCamEnabled","setAudioQuality","quality","setVideoQuality","raiseCapture","setVideoFrameRate","frameRate","switchCamera","startScreenShare","publishScreen","stopScreenShare","unpublishScreen","mayPublish","role","info","audio","video","_facingMode","publishOptions","TypeError","connectionState","onAir","kind","getTracks","some","track","readyState","wantAudio","wantVideo","has","start","ended","stopped","unwatch","local","stoppedError","demotedError","fresh","refreshPermissions","registerVoltkitGlobals","webrtcMissing","kinds","statuses","requestMediaPermissions","status","permissionRefused","constraints","captureConstraints","platform","reactNativePlatform","getUserMedia","release","book","streamBook","tracks","stop","error","kept","filter","includes","hint","refresh","refreshMediaPermissions","FRAMES","width","height","microphone","audioQualityMax","camera","hd","echoCancellation","noiseSuppression","autoGainControl","channelCount","ideal","fps","maxFrameRate","allowedQuality","maxQuality","max","frame","Math","min","applyConstraints","getConstraints","switching","previous","Promise","resolve","catch","then","flipCamera","cameras","listCameras","current","find","deviceId","front","target","switchDevice"],"sourceRoot":"../../src","sources":["local-media.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -56,12 +56,37 @@ class CallServices {
|
|
|
56
56
|
watching = null;
|
|
57
57
|
state = null;
|
|
58
58
|
listeners = new Set();
|
|
59
|
+
/** A call gone: decided after this turn of the JavaScript thread (see `set`). */
|
|
60
|
+
settling = null;
|
|
59
61
|
set(key, want, report = () => undefined) {
|
|
60
|
-
if (want)
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
if (want) {
|
|
63
|
+
this.wants.set(key, {
|
|
64
|
+
want,
|
|
65
|
+
report
|
|
66
|
+
});
|
|
67
|
+
this.reconcile();
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
this.wants.delete(key);
|
|
71
|
+
// React replaces a screen's provider by another's in one commit: the old effect's cleanup first, the new effect
|
|
72
|
+
// right after. Decided at once, the stop would be on its way to Android when the new provider registers the same
|
|
73
|
+
// live client, and the service would bounce (RN012-1); in the background, where Android lets it stop but not start
|
|
74
|
+
// again, the call would then be cut. So a call gone is decided once the turn is over.
|
|
75
|
+
this.settling ??= Promise.resolve().then(() => {
|
|
76
|
+
this.settling = null;
|
|
77
|
+
this.reconcile();
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/** Each live call told in turn: an app's listener that throws (RN012-5) or a close that throws never silences the next call. */
|
|
82
|
+
each(wants, tell, context) {
|
|
83
|
+
for (const want of wants) {
|
|
84
|
+
try {
|
|
85
|
+
tell(want);
|
|
86
|
+
} catch (err) {
|
|
87
|
+
(0, _errors.logError)(context, err);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
65
90
|
}
|
|
66
91
|
|
|
67
92
|
/** Something a call publishes may have changed: decide again. */
|
|
@@ -154,7 +179,8 @@ class CallServices {
|
|
|
154
179
|
run(module, what, options) {
|
|
155
180
|
this.inFlight = what;
|
|
156
181
|
const key = options ? JSON.stringify(options) : null;
|
|
157
|
-
|
|
182
|
+
// Called now; a module that throws instead of rejecting (its bridge gone) is a rejection all the same.
|
|
183
|
+
const call = (async () => what === 'stop' ? module.stopCallService() : what === 'start' ? module.startCallService(options) : module.updateCallService(options))();
|
|
158
184
|
call.then(status => {
|
|
159
185
|
this.running = status.running;
|
|
160
186
|
this.applied = status.running ? key : null;
|
|
@@ -171,7 +197,7 @@ class CallServices {
|
|
|
171
197
|
}
|
|
172
198
|
this.failed = key;
|
|
173
199
|
const error = (0, _errors.callServiceFailed)((0, _errors.describeError)(err));
|
|
174
|
-
|
|
200
|
+
this.each(this.live(), want => want.report(error), 'onError threw');
|
|
175
201
|
}).finally(() => {
|
|
176
202
|
this.inFlight = null;
|
|
177
203
|
if (this.again) {
|
|
@@ -214,10 +240,14 @@ class CallServices {
|
|
|
214
240
|
});
|
|
215
241
|
return;
|
|
216
242
|
case 'stopped':
|
|
243
|
+
// The service's real state, whatever stopped it: a stop of ours, asked when no call was live and run by Android
|
|
244
|
+
// later, when a call may be live again (a screen's provider replaced by another holding the same client,
|
|
245
|
+
// RN012-1), or something outside (an app's own stopService). The calls decide again: a live call gets it back
|
|
246
|
+
// now while the app is visible, as after a join; in the background it waits for the front, as every start does.
|
|
247
|
+
// Until 0.1.2 a live call here was held as a failure until the next front, and the first background stay would
|
|
248
|
+
// have cut the call.
|
|
217
249
|
this.running = false;
|
|
218
250
|
this.applied = null;
|
|
219
|
-
// Stopped from outside while a call is live: started again when the app next comes to the front, not now.
|
|
220
|
-
if (this.live().length > 0) this.failed = JSON.stringify(merged(this.live()));
|
|
221
251
|
this.publish({
|
|
222
252
|
running: false,
|
|
223
253
|
types: []
|
|
@@ -226,14 +256,14 @@ class CallServices {
|
|
|
226
256
|
return;
|
|
227
257
|
case 'leave':
|
|
228
258
|
case 'taskRemoved':
|
|
229
|
-
|
|
259
|
+
this.each(this.live(), want => want.leave(), 'a call could not be closed');
|
|
230
260
|
return;
|
|
231
261
|
case 'failed':
|
|
232
262
|
{
|
|
233
263
|
// VoltkitCallService.runWith tells `failed` and then rejects the start or update: the rejection reports it (RN010-2).
|
|
234
264
|
if (this.inFlight === 'start' || this.inFlight === 'update') return;
|
|
235
265
|
const error = (0, _errors.callServiceFailed)(message || 'Android refused it');
|
|
236
|
-
|
|
266
|
+
this.each(this.live(), want => want.report(error), 'onError threw');
|
|
237
267
|
return;
|
|
238
268
|
}
|
|
239
269
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_react2","_native","_errors","_audio","_localMedia","_visibility","_common","NOT_DECLARED","Object","freeze","declared","running","types","CallServices","wants","Map","inFlight","again","applied","failed","watching","state","listeners","Set","set","key","want","report","undefined","delete","reconcile","changed","subscribe","listener","add","snapshot","module","nativeModule","nativeConstants","callServiceDeclared","status","getCallServiceStatus","err","logError","publish","now","next","join","live","w","callServiceFailed","describeError","reportErr","push","watch","length","run","options","merged","JSON","stringify","safeVisible","what","call","stopCallService","startCallService","updateCallService","then","error","finally","on","visibility","nativeVisibility","stops","visible","listen","onCallServiceEvent","event","onEvent","type","message","stop","leave","isAppVisible","text","reverse","pick","field","find","title","leaveLabel","pauseCamera","some","cameraPublished","micPublished","sharing","callServices","useCallService","useSyncExternalStore","NativeSession","audio","callService","onError","client","useVoltkitClient","manage","speakerphone","wantsService","useMemo","latest","useRef","useEffect","current","localSessionOf","hold","audioHoldOf","retain","sync","connectionState","acquire","speakerPreference","release","off","unretain","wantOf","update","offs","map","local","localStream","getAudioTracks","getVideoTracks","screen","pausesCameraInBackground","close","pauseCameraInBackground"],"sourceRoot":"../../src","sources":["native-session.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_react2","_native","_errors","_audio","_localMedia","_visibility","_common","NOT_DECLARED","Object","freeze","declared","running","types","CallServices","wants","Map","inFlight","again","applied","failed","watching","state","listeners","Set","settling","set","key","want","report","undefined","reconcile","delete","Promise","resolve","then","each","tell","context","err","logError","changed","subscribe","listener","add","snapshot","module","nativeModule","nativeConstants","callServiceDeclared","status","getCallServiceStatus","publish","now","next","join","live","w","callServiceFailed","describeError","reportErr","push","watch","length","run","options","merged","JSON","stringify","safeVisible","what","call","stopCallService","startCallService","updateCallService","error","finally","on","visibility","nativeVisibility","stops","visible","listen","onCallServiceEvent","event","onEvent","type","message","stop","leave","isAppVisible","text","reverse","pick","field","find","title","leaveLabel","pauseCamera","some","cameraPublished","micPublished","sharing","callServices","useCallService","useSyncExternalStore","NativeSession","audio","callService","onError","client","useVoltkitClient","manage","speakerphone","wantsService","useMemo","latest","useRef","useEffect","current","localSessionOf","hold","audioHoldOf","retain","sync","connectionState","acquire","speakerPreference","release","off","unretain","wantOf","update","offs","map","local","localStream","getAudioTracks","getVideoTracks","screen","pausesCameraInBackground","close","pauseCameraInBackground"],"sourceRoot":"../../src","sources":["native-session.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/native.js
CHANGED
|
@@ -21,7 +21,7 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
21
21
|
*/
|
|
22
22
|
|
|
23
23
|
/** The version of this package: what getDiagnostics() reports, and what the native side was built from. */
|
|
24
|
-
const SDK_VERSION = exports.SDK_VERSION = '0.1.
|
|
24
|
+
const SDK_VERSION = exports.SDK_VERSION = '0.1.3';
|
|
25
25
|
|
|
26
26
|
/** The native module, or null where there is none (iOS, Expo Go, an app not rebuilt). */
|
|
27
27
|
function nativeModule() {
|
|
@@ -60,7 +60,7 @@ function localStream(client) {
|
|
|
60
60
|
return client.local ?? null;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
/** getDiagnostics().userAgent: `ReactNative android 37; react-native-webrtc 155.0.1; @voltkit-rtc/react-native 0.1.
|
|
63
|
+
/** getDiagnostics().userAgent: `ReactNative android 37; react-native-webrtc 155.0.1; @voltkit-rtc/react-native 0.1.3`. */
|
|
64
64
|
function describePlatform() {
|
|
65
65
|
return `ReactNative ${_reactNative.Platform.OS} ${String(_reactNative.Platform.Version)}; react-native-webrtc ${(0, _globals.webrtcVersion)() ?? 'unknown'}; @voltkit-rtc/react-native ${_native.SDK_VERSION}`;
|
|
66
66
|
}
|
package/lib/commonjs/provider.js
CHANGED
|
@@ -42,8 +42,16 @@ function VoltkitProvider({
|
|
|
42
42
|
errors.current = onError;
|
|
43
43
|
});
|
|
44
44
|
const wanted = Boolean(client || wsUrl && token);
|
|
45
|
+
// Said once per ask: StrictMode runs an effect twice on mount (development only), and onError heard
|
|
46
|
+
// webrtc-missing twice (RN012-4). Asked for a client anew (a new token after none), it is said again.
|
|
47
|
+
const said = (0, _react.useRef)(false);
|
|
45
48
|
(0, _react.useEffect)(() => {
|
|
46
|
-
if (!wanted)
|
|
49
|
+
if (!wanted) {
|
|
50
|
+
said.current = false;
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (said.current) return;
|
|
54
|
+
said.current = true;
|
|
47
55
|
if (!webrtc) errors.current?.((0, _errors.webrtcMissing)());else if (_reactNative.Platform.OS === 'android' && !(0, _native.nativeModule)()) errors.current?.((0, _errors.nativeMissing)('Background calls, audio routing and native timers'));
|
|
48
56
|
}, [webrtc, wanted]);
|
|
49
57
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_react2","_globals","_native","_errors","_createClient","_nativeSession","_jsxRuntime","VoltkitProvider","audio","background","callService","clientOptions","client","wsUrl","token","onError","children","rest","webrtc","useMemo","registerVoltkitGlobals","errors","useRef","useEffect","current","wanted","Boolean","webrtcMissing","Platform","OS","nativeModule","nativeMissing","options","reactNativeClientOptions","undefined","pauseCamera","pauseCameraInBackground","jsxs","jsx","NativeSession"],"sourceRoot":"../../src","sources":["provider.tsx"],"mappings":";;;;;;AASA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AAAiG,IAAAQ,WAAA,GAAAR,OAAA;AAhBjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA8BA;AACO,SAASS,eAAeA,CAAC;EAC9BC,KAAK;EACLC,UAAU;EACVC,WAAW;EACXC,aAAa;EACbC,MAAM;EACNC,KAAK;EACLC,KAAK;EACLC,OAAO;EACPC,QAAQ;EACR,GAAGC;AACiB,CAAC,EAAgB;EACrC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,+BAAsB,EAAC,CAAC,EAAE,EAAE,CAAC;EAC1D,MAAMC,MAAM,GAAG,IAAAC,aAAM,EAACP,OAAO,CAAC;EAC9B,IAAAQ,gBAAS,EAAC,MAAM;IACdF,MAAM,CAACG,OAAO,GAAGT,OAAO;EAC1B,CAAC,CAAC;EAEF,MAAMU,MAAM,GAAGC,OAAO,CAACd,MAAM,IAAKC,KAAK,IAAIC,KAAM,CAAC;EAClD,
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_react2","_globals","_native","_errors","_createClient","_nativeSession","_jsxRuntime","VoltkitProvider","audio","background","callService","clientOptions","client","wsUrl","token","onError","children","rest","webrtc","useMemo","registerVoltkitGlobals","errors","useRef","useEffect","current","wanted","Boolean","said","webrtcMissing","Platform","OS","nativeModule","nativeMissing","options","reactNativeClientOptions","undefined","pauseCamera","pauseCameraInBackground","jsxs","jsx","NativeSession"],"sourceRoot":"../../src","sources":["provider.tsx"],"mappings":";;;;;;AASA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AAAiG,IAAAQ,WAAA,GAAAR,OAAA;AAhBjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AA8BA;AACO,SAASS,eAAeA,CAAC;EAC9BC,KAAK;EACLC,UAAU;EACVC,WAAW;EACXC,aAAa;EACbC,MAAM;EACNC,KAAK;EACLC,KAAK;EACLC,OAAO;EACPC,QAAQ;EACR,GAAGC;AACiB,CAAC,EAAgB;EACrC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EAAC,MAAM,IAAAC,+BAAsB,EAAC,CAAC,EAAE,EAAE,CAAC;EAC1D,MAAMC,MAAM,GAAG,IAAAC,aAAM,EAACP,OAAO,CAAC;EAC9B,IAAAQ,gBAAS,EAAC,MAAM;IACdF,MAAM,CAACG,OAAO,GAAGT,OAAO;EAC1B,CAAC,CAAC;EAEF,MAAMU,MAAM,GAAGC,OAAO,CAACd,MAAM,IAAKC,KAAK,IAAIC,KAAM,CAAC;EAClD;EACA;EACA,MAAMa,IAAI,GAAG,IAAAL,aAAM,EAAC,KAAK,CAAC;EAC1B,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACE,MAAM,EAAE;MACXE,IAAI,CAACH,OAAO,GAAG,KAAK;MACpB;IACF;IACA,IAAIG,IAAI,CAACH,OAAO,EAAE;IAClBG,IAAI,CAACH,OAAO,GAAG,IAAI;IACnB,IAAI,CAACN,MAAM,EAAEG,MAAM,CAACG,OAAO,GAAG,IAAAI,qBAAa,EAAC,CAAC,CAAC,CAAC,KAC1C,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,CAAC,IAAAC,oBAAY,EAAC,CAAC,EAAEV,MAAM,CAACG,OAAO,GAAG,IAAAQ,qBAAa,EAAC,mDAAmD,CAAC,CAAC;EAC7I,CAAC,EAAE,CAACd,MAAM,EAAEO,MAAM,CAAC,CAAC;;EAEpB;EACA,MAAMQ,OAAO,GAAG,IAAAd,cAAO,EACrB,MAAOD,MAAM,GAAG,IAAAgB,sCAAwB,EAAC;IAAEzB,UAAU;IAAEE;EAAc,CAAC,CAAC,GAAGwB,SAAU;EACpF;EACA,CAACjB,MAAM,EAAEL,KAAK,EAAEC,KAAK,CACvB,CAAC;EACD;EACA;EACA,MAAMsB,WAAW,GAAGH,OAAO,EAAEI,uBAAuB,KAAK,IAAI;EAE7D,oBACE,IAAA/B,WAAA,CAAAgC,IAAA,EAACtC,OAAA,CAAAO,eAAoB;IAAA,GACfU,IAAI;IACRJ,KAAK,EAAEK,MAAM,GAAGL,KAAK,GAAGsB,SAAU;IAClCrB,KAAK,EAAEI,MAAM,GAAGJ,KAAK,GAAGqB,SAAU;IAClCvB,MAAM,EAAEM,MAAM,GAAGN,MAAM,GAAG,IAAK;IAC/BD,aAAa,EAAEsB,OAAQ;IACvBlB,OAAO,EAAEA,OAAQ;IAAAC,QAAA,GAEhBE,MAAM,gBAAG,IAAAZ,WAAA,CAAAiC,GAAA,EAAClC,cAAA,CAAAmC,aAAa;MAAChC,KAAK,EAAEA,KAAM;MAACE,WAAW,EAAEA,WAAY;MAAC0B,WAAW,EAAEA,WAAY;MAACrB,OAAO,EAAEM;IAAO,CAAE,CAAC,GAAG,IAAI,EACpHL,QAAQ;EAAA,CACW,CAAC;AAE3B","ignoreList":[]}
|