@hivegpt/hiveai-angular 0.0.573 → 0.0.575
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/bundles/hivegpt-hiveai-angular.umd.js +526 -271
- package/bundles/hivegpt-hiveai-angular.umd.js.map +1 -1
- package/bundles/hivegpt-hiveai-angular.umd.min.js +1 -1
- package/bundles/hivegpt-hiveai-angular.umd.min.js.map +1 -1
- package/esm2015/lib/components/chat-drawer/chat-drawer.component.js +6 -6
- package/esm2015/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.js +85 -54
- package/esm2015/lib/components/voice-agent/services/daily-voice-client.service.js +153 -63
- package/esm2015/lib/components/voice-agent/services/voice-agent.service.js +149 -85
- package/esm2015/lib/components/voice-agent/services/websocket-voice-client.service.js +79 -34
- package/fesm2015/hivegpt-hiveai-angular.js +465 -236
- package/fesm2015/hivegpt-hiveai-angular.js.map +1 -1
- package/hivegpt-hiveai-angular.metadata.json +1 -1
- package/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.d.ts +7 -1
- package/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.d.ts.map +1 -1
- package/lib/components/voice-agent/services/daily-voice-client.service.d.ts +37 -3
- package/lib/components/voice-agent/services/daily-voice-client.service.d.ts.map +1 -1
- package/lib/components/voice-agent/services/voice-agent.service.d.ts +19 -6
- package/lib/components/voice-agent/services/voice-agent.service.d.ts.map +1 -1
- package/lib/components/voice-agent/services/websocket-voice-client.service.d.ts +5 -12
- package/lib/components/voice-agent/services/websocket-voice-client.service.d.ts.map +1 -1
- package/package.json +1 -1
package/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare class VoiceAgentModalComponent implements OnInit, OnDestroy {
|
|
|
5
5
|
voiceAgentService: VoiceAgentService;
|
|
6
6
|
audioAnalyzer: AudioAnalyzerService;
|
|
7
7
|
private injector;
|
|
8
|
+
private platformId;
|
|
8
9
|
close: EventEmitter<void>;
|
|
9
10
|
apiUrl: string;
|
|
10
11
|
token: string;
|
|
@@ -21,7 +22,9 @@ export declare class VoiceAgentModalComponent implements OnInit, OnDestroy {
|
|
|
21
22
|
usersApiUrl: string;
|
|
22
23
|
private injectedConfig;
|
|
23
24
|
private onCloseCallback;
|
|
24
|
-
|
|
25
|
+
/** Held until destroy; passed to Daily so we do not stop/re-acquire (avoids extra prompts on some browsers). */
|
|
26
|
+
private warmMicStream;
|
|
27
|
+
constructor(voiceAgentService: VoiceAgentService, audioAnalyzer: AudioAnalyzerService, injector: Injector, platformId: Object);
|
|
25
28
|
/** Hardcoded voice agent avatar (Nia). */
|
|
26
29
|
readonly displayAvatarUrl = "https://www.jotform.com/uploads/mehmetkarakasli/form_files/1564593667676a8e85f23758.86945537_icon.png";
|
|
27
30
|
callState: CallState;
|
|
@@ -35,8 +38,11 @@ export declare class VoiceAgentModalComponent implements OnInit, OnDestroy {
|
|
|
35
38
|
private hasLeftConnectedOnce;
|
|
36
39
|
private subscriptions;
|
|
37
40
|
ngOnInit(): void;
|
|
41
|
+
private bootstrap;
|
|
38
42
|
ngOnDestroy(): void;
|
|
39
43
|
isConnecting: boolean;
|
|
44
|
+
/** Ensures a live mic stream for this call (re-acquire after Daily stops tracks on hang-up). */
|
|
45
|
+
private ensureMicForCall;
|
|
40
46
|
startCall(): Promise<void>;
|
|
41
47
|
disconnect(): Promise<void>;
|
|
42
48
|
toggleMic(): void;
|
package/lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-agent-modal.component.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"voice-agent-modal.component.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/components/voice-agent-modal/voice-agent-modal.component.ts"],"names":[],"mappings":"AACA,OAAO,EAA4B,MAAM,EAAE,SAAS,EAAU,YAAY,EAAE,QAAQ,EAAe,MAAM,eAAe,CAAC;AAEzH,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAG7E,qBAKa,wBAAyB,YAAW,MAAM,EAAE,SAAS;IAuBvD,iBAAiB,EAAE,iBAAiB;IACpC,aAAa,EAAE,oBAAoB;IAC1C,OAAO,CAAC,QAAQ;IACK,OAAO,CAAC,UAAU;IAzB/B,KAAK,qBAA4B;IAClC,MAAM,EAAG,MAAM,CAAC;IAChB,KAAK,EAAG,MAAM,CAAC;IACf,KAAK,EAAG,MAAM,CAAC;IACf,cAAc,EAAG,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAM;IACpB,UAAU,EAAE,MAAM,CAAM;IACxB,OAAO,EAAE,MAAM,CAAM;IACrB,QAAQ,EAAE,MAAM,CAAM;IACtB,eAAe,EAAE,MAAM,CAAe;IACtC,SAAS,EAAE,MAAM,CAAkB;IACnC,SAAS,EAAE,MAAM,CAAyB;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAM;IAElC,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,eAAe,CAA6B;IAEpD,gHAAgH;IAChH,OAAO,CAAC,aAAa,CAA4B;gBAGxC,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,oBAAoB,EAClC,QAAQ,EAAE,QAAQ,EACG,UAAU,EAAE,MAAM;IAGjD,0CAA0C;IAC1C,QAAQ,CAAC,gBAAgB,2GAA2G;IAEpI,SAAS,EAAE,SAAS,CAAU;IAC9B,UAAU,EAAE,MAAM,CAAM;IACxB,QAAQ,EAAE,MAAM,CAAW;IAC3B,UAAU,EAAE,OAAO,CAAS;IAC5B,cAAc,EAAE,OAAO,CAAS;IAChC,WAAW,EAAE,MAAM,EAAE,CAAM;IAC3B,UAAU,EAAE,OAAO,CAAS;IAE5B,0EAA0E;IAC1E,OAAO,CAAC,oBAAoB,CAAkB;IAE9C,OAAO,CAAC,aAAa,CAAsB;IAE3C,QAAQ,IAAI,IAAI;YAIF,SAAS;IAmEvB,WAAW,IAAI,IAAI;IAQnB,YAAY,EAAE,OAAO,CAAS;IAE9B,gGAAgG;YAClF,gBAAgB;IAaxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB1B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,SAAS,IAAI,IAAI;IAIjB,mEAAmE;IACnE,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAKxC,oCAAoC;IACpC,IAAI,WAAW,IAAI,MAAM,CAQxB;IAED,uDAAuD;IACvD,SAAS,IAAI,IAAI;IAKjB,gDAAgD;IAChD,UAAU,IAAI,IAAI;IAIlB,mFAAmF;IACnF,MAAM,IAAI,IAAI;IAId,OAAO,IAAI,IAAI;CAKhB"}
|
|
@@ -1,29 +1,63 @@
|
|
|
1
1
|
import { NgZone } from '@angular/core';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
+
/**
|
|
4
|
+
* Daily.js WebRTC client for voice agent audio.
|
|
5
|
+
* Responsibilities:
|
|
6
|
+
* - Create and manage Daily CallObject
|
|
7
|
+
* - Join Daily room using room_url
|
|
8
|
+
* - Handle mic capture + speaker playback
|
|
9
|
+
* - Bot speaking detection via AnalyserNode on remote track (instant)
|
|
10
|
+
* - User speaking detection via active-speaker-change
|
|
11
|
+
* - Expose speaking$ (bot speaking), userSpeaking$ (user speaking), micMuted$
|
|
12
|
+
* - Expose localStream$ for waveform visualization (AudioAnalyzerService)
|
|
13
|
+
*/
|
|
3
14
|
export declare class DailyVoiceClientService {
|
|
4
15
|
private ngZone;
|
|
5
16
|
private callObject;
|
|
6
17
|
private localStream;
|
|
7
18
|
private localSessionId;
|
|
19
|
+
/** Explicit playback of remote (bot) audio; required in some browsers. */
|
|
8
20
|
private remoteAudioElement;
|
|
21
|
+
/** AnalyserNode-based remote audio monitor for instant bot speaking detection. */
|
|
9
22
|
private remoteAudioContext;
|
|
10
|
-
|
|
23
|
+
/** Poll interval id (~100ms); named historically when RAF was used. */
|
|
24
|
+
private remoteSpeakingPollId;
|
|
11
25
|
private speakingSubject;
|
|
12
26
|
private userSpeakingSubject;
|
|
13
27
|
private micMutedSubject;
|
|
14
28
|
private localStreamSubject;
|
|
29
|
+
/** True when bot (remote participant) is the active speaker. */
|
|
15
30
|
speaking$: Observable<boolean>;
|
|
31
|
+
/** True when user (local participant) is the active speaker. */
|
|
16
32
|
userSpeaking$: Observable<boolean>;
|
|
33
|
+
/** True when mic is muted. */
|
|
17
34
|
micMuted$: Observable<boolean>;
|
|
18
|
-
|
|
35
|
+
/** Emits local mic stream for waveform visualization. */
|
|
36
|
+
localStream$: Observable<MediaStream | null>;
|
|
19
37
|
constructor(ngZone: NgZone);
|
|
20
|
-
|
|
38
|
+
/**
|
|
39
|
+
* Connect to Daily room. Acquires mic first for waveform, then joins with audio.
|
|
40
|
+
* @param roomUrl Daily room URL (from room_created)
|
|
41
|
+
* @param token Optional meeting token
|
|
42
|
+
* @param existingStream Optional pre-acquired mic (avoids a second getUserMedia / extra prompts on some browsers)
|
|
43
|
+
*/
|
|
44
|
+
connect(roomUrl: string, token?: string, existingStream?: MediaStream): Promise<void>;
|
|
21
45
|
private setupEventHandlers;
|
|
46
|
+
/**
|
|
47
|
+
* Play remote (bot) audio track via a dedicated audio element.
|
|
48
|
+
* Required in many browsers where Daily's internal playback does not output to speakers.
|
|
49
|
+
*/
|
|
22
50
|
private playRemoteTrack;
|
|
51
|
+
/**
|
|
52
|
+
* Monitor remote audio track energy via AnalyserNode.
|
|
53
|
+
* Polls at ~10Hz; sufficient for speaking detection vs ~60fps RAF.
|
|
54
|
+
*/
|
|
23
55
|
private monitorRemoteAudio;
|
|
24
56
|
private stopRemoteAudioMonitor;
|
|
25
57
|
private stopRemoteAudio;
|
|
58
|
+
/** Set mic muted state. */
|
|
26
59
|
setMuted(muted: boolean): void;
|
|
60
|
+
/** Disconnect and cleanup. */
|
|
27
61
|
disconnect(): Promise<void>;
|
|
28
62
|
private cleanup;
|
|
29
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daily-voice-client.service.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/services/daily-voice-client.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAC;AAInD,qBAGa,uBAAuB;
|
|
1
|
+
{"version":3,"file":"daily-voice-client.service.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/services/daily-voice-client.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,MAAM,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAC;AAInD;;;;;;;;;;GAUG;AACH,qBAGa,uBAAuB;IA8BtB,OAAO,CAAC,MAAM;IA7B1B,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,cAAc,CAAuB;IAC7C,0EAA0E;IAC1E,OAAO,CAAC,kBAAkB,CAAiC;IAE3D,kFAAkF;IAClF,OAAO,CAAC,kBAAkB,CAA6B;IACvD,uEAAuE;IACvE,OAAO,CAAC,oBAAoB,CAA+C;IAE3E,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,mBAAmB,CAAuC;IAClE,OAAO,CAAC,eAAe,CAAuC;IAC9D,OAAO,CAAC,kBAAkB,CAAiD;IAE3E,gEAAgE;IAChE,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAuC;IAErE,gEAAgE;IAChE,aAAa,EAAE,UAAU,CAAC,OAAO,CAAC,CAA2C;IAE7E,8BAA8B;IAC9B,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAuC;IAErE,yDAAyD;IACzD,YAAY,EAAE,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,CACH;gBAErB,MAAM,EAAE,MAAM;IAElC;;;;;OAKG;IACG,OAAO,CACX,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,WAAW,GAC3B,OAAO,CAAC,IAAI,CAAC;IAqDhB,OAAO,CAAC,kBAAkB;IAuD1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAwCvB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAuD1B,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,eAAe;IAUvB,2BAA2B;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAM9B,8BAA8B;IACxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAajC,OAAO,CAAC,OAAO;CAiBhB"}
|
|
@@ -9,11 +9,23 @@ export interface TranscriptData {
|
|
|
9
9
|
text: string;
|
|
10
10
|
final: boolean;
|
|
11
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Voice agent orchestrator. Coordinates WebSocket (signaling) and Daily.js (WebRTC audio).
|
|
14
|
+
*
|
|
15
|
+
* CRITICAL: This service must NEVER use Socket.IO or ngx-socket-io. Voice flow uses only:
|
|
16
|
+
* - Native WebSocket (WebSocketVoiceClientService) for signaling (room_created, transcripts)
|
|
17
|
+
* - Daily.js (DailyVoiceClientService) for WebRTC audio. Audio does NOT flow over WebSocket.
|
|
18
|
+
*
|
|
19
|
+
* - Maintains callState, statusText, duration, isMicMuted, isUserSpeaking, audioLevels
|
|
20
|
+
* - Uses WebSocket for room_created and transcripts only (no audio)
|
|
21
|
+
* - Uses Daily.js for all audio, mic, and real-time speaking detection
|
|
22
|
+
*/
|
|
12
23
|
export declare class VoiceAgentService implements OnDestroy {
|
|
13
24
|
private audioAnalyzer;
|
|
14
25
|
private wsClient;
|
|
15
26
|
private dailyClient;
|
|
16
27
|
private platformTokenRefresh;
|
|
28
|
+
/** `Object` not `object` — ngc metadata collection rejects the `object` type in DI params. */
|
|
17
29
|
private platformId;
|
|
18
30
|
private callStateSubject;
|
|
19
31
|
private statusTextSubject;
|
|
@@ -26,6 +38,8 @@ export declare class VoiceAgentService implements OnDestroy {
|
|
|
26
38
|
private callStartTime;
|
|
27
39
|
private durationInterval;
|
|
28
40
|
private subscriptions;
|
|
41
|
+
/** Per-call only; cleared on disconnect / reset / new room so handlers do not stack. */
|
|
42
|
+
private callSubscriptions;
|
|
29
43
|
private destroy$;
|
|
30
44
|
callState$: Observable<CallState>;
|
|
31
45
|
statusText$: Observable<string>;
|
|
@@ -35,14 +49,13 @@ export declare class VoiceAgentService implements OnDestroy {
|
|
|
35
49
|
audioLevels$: Observable<number[]>;
|
|
36
50
|
userTranscript$: Observable<TranscriptData>;
|
|
37
51
|
botTranscript$: Observable<string>;
|
|
38
|
-
constructor(audioAnalyzer: AudioAnalyzerService, wsClient: WebSocketVoiceClientService, dailyClient: DailyVoiceClientService, platformTokenRefresh: PlatformTokenRefreshService,
|
|
52
|
+
constructor(audioAnalyzer: AudioAnalyzerService, wsClient: WebSocketVoiceClientService, dailyClient: DailyVoiceClientService, platformTokenRefresh: PlatformTokenRefreshService,
|
|
53
|
+
/** `Object` not `object` — ngc metadata collection rejects the `object` type in DI params. */
|
|
54
|
+
platformId: Object);
|
|
39
55
|
ngOnDestroy(): void;
|
|
40
|
-
/**
|
|
41
|
-
* Tear down transports and reset UI state so a new `connect()` can run.
|
|
42
|
-
* `connect()` only proceeds from `idle`; use this after `ended` or when reopening the modal.
|
|
43
|
-
*/
|
|
56
|
+
/** Reset to idle state (e.g. when modal opens so user can click Start Call). */
|
|
44
57
|
resetToIdle(): void;
|
|
45
|
-
connect(apiUrl: string, token: string, botId: string, conversationId: string, apiKey: string, eventToken: string, eventId: string, eventUrl: string, domainAuthority: string, usersApiUrl?: string): Promise<void>;
|
|
58
|
+
connect(apiUrl: string, token: string, botId: string, conversationId: string, apiKey: string, eventToken: string, eventId: string, eventUrl: string, domainAuthority: string, usersApiUrl?: string, existingMicStream?: MediaStream | null): Promise<void>;
|
|
46
59
|
private onRoomCreated;
|
|
47
60
|
disconnect(): Promise<void>;
|
|
48
61
|
toggleMic(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voice-agent.service.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/services/voice-agent.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,SAAS,EAAe,MAAM,eAAe,CAAC;AAC3E,OAAO,EAGL,UAAU,EAGX,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,oBAAY,SAAS,GACjB,MAAM,GACN,YAAY,GACZ,WAAW,GACX,WAAW,GACX,SAAS,GACT,OAAO,CAAC;AAEZ,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,qBAGa,iBAAkB,YAAW,SAAS;
|
|
1
|
+
{"version":3,"file":"voice-agent.service.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/services/voice-agent.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAsB,SAAS,EAAe,MAAM,eAAe,CAAC;AAC3E,OAAO,EAGL,UAAU,EAGX,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,2BAA2B,EAAE,MAAM,kDAAkD,CAAC;AAC/F,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,oBAAY,SAAS,GACjB,MAAM,GACN,YAAY,GACZ,WAAW,GACX,WAAW,GACX,SAAS,GACT,OAAO,CAAC;AAEZ,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;;GAUG;AACH,qBAGa,iBAAkB,YAAW,SAAS;IA8B/C,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,oBAAoB;IAC5B,8FAA8F;IACzE,OAAO,CAAC,UAAU;IAlCzC,OAAO,CAAC,gBAAgB,CAA0C;IAClE,OAAO,CAAC,iBAAiB,CAAmC;IAC5D,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,iBAAiB,CAAuC;IAChE,OAAO,CAAC,qBAAqB,CAAuC;IACpE,OAAO,CAAC,kBAAkB,CAAqC;IAC/D,OAAO,CAAC,qBAAqB,CAAiC;IAC9D,OAAO,CAAC,oBAAoB,CAAyB;IAErD,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,gBAAgB,CAA+C;IAEvE,OAAO,CAAC,aAAa,CAAsB;IAC3C,wFAAwF;IACxF,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAuB;IAEvC,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAwC;IACzE,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,CAAyC;IACxE,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,CAAuC;IACpE,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,CAAyC;IACzE,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,CACQ;IAC5C,YAAY,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAA0C;IAC5E,eAAe,EAAE,UAAU,CAAC,cAAc,CAAC,CACC;IAC5C,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,CAA4C;gBAGpE,aAAa,EAAE,oBAAoB,EACnC,QAAQ,EAAE,2BAA2B,EACrC,WAAW,EAAE,uBAAuB,EACpC,oBAAoB,EAAE,2BAA2B;IACzD,8FAA8F;IACjE,UAAU,EAAE,MAAM;IAuBjD,WAAW,IAAI,IAAI;IAMnB,gFAAgF;IAChF,WAAW,IAAI,IAAI;IAcb,OAAO,CACX,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EACvB,WAAW,CAAC,EAAE,MAAM,EACpB,iBAAiB,CAAC,EAAE,WAAW,GAAG,IAAI,GACrC,OAAO,CAAC,IAAI,CAAC;YA6GF,aAAa;IA6DrB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAcjC,SAAS,IAAI,IAAI;IAKjB,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,iBAAiB;CAM1B"}
|
|
@@ -18,16 +18,6 @@ export interface TranscriptData {
|
|
|
18
18
|
text: string;
|
|
19
19
|
final: boolean;
|
|
20
20
|
}
|
|
21
|
-
/**
|
|
22
|
-
* WebSocket-only client for voice agent signaling.
|
|
23
|
-
* CRITICAL: Uses native WebSocket only. NO Socket.IO, NO ngx-socket-io.
|
|
24
|
-
*
|
|
25
|
-
* Responsibilities:
|
|
26
|
-
* - Connect to ws_url (from POST /ai/ask-voice response)
|
|
27
|
-
* - Parse JSON messages (room_created, user_transcript, bot_transcript)
|
|
28
|
-
* - Emit roomCreated$, userTranscript$, botTranscript$
|
|
29
|
-
* - NO audio logic, NO mic logic. Audio is handled by Daily.js (WebRTC).
|
|
30
|
-
*/
|
|
31
21
|
export declare class WebSocketVoiceClientService {
|
|
32
22
|
private ws;
|
|
33
23
|
private roomCreatedSubject;
|
|
@@ -39,8 +29,11 @@ export declare class WebSocketVoiceClientService {
|
|
|
39
29
|
userTranscript$: Observable<TranscriptData>;
|
|
40
30
|
/** Emits bot transcript updates. */
|
|
41
31
|
botTranscript$: Observable<string>;
|
|
42
|
-
/**
|
|
43
|
-
|
|
32
|
+
/**
|
|
33
|
+
* Connect to signaling WebSocket. No audio over this connection.
|
|
34
|
+
* Resolves when the socket is open; rejects if the connection fails.
|
|
35
|
+
*/
|
|
36
|
+
connect(wsUrl: string): Promise<void>;
|
|
44
37
|
/** Disconnect and cleanup. */
|
|
45
38
|
disconnect(): void;
|
|
46
39
|
/** Whether the WebSocket is open. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-voice-client.service.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/services/websocket-voice-client.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAW,MAAM,MAAM,CAAC;AAE3C,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,oBAAY,SAAS,GACjB,oBAAoB,GACpB,uBAAuB,GACvB,sBAAsB,CAAC;AAE3B,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;
|
|
1
|
+
{"version":3,"file":"websocket-voice-client.service.d.ts","sourceRoot":"/Users/rohitthakur/hive-gpt/HiveAI-Packages/Angular/projects/hivegpt/eventsgpt-angular/src/","sources":["lib/components/voice-agent/services/websocket-voice-client.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAW,MAAM,MAAM,CAAC;AAE3C,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,oBAAY,SAAS,GACjB,oBAAoB,GACpB,uBAAuB,GACvB,sBAAsB,CAAC;AAE3B,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAcD,qBAGa,2BAA2B;IACtC,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,kBAAkB,CAAyB;IACnD,OAAO,CAAC,qBAAqB,CAAiC;IAC9D,OAAO,CAAC,oBAAoB,CAAyB;IAErD,sDAAsD;IACtD,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,CAA0C;IAE1E,qCAAqC;IACrC,eAAe,EAAE,UAAU,CAAC,cAAc,CAAC,CACC;IAE5C,oCAAoC;IACpC,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,CACS;IAE3C;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuFrC,8BAA8B;IAC9B,UAAU,IAAI,IAAI;IAOlB,qCAAqC;IACrC,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF"}
|