@volley/recognition-client-sdk 0.1.707 → 0.1.767
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/dist/browser.bundled.d.ts +90 -1
- package/dist/config-builder.d.ts +6 -1
- package/dist/config-builder.d.ts.map +1 -1
- package/dist/index.bundled.d.ts +145 -48
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +40 -4
- package/dist/index.js.map +3 -3
- package/dist/recog-client-sdk.browser.js +30 -4
- package/dist/recog-client-sdk.browser.js.map +3 -3
- package/dist/recognition-client.d.ts.map +1 -1
- package/dist/recognition-client.types.d.ts +7 -1
- package/dist/recognition-client.types.d.ts.map +1 -1
- package/dist/utils/message-handler.d.ts +2 -1
- package/dist/utils/message-handler.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/config-builder.ts +11 -0
- package/src/index.ts +2 -0
- package/src/recognition-client.ts +9 -0
- package/src/recognition-client.types.ts +9 -0
- package/src/utils/message-handler.ts +14 -3
- package/src/utils/url-builder.spec.ts +43 -0
|
@@ -22,6 +22,8 @@ declare enum RecognitionProvider {
|
|
|
22
22
|
CARTESIA = "cartesia",
|
|
23
23
|
DASHSCOPE = "dashscope",
|
|
24
24
|
BEDROCK = "bedrock",
|
|
25
|
+
INWORLD_STT = "inworld-stt",
|
|
26
|
+
AWS_TRANSCRIBE = "aws-transcribe",
|
|
25
27
|
TEST_ASR_PROVIDER_QUOTA = "test-asr-provider-quota",
|
|
26
28
|
TEST_ASR_STREAMING = "test-asr-streaming"
|
|
27
29
|
}
|
|
@@ -129,6 +131,21 @@ declare enum BedrockModel {
|
|
|
129
131
|
VOXTRAL_MINI_3B_2507 = "mistral.voxtral-mini-3b-2507",
|
|
130
132
|
VOXTRAL_SMALL_24B_2507 = "mistral.voxtral-small-24b-2507"
|
|
131
133
|
}
|
|
134
|
+
/**
|
|
135
|
+
* Inworld AI STT models
|
|
136
|
+
* @see https://docs.inworld.ai/stt/overview
|
|
137
|
+
*/
|
|
138
|
+
declare enum InworldSttModel {
|
|
139
|
+
INWORLD_STT_1 = "inworld/inworld-stt-1"
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* AWS Transcribe streaming model
|
|
143
|
+
* AWS Transcribe uses a single default streaming model
|
|
144
|
+
* @see https://docs.aws.amazon.com/transcribe/latest/dg/streaming.html
|
|
145
|
+
*/
|
|
146
|
+
declare enum AwsTranscribeModel {
|
|
147
|
+
DEFAULT = "default"
|
|
148
|
+
}
|
|
132
149
|
/**
|
|
133
150
|
* Self-serve vLLM batch transcription models
|
|
134
151
|
* Backed by recognition-inference / RunPod `/transcribe`
|
|
@@ -139,7 +156,7 @@ declare enum SelfServeVllmModel {
|
|
|
139
156
|
/**
|
|
140
157
|
* Type alias for any model from any provider
|
|
141
158
|
*/
|
|
142
|
-
type RecognitionModel = DeepgramModel | GoogleModel | FireworksModel | GladiaModel | ElevenLabsModel | OpenAIRealtimeModel | MistralVoxtralModel | CartesiaModel | DashScopeModel | SelfServeVllmModel | BedrockModel | string;
|
|
159
|
+
type RecognitionModel = DeepgramModel | GoogleModel | FireworksModel | GladiaModel | ElevenLabsModel | OpenAIRealtimeModel | MistralVoxtralModel | CartesiaModel | DashScopeModel | InworldSttModel | SelfServeVllmModel | BedrockModel | AwsTranscribeModel | string;
|
|
143
160
|
|
|
144
161
|
/**
|
|
145
162
|
* Audio encoding types
|
|
@@ -594,6 +611,61 @@ declare const SessionConfiguredSchemaV1: z.ZodObject<{
|
|
|
594
611
|
providerConfig?: string | undefined;
|
|
595
612
|
}>;
|
|
596
613
|
type SessionConfiguredV1 = z.infer<typeof SessionConfiguredSchemaV1>;
|
|
614
|
+
/**
|
|
615
|
+
* Audio metrics result V1 - contains audio quality metrics
|
|
616
|
+
* Extracted from raw PCM audio without AI/ML, pure signal analysis
|
|
617
|
+
* Used to detect mic issues (muted, low gain, clipping) and audio quality
|
|
618
|
+
*/
|
|
619
|
+
declare const AudioMetricsResultSchemaV1: z.ZodObject<{
|
|
620
|
+
type: z.ZodLiteral<RecognitionResultTypeV1.AUDIO_METRICS>;
|
|
621
|
+
valid: z.ZodBoolean;
|
|
622
|
+
audioBeginMs: z.ZodNumber;
|
|
623
|
+
audioEndMs: z.ZodNumber;
|
|
624
|
+
maxVolume: z.ZodNumber;
|
|
625
|
+
minVolume: z.ZodNumber;
|
|
626
|
+
avgVolume: z.ZodNumber;
|
|
627
|
+
peakVolumeDb: z.ZodNullable<z.ZodNumber>;
|
|
628
|
+
avgVolumeDb: z.ZodNullable<z.ZodNumber>;
|
|
629
|
+
silenceRatio: z.ZodNumber;
|
|
630
|
+
clippingRatio: z.ZodNumber;
|
|
631
|
+
snrEstimate: z.ZodNullable<z.ZodNumber>;
|
|
632
|
+
lastNonSilenceMs: z.ZodNumber;
|
|
633
|
+
timestamp: z.ZodString;
|
|
634
|
+
isFinal: z.ZodOptional<z.ZodBoolean>;
|
|
635
|
+
}, "strip", z.ZodTypeAny, {
|
|
636
|
+
valid: boolean;
|
|
637
|
+
type: RecognitionResultTypeV1.AUDIO_METRICS;
|
|
638
|
+
audioBeginMs: number;
|
|
639
|
+
audioEndMs: number;
|
|
640
|
+
maxVolume: number;
|
|
641
|
+
minVolume: number;
|
|
642
|
+
avgVolume: number;
|
|
643
|
+
silenceRatio: number;
|
|
644
|
+
clippingRatio: number;
|
|
645
|
+
snrEstimate: number | null;
|
|
646
|
+
lastNonSilenceMs: number;
|
|
647
|
+
timestamp: string;
|
|
648
|
+
peakVolumeDb: number | null;
|
|
649
|
+
avgVolumeDb: number | null;
|
|
650
|
+
isFinal?: boolean | undefined;
|
|
651
|
+
}, {
|
|
652
|
+
valid: boolean;
|
|
653
|
+
type: RecognitionResultTypeV1.AUDIO_METRICS;
|
|
654
|
+
audioBeginMs: number;
|
|
655
|
+
audioEndMs: number;
|
|
656
|
+
maxVolume: number;
|
|
657
|
+
minVolume: number;
|
|
658
|
+
avgVolume: number;
|
|
659
|
+
silenceRatio: number;
|
|
660
|
+
clippingRatio: number;
|
|
661
|
+
snrEstimate: number | null;
|
|
662
|
+
lastNonSilenceMs: number;
|
|
663
|
+
timestamp: string;
|
|
664
|
+
peakVolumeDb: number | null;
|
|
665
|
+
avgVolumeDb: number | null;
|
|
666
|
+
isFinal?: boolean | undefined;
|
|
667
|
+
}>;
|
|
668
|
+
type AudioMetricsResultV1 = z.infer<typeof AudioMetricsResultSchemaV1>;
|
|
597
669
|
|
|
598
670
|
/**
|
|
599
671
|
* Recognition Context Types V1
|
|
@@ -866,6 +938,17 @@ interface ASRRequestConfig {
|
|
|
866
938
|
* ```
|
|
867
939
|
*/
|
|
868
940
|
providerOptions?: Record<string, any>;
|
|
941
|
+
/**
|
|
942
|
+
* Streaming audio metrics opt-in interval (ms).
|
|
943
|
+
*
|
|
944
|
+
* When set to a positive number, server forwards AudioMetrics results to the
|
|
945
|
+
* client over the WebSocket, throttled so at most one result is sent per
|
|
946
|
+
* `audioMetricsIntervalMs`. Undefined / 0 disables streaming audio metrics
|
|
947
|
+
* (final metrics still embedded in the Metadata result).
|
|
948
|
+
*
|
|
949
|
+
* @example 500
|
|
950
|
+
*/
|
|
951
|
+
audioMetricsIntervalMs?: number;
|
|
869
952
|
/**
|
|
870
953
|
* Optional fallback ASR configurations
|
|
871
954
|
*
|
|
@@ -1166,6 +1249,12 @@ interface IRecognitionClientConfig {
|
|
|
1166
1249
|
onFunctionCall?: (result: FunctionCallResultV1) => void;
|
|
1167
1250
|
/** Callback when metadata is received. Only once after transcription is complete.*/
|
|
1168
1251
|
onMetadata?: (metadata: MetadataResultV1) => void;
|
|
1252
|
+
/**
|
|
1253
|
+
* Callback when streaming audio metrics arrive (volume, silence ratio, clipping, SNR, etc.).
|
|
1254
|
+
* Only fires when `asrRequestConfig.audioMetricsIntervalMs > 0`.
|
|
1255
|
+
* Final metrics still arrive embedded in `onMetadata.audioMetrics`.
|
|
1256
|
+
*/
|
|
1257
|
+
onAudioMetrics?: (metrics: AudioMetricsResultV1) => void;
|
|
1169
1258
|
/** Callback when session is configured with actual ASR provider/model (optional) */
|
|
1170
1259
|
onSessionConfigured?: (config: SessionConfiguredV1) => void;
|
|
1171
1260
|
/** Callback when error occurs */
|
package/dist/config-builder.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Simple builder pattern for RealTimeTwoWayWebSocketRecognitionClientConfig
|
|
5
5
|
*/
|
|
6
6
|
import type { RealTimeTwoWayWebSocketRecognitionClientConfig, RecognitionCallbackUrl } from './recognition-client.types.js';
|
|
7
|
-
import type { ASRRequestConfig, GameContextV1, TranscriptionResultV1, MetadataResultV1, SessionConfiguredV1, ErrorResultV1, Stage } from '@recog/shared-types';
|
|
7
|
+
import type { ASRRequestConfig, GameContextV1, TranscriptionResultV1, MetadataResultV1, SessionConfiguredV1, AudioMetricsResultV1, ErrorResultV1, Stage } from '@recog/shared-types';
|
|
8
8
|
/**
|
|
9
9
|
* Builder for RealTimeTwoWayWebSocketRecognitionClientConfig
|
|
10
10
|
*
|
|
@@ -107,6 +107,11 @@ export declare class ConfigBuilder {
|
|
|
107
107
|
* Set session configured callback (optional)
|
|
108
108
|
*/
|
|
109
109
|
onSessionConfigured(callback: (config: SessionConfiguredV1) => void): this;
|
|
110
|
+
/**
|
|
111
|
+
* Set streaming audio metrics callback (optional).
|
|
112
|
+
* Only fires when `asrRequestConfig.audioMetricsIntervalMs > 0`.
|
|
113
|
+
*/
|
|
114
|
+
onAudioMetrics(callback: (metrics: AudioMetricsResultV1) => void): this;
|
|
110
115
|
/**
|
|
111
116
|
* Set error callback
|
|
112
117
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../src/config-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,8CAA8C,EAC9C,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACb,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,KAAK,EACN,MAAM,qBAAqB,CAAC;AAE7B;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAA+D;IAE7E;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKtB;;;;;;;;OAQG;IACH,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,IAAI;IAKlC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAKhD;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAKzC;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAKxB;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAKlC;;OAEG;IACH,YAAY,CAAC,IAAI,EAAE,sBAAsB,EAAE,GAAG,IAAI;IAKlD;;OAEG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAKxB;;OAEG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAK/B;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAK1B;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAKlC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKhC;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI;IAKvD;;;OAGG;IACH,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK7C;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,GAAG,IAAI;IAKrE;;OAEG;IACH,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,GAAG,IAAI;IAKhE;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,GAAG,IAAI;IAK1E;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,IAAI;IAKvD;;OAEG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAKvC;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAKtE;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKlC;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKjC;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3C;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAKrC;;OAEG;
|
|
1
|
+
{"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../src/config-builder.ts"],"names":[],"mappings":"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"}
|