@mentra/bluetooth-sdk 0.1.7 → 0.1.8
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 +11 -9
- package/android/.project +28 -0
- package/android/build.gradle +3 -0
- package/android/lc3Lib/.project +28 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/BluetoothSdkModule.kt +15 -3
- package/android/src/main/java/com/mentra/bluetoothsdk/Bridge.kt +26 -1
- package/android/src/main/java/com/mentra/bluetoothsdk/DeviceManager.kt +4 -2
- package/android/src/main/java/com/mentra/bluetoothsdk/MentraBluetoothSdk.kt +136 -4
- package/android/src/main/java/com/mentra/bluetoothsdk/camera/CameraModels.kt +40 -3
- package/android/src/main/java/com/mentra/bluetoothsdk/controllers/ControllerManager.kt +1 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/controllers/R1.kt +1 -1
- package/android/src/main/java/com/mentra/bluetoothsdk/debug/BleTraceLogger.kt +149 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/events/BluetoothEvents.kt +1 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/photoreceiver/LocalPhotoUploadServer.kt +297 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/photoreceiver/MentraPhotoReceiverModule.kt +120 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/services/Foreground.kt +13 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/G1.java +1 -1
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/G2.kt +1 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/Mach1.java +1 -1
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/MentraLive.java +104 -21
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/MentraNex.kt +1 -1
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/SGCManager.kt +1 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/sgcs/Simulated.kt +1 -0
- package/android/src/main/java/com/mentra/bluetoothsdk/streaming/StreamModels.kt +128 -3
- package/android/src/main/java/com/mentra/bluetoothsdk/utils/MessageChunkReassembler.java +105 -0
- package/build/BluetoothSdk.types.d.ts +66 -29
- package/build/BluetoothSdk.types.d.ts.map +1 -1
- package/build/BluetoothSdk.types.js +3 -0
- package/build/BluetoothSdk.types.js.map +1 -1
- package/build/_private/BluetoothSdkModule.d.ts +2 -1
- package/build/_private/BluetoothSdkModule.d.ts.map +1 -1
- package/build/_private/BluetoothSdkModule.js +24 -7
- package/build/_private/BluetoothSdkModule.js.map +1 -1
- package/build/index.d.ts +2 -2
- package/build/index.d.ts.map +1 -1
- package/build/index.js +2 -3
- package/build/index.js.map +1 -1
- package/build/photo-receiver/MentraPhotoReceiver.types.d.ts +18 -0
- package/build/photo-receiver/MentraPhotoReceiver.types.d.ts.map +1 -0
- package/build/photo-receiver/MentraPhotoReceiver.types.js +2 -0
- package/build/photo-receiver/MentraPhotoReceiver.types.js.map +1 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.d.ts +10 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.d.ts.map +1 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.js +3 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.js.map +1 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.web.d.ts +10 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.web.d.ts.map +1 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.web.js +12 -0
- package/build/photo-receiver/MentraPhotoReceiverModule.web.js.map +1 -0
- package/build/photo-receiver/index.d.ts +3 -0
- package/build/photo-receiver/index.d.ts.map +1 -0
- package/build/photo-receiver/index.js +3 -0
- package/build/photo-receiver/index.js.map +1 -0
- package/expo-module.config.json +5 -2
- package/ios/BluetoothSdkModule.swift +19 -3
- package/ios/LocalPhotoUploadServer.swift +411 -0
- package/ios/MentraBluetoothSDK.podspec +8 -2
- package/ios/MentraPhotoReceiverModule.swift +147 -0
- package/ios/Source/Bridge.swift +20 -1
- package/ios/Source/Camera/CameraModels.swift +64 -11
- package/ios/Source/DeviceManager.swift +6 -4
- package/ios/Source/Events/BluetoothEvents.swift +3 -0
- package/ios/Source/MentraBluetoothSDK.swift +111 -5
- package/ios/Source/Streaming/StreamModels.swift +234 -40
- package/ios/Source/controllers/ControllerManager.swift +1 -1
- package/ios/Source/controllers/R1.swift +9 -3
- package/ios/Source/sgcs/G1.swift +5 -4
- package/ios/Source/sgcs/G2.swift +4 -4
- package/ios/Source/sgcs/Mach1.swift +1 -1
- package/ios/Source/sgcs/MentraLive.swift +76 -12
- package/ios/Source/sgcs/MentraNex.swift +1 -1
- package/ios/Source/sgcs/SGCManager.swift +1 -1
- package/ios/Source/sgcs/Simulated.swift +1 -1
- package/ios/Source/utils/MessageChunkReassembler.swift +89 -0
- package/package.json +6 -1
- package/src/BluetoothSdk.types.ts +90 -35
- package/src/_private/BluetoothSdkModule.ts +38 -8
- package/src/index.ts +9 -4
- package/src/photo-receiver/MentraPhotoReceiver.types.ts +20 -0
- package/src/photo-receiver/MentraPhotoReceiverModule.ts +14 -0
- package/src/photo-receiver/MentraPhotoReceiverModule.web.ts +20 -0
- package/src/photo-receiver/index.ts +2 -0
package/src/index.ts
CHANGED
|
@@ -21,6 +21,7 @@ const PUBLIC_EVENT_NAMES = new Set<BluetoothSdkEventName>([
|
|
|
21
21
|
"hotspot_status_change",
|
|
22
22
|
"hotspot_error",
|
|
23
23
|
"photo_response",
|
|
24
|
+
"photo_status",
|
|
24
25
|
"gallery_status",
|
|
25
26
|
"compatible_glasses_search_stop",
|
|
26
27
|
"swipe_volume_status",
|
|
@@ -33,7 +34,6 @@ const PUBLIC_EVENT_NAMES = new Set<BluetoothSdkEventName>([
|
|
|
33
34
|
"mic_pcm",
|
|
34
35
|
"mic_lc3",
|
|
35
36
|
"stream_status",
|
|
36
|
-
"keep_alive_ack",
|
|
37
37
|
])
|
|
38
38
|
|
|
39
39
|
const addListener: BluetoothSdkPublicModule["addListener"] = (eventName, listener) => {
|
|
@@ -84,7 +84,6 @@ export const BluetoothSdk: BluetoothSdkPublicModule = Object.freeze({
|
|
|
84
84
|
stopVideoRecording: PrivateBluetoothSdkModule.stopVideoRecording.bind(PrivateBluetoothSdkModule),
|
|
85
85
|
startStream: PrivateBluetoothSdkModule.startStream.bind(PrivateBluetoothSdkModule),
|
|
86
86
|
stopStream: PrivateBluetoothSdkModule.stopStream.bind(PrivateBluetoothSdkModule),
|
|
87
|
-
keepStreamAlive: PrivateBluetoothSdkModule.keepStreamAlive.bind(PrivateBluetoothSdkModule),
|
|
88
87
|
setMicState: PrivateBluetoothSdkModule.setMicState.bind(PrivateBluetoothSdkModule),
|
|
89
88
|
setPreferredMic: PrivateBluetoothSdkModule.setPreferredMic.bind(PrivateBluetoothSdkModule),
|
|
90
89
|
setOwnAppAudioPlaying: PrivateBluetoothSdkModule.setOwnAppAudioPlaying.bind(PrivateBluetoothSdkModule),
|
|
@@ -97,6 +96,9 @@ export const BluetoothSdk: BluetoothSdkPublicModule = Object.freeze({
|
|
|
97
96
|
export default BluetoothSdk
|
|
98
97
|
|
|
99
98
|
export {
|
|
99
|
+
CAMERA_FOV_DEFAULT,
|
|
100
|
+
CAMERA_FOV_MAX,
|
|
101
|
+
CAMERA_FOV_MIN,
|
|
100
102
|
DeviceModels,
|
|
101
103
|
isBusyGlassesConnectionStatus,
|
|
102
104
|
isConnectedGlassesConnectionStatus,
|
|
@@ -119,6 +121,7 @@ export type {
|
|
|
119
121
|
ButtonPhotoSize,
|
|
120
122
|
ButtonPressEvent,
|
|
121
123
|
CameraFov,
|
|
124
|
+
CameraRoiPosition,
|
|
122
125
|
CompatibleGlassesSearchStopEvent,
|
|
123
126
|
ConnectOptions,
|
|
124
127
|
ConnectedGlassesConnectionStatus,
|
|
@@ -135,7 +138,6 @@ export type {
|
|
|
135
138
|
HotspotErrorEvent,
|
|
136
139
|
HotspotStatus,
|
|
137
140
|
HotspotStatusChangeEvent,
|
|
138
|
-
KeepAliveAckEvent,
|
|
139
141
|
LocalTranscriptionEvent,
|
|
140
142
|
LogEvent,
|
|
141
143
|
MicLc3Event,
|
|
@@ -143,9 +145,12 @@ export type {
|
|
|
143
145
|
MicPcmEvent,
|
|
144
146
|
MicPreference,
|
|
145
147
|
PairFailureEvent,
|
|
148
|
+
PhotoResolvedConfig,
|
|
146
149
|
PhotoCompression,
|
|
147
150
|
PhotoResponseEvent,
|
|
148
151
|
PhotoSize,
|
|
152
|
+
PhotoStatusEvent,
|
|
153
|
+
PhotoStatusState,
|
|
149
154
|
RgbLedAction,
|
|
150
155
|
RgbLedColor,
|
|
151
156
|
RgbLedControlResponseEvent,
|
|
@@ -154,7 +159,7 @@ export type {
|
|
|
154
159
|
ScanResultsCallback,
|
|
155
160
|
SpeakingStatusEvent,
|
|
156
161
|
StreamAudioConfig,
|
|
157
|
-
|
|
162
|
+
StreamResolvedConfig,
|
|
158
163
|
StreamStartRequest,
|
|
159
164
|
StreamStatusEvent,
|
|
160
165
|
StreamStatusLifecycleState,
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export type PhotoReceiverUploadEvent = {
|
|
2
|
+
byteCount: number
|
|
3
|
+
fileUri: string
|
|
4
|
+
requestId?: string | null
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export type PhotoReceiverStatusEvent = {
|
|
8
|
+
message: string
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export type PhotoReceiverResult = {
|
|
12
|
+
host: string
|
|
13
|
+
port: number
|
|
14
|
+
uploadUrl: string
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export type MentraPhotoReceiverModuleEvents = {
|
|
18
|
+
photoUpload: (event: PhotoReceiverUploadEvent) => void
|
|
19
|
+
receiverStatus: (event: PhotoReceiverStatusEvent) => void
|
|
20
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import {NativeModule, requireNativeModule} from "expo"
|
|
2
|
+
|
|
3
|
+
import type {
|
|
4
|
+
MentraPhotoReceiverModuleEvents,
|
|
5
|
+
PhotoReceiverResult,
|
|
6
|
+
} from "./MentraPhotoReceiver.types"
|
|
7
|
+
|
|
8
|
+
declare class MentraPhotoReceiverModule extends NativeModule<MentraPhotoReceiverModuleEvents> {
|
|
9
|
+
isSupported(): Promise<boolean>
|
|
10
|
+
startPhotoReceiver(): Promise<PhotoReceiverResult>
|
|
11
|
+
stopPhotoReceiver(): Promise<void>
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export default requireNativeModule<MentraPhotoReceiverModule>("MentraPhotoReceiver")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {NativeModule, registerWebModule} from "expo"
|
|
2
|
+
|
|
3
|
+
import type {
|
|
4
|
+
MentraPhotoReceiverModuleEvents,
|
|
5
|
+
PhotoReceiverResult,
|
|
6
|
+
} from "./MentraPhotoReceiver.types"
|
|
7
|
+
|
|
8
|
+
class MentraPhotoReceiverModule extends NativeModule<MentraPhotoReceiverModuleEvents> {
|
|
9
|
+
async isSupported(): Promise<boolean> {
|
|
10
|
+
return false
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
async startPhotoReceiver(): Promise<PhotoReceiverResult> {
|
|
14
|
+
throw new Error("The photo receiver is only available in native apps.")
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async stopPhotoReceiver(): Promise<void> {}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export default registerWebModule(MentraPhotoReceiverModule, "MentraPhotoReceiver")
|