crowdplaysdk 0.2.6 → 0.3.1

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/README.md CHANGED
@@ -92,6 +92,8 @@ What the app is about — read carefully:
92
92
  import CrowdPlay, { CrowdPlayConsentScreen, CrowdPlayVideoView } from 'crowdplaysdk';
93
93
 
94
94
  CrowdPlay.configure({ serverUrl: 'https://…', appKey: 'liva_pk_…' });
95
+ // Voice-only app? add audioOnly: true — the camera is never touched
96
+ // (no camera permission, no video captured or uploaded).
95
97
 
96
98
  // 1. Consent (REQUIRED — join() throws without it):
97
99
  <CrowdPlayConsentScreen onConsent={(grant) => setConsent(grant)} />
@@ -199,6 +199,9 @@ public final class CrowdPlayRNModule: RCTEventEmitter {
199
199
  return
200
200
  }
201
201
  var configuration = CrowdPlayConfiguration(serverURL: url, appKey: appKey)
202
+ if let audioOnly = config["audioOnly"] as? Bool {
203
+ configuration.audioOnly = audioOnly
204
+ }
202
205
  if let cellular = config["videoUploadsOnCellular"] as? Bool {
203
206
  configuration.videoUploadsOnCellular = cellular
204
207
  }
package/ios/wire.rb CHANGED
@@ -25,7 +25,7 @@ SDK_URL = 'https://github.com/symbiateam/crowdplaysdk'
25
25
  # The ENGINE release this bridge was tested against. The npm package
26
26
  # version may be AHEAD of this (bridge/docs fixes ship without a new
27
27
  # engine binary); that is deliberate, not drift.
28
- SDK_VERSION = '0.2.4'
28
+ SDK_VERSION = '0.3.1'
29
29
  BRIDGE_FILES = ['CrowdPlayRNModule.swift', 'CrowdPlayRNVideoView.swift', 'CrowdPlayReactNative.m'].freeze
30
30
 
31
31
  project_name = ARGV[0] or abort 'usage: ruby wire.rb <YourProjectName>'
package/lib/index.d.ts CHANGED
@@ -37,6 +37,10 @@ export interface CrowdPlayConfig {
37
37
  serverUrl: string;
38
38
  /** From the CrowdPlay dashboard. Also your data-access credential. */
39
39
  appKey: string;
40
+ /** AUDIO-ONLY app: the camera is never touched — no camera permission,
41
+ * no video captured or uploaded, voice-only calls. The audio path is
42
+ * identical to an A/V app. Requires engine 0.3.0+. Default false. */
43
+ audioOnly?: boolean;
40
44
  /** Video (~2 GB/session) rides cellular too when true. Audio + metadata
41
45
  * always upload on any network. Default false. */
42
46
  videoUploadsOnCellular?: boolean;
package/llms.txt CHANGED
@@ -150,8 +150,13 @@ Named exports: CrowdPlayConsentScreen (props: onConsent(grant)), CrowdPlayVideoV
150
150
  (props: participant: string | 'local', plus standard View style).
151
151
 
152
152
  Types:
153
- CrowdPlayConfig { serverUrl; appKey; videoUploadsOnCellular?=false;
153
+ CrowdPlayConfig { serverUrl; appKey; audioOnly?=false;
154
+ videoUploadsOnCellular?=false;
154
155
  uploadDuringCall?=true; callQuality? }
156
+ // audioOnly (0.3.0+): the camera is never touched — no
157
+ // camera permission, no video captured or uploaded,
158
+ // voice-only calls. Skip NSCameraUsageDescription, skip
159
+ // CrowdPlayVideoView and every camera control.
155
160
  // uploadDuringCall: segments upload while recording (one
156
161
  // at a time, auto-paused when call quality drops); the
157
162
  // post-call wait is ~the final segment + manifests.
@@ -208,6 +213,11 @@ Humans use https://dashboard.crowdplay.ai directly (sign in, download).
208
213
  pauses uploads until next launch (nothing lost).
209
214
  - Participants should wear wired or closed-back headphones (crossTalk
210
215
  warns live when they don't).
216
+ - SIMULATOR detection (engine 0.3.0+): on any Simulator — including CLOUD
217
+ previews — doctor()'s "platform" check fails and join() rejects with a
218
+ clear message instead of a cryptic audio-engine error. Expected, not a
219
+ bug: no microphone exists there. A doctor() run also flips the "health
220
+ check" step on the builder's dashboard checklist automatically.
211
221
  - Slow join or glitchy first seconds of a recording = poor radio
212
222
  environment (congested 2.4 GHz WiFi + Bluetooth share the antenna) or
213
223
  Metro/debugger overhead — NOT an integration bug. Capture self-heals.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "crowdplaysdk",
3
- "version": "0.2.6",
3
+ "version": "0.3.1",
4
4
  "description": "CrowdPlay lossless conversation capture for React Native (iOS). Studio-grade per-participant recording during live video calls, delivered to CrowdPlay automatically.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
package/src/index.ts CHANGED
@@ -45,6 +45,10 @@ export interface CrowdPlayConfig {
45
45
  serverUrl: string;
46
46
  /** From the CrowdPlay dashboard. Also your data-access credential. */
47
47
  appKey: string;
48
+ /** AUDIO-ONLY app: the camera is never touched — no camera permission,
49
+ * no video captured or uploaded, voice-only calls. The audio path is
50
+ * identical to an A/V app. Requires engine 0.3.0+. Default false. */
51
+ audioOnly?: boolean;
48
52
  /** Video (~2 GB/session) rides cellular too when true. Audio + metadata
49
53
  * always upload on any network. Default false. */
50
54
  videoUploadsOnCellular?: boolean;