@voltkit-rtc/react-native 0.1.2 → 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 CHANGED
@@ -1,5 +1,38 @@
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
+
3
36
  ## 0.1.2
4
37
 
5
38
  From the SDK red team (`src/__tests__/redteam.test.tsx` RN-1, RN-2), with the lead's decisions:
@@ -12,7 +45,7 @@ From the SDK red team (`src/__tests__/redteam.test.tsx` RN-1, RN-2), with the le
12
45
  controller before refusing; with client 0.9.13 the hint stands.
13
46
  - The test fixture's native version is 0.1.2 (no stale-native warning in Jest).
14
47
 
15
- Prepared 2026-10-28, not published. README only: the Music add-on. Music is an add-on on standard and HD voice (₹10 per
48
+ Published 2026-10-28. README only: the Music add-on. Music is an add-on on standard and HD voice (₹10 per
16
49
  1,000 participant-minutes while music plays, enabled in the project's Settings → Media and quality) and included with
17
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
18
51
  publish music (`publishMusic()` rejects with `music-unavailable`). No behaviour changed (`SDK_VERSION` follows the
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.13 or a later 0.9.x |
82
- | `@voltkit-rtc/react` | 0.1.1 or a later 0.1.x |
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). `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 |
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,7 +1262,7 @@ 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` | a camera and microphone are already published, or a publish is under way: `unpublish()` first |
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
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
@@ -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.13 |
1501
- | `@voltkit-rtc/react` | 0.1.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
- /** Clients with a publish() between asking for permissions and publishing. */
226
- const publishing = new WeakSet();
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,23 +239,36 @@ 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
- const role = client.info?.role;
239
- if (role !== 'host' && role !== 'cohost') throw new _client.RpcError('forbidden', 'only hosts and cohosts can publish');
240
- if (publishing.has(client) || (0, _common.localStream)(client)?.getTracks().some(track => track.readyState === 'live')) {
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
- publishing.add(client);
252
+ const start = {};
253
+ publishing.set(client, start);
254
+ const ended = () => {
255
+ if (publishing.get(client) === start) publishing.delete(client);
256
+ };
244
257
  // Stop wins over a start still under way (0.1.2): unpublish() -- the user's Stop -- while the permission dialog is up
245
258
  // or the camera is opening says so with localStreamChanged(null). No device opens after it, what opened is released,
246
- // nothing is published, and this start rejects with `unpublished`.
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).
247
261
  let stopped = false;
248
262
  const unwatch = client.on('localStreamChanged', local => {
249
- if (local === null) stopped = true;
263
+ if (local !== null) return;
264
+ stopped = true;
265
+ ended();
250
266
  });
251
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');
252
269
  try {
253
270
  let permissions = client.mediaPermissions;
254
- if (audio !== false && !permissions.audio || video !== false && !permissions.video) {
271
+ if (wantAudio && !permissions.audio || wantVideo && !permissions.video) {
255
272
  // A hint from the join (client 0.9.14): the controller is asked before refusing. Null: it cannot say, and the
256
273
  // client's publish lets it decide.
257
274
  const fresh = await refreshPermissions(client, permissions);
@@ -262,25 +279,31 @@ async function publishDevices(client, options) {
262
279
  };
263
280
  if (stopped) throw stoppedError();
264
281
  }
265
- if (audio !== false && !permissions.audio) throw new _client.RpcError('media-disabled', 'audio is switched off for this project');
266
- if (video !== false && !permissions.video) throw new _client.RpcError('media-disabled', 'video is switched off for this project');
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');
267
284
  if (!(0, _globals.registerVoltkitGlobals)()) throw (0, _errors.webrtcMissing)();
268
285
  const kinds = [];
269
- if (video !== false) kinds.push('camera');
270
- if (audio !== false) kinds.push('microphone');
286
+ if (wantVideo) kinds.push('camera');
287
+ if (wantAudio) kinds.push('microphone');
271
288
  const statuses = await (0, _permissions.requestMediaPermissions)(kinds);
272
289
  for (const kind of kinds) {
273
290
  const status = statuses[kind];
274
291
  if (status !== 'granted') throw (0, _errors.permissionRefused)(kind, status);
275
292
  }
276
293
  // The dialog stays up as long as the user thinks: the call may be over by now (the screen unmounted, a kick, the
277
- // room closed), or the user tapped Stop. Nothing opens a device then.
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.
278
296
  if (stopped) throw stoppedError();
279
297
  if (client.connectionState !== 'connected') throw new _client.RpcError('not-connected', 'the session ended while the permissions were being asked for');
280
- const constraints = captureConstraints(options, permissions);
298
+ if (!mayPublish(client)) throw demotedError();
299
+ const constraints = captureConstraints({
300
+ ...options,
301
+ audio: wantAudio ? audio : false,
302
+ video: wantVideo ? video : false
303
+ }, permissions);
281
304
  const platform = (0, _index.reactNativePlatform)();
282
305
  const stream = await platform.getUserMedia(constraints);
283
- // 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.
284
307
  const release = () => {
285
308
  const book = (0, _streams.streamBook)();
286
309
  const tracks = stream.getTracks();
@@ -291,16 +314,29 @@ async function publishDevices(client, options) {
291
314
  release();
292
315
  throw stoppedError();
293
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
+ }
294
322
  try {
295
323
  // With the constraints, a reconnect that finds the devices gone opens them again.
296
324
  await client.publish(stream, constraints, publishOptions);
297
325
  } catch (error) {
298
- release();
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
+ }
299
335
  throw error;
300
336
  }
301
337
  } finally {
302
338
  if (typeof unwatch === 'function') unwatch();
303
- publishing.delete(client);
339
+ ended();
304
340
  }
305
341
  }
306
342
 
@@ -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","stopped","unwatch","local","stoppedError","fresh","refreshPermissions","registerVoltkitGlobals","webrtcMissing","kinds","statuses","requestMediaPermissions","kind","status","permissionRefused","constraints","captureConstraints","platform","reactNativePlatform","getUserMedia","release","book","streamBook","tracks","stop","error","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":[]}
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) this.wants.set(key, {
61
- want,
62
- report
63
- });else this.wants.delete(key);
64
- this.reconcile();
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
- const call = what === 'stop' ? module.stopCallService() : what === 'start' ? module.startCallService(options) : module.updateCallService(options);
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
- for (const want of this.live()) want.report(error);
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
- for (const want of this.live()) want.leave();
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
- for (const want of this.live()) want.report(error);
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":[]}
@@ -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.2';
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.2`. */
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
  }
@@ -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) return;
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,IAAAS,gBAAS,EAAC,MAAM;IACd,IAAI,CAACE,MAAM,EAAE;IACb,IAAI,CAACP,MAAM,EAAEG,MAAM,CAACG,OAAO,GAAG,IAAAG,qBAAa,EAAC,CAAC,CAAC,CAAC,KAC1C,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,CAAC,IAAAC,oBAAY,EAAC,CAAC,EAAET,MAAM,CAACG,OAAO,GAAG,IAAAO,qBAAa,EAAC,mDAAmD,CAAC,CAAC;EAC7I,CAAC,EAAE,CAACb,MAAM,EAAEO,MAAM,CAAC,CAAC;;EAEpB;EACA,MAAMO,OAAO,GAAG,IAAAb,cAAO,EACrB,MAAOD,MAAM,GAAG,IAAAe,sCAAwB,EAAC;IAAExB,UAAU;IAAEE;EAAc,CAAC,CAAC,GAAGuB,SAAU;EACpF;EACA,CAAChB,MAAM,EAAEL,KAAK,EAAEC,KAAK,CACvB,CAAC;EACD;EACA;EACA,MAAMqB,WAAW,GAAGH,OAAO,EAAEI,uBAAuB,KAAK,IAAI;EAE7D,oBACE,IAAA9B,WAAA,CAAA+B,IAAA,EAACrC,OAAA,CAAAO,eAAoB;IAAA,GACfU,IAAI;IACRJ,KAAK,EAAEK,MAAM,GAAGL,KAAK,GAAGqB,SAAU;IAClCpB,KAAK,EAAEI,MAAM,GAAGJ,KAAK,GAAGoB,SAAU;IAClCtB,MAAM,EAAEM,MAAM,GAAGN,MAAM,GAAG,IAAK;IAC/BD,aAAa,EAAEqB,OAAQ;IACvBjB,OAAO,EAAEA,OAAQ;IAAAC,QAAA,GAEhBE,MAAM,gBAAG,IAAAZ,WAAA,CAAAgC,GAAA,EAACjC,cAAA,CAAAkC,aAAa;MAAC/B,KAAK,EAAEA,KAAM;MAACE,WAAW,EAAEA,WAAY;MAACyB,WAAW,EAAEA,WAAY;MAACpB,OAAO,EAAEM;IAAO,CAAE,CAAC,GAAG,IAAI,EACpHL,QAAQ;EAAA,CACW,CAAC;AAE3B","ignoreList":[]}
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":[]}