diff --git a/client/src/data-provider/queries.ts b/client/src/data-provider/queries.ts index b88d0797e9..14b1c91b9c 100644 --- a/client/src/data-provider/queries.ts +++ b/client/src/data-provider/queries.ts @@ -532,3 +532,18 @@ export const useUserTermsQuery = ( ...config, }); }; + +export const useGetWebsocketUrlQuery = ( + config?: UseQueryOptions, +): QueryObserverResult => { + return useQuery( + [QueryKeys.websocketUrl], + () => dataService.getWebsocketUrl(), + { + refetchOnWindowFocus: false, + refetchOnReconnect: false, + refetchOnMount: false, + ...config, + }, + ); +}; diff --git a/client/src/hooks/useWebSocket.ts b/client/src/hooks/useWebSocket.ts index cda4d383ec..37dc86a7c4 100644 --- a/client/src/hooks/useWebSocket.ts +++ b/client/src/hooks/useWebSocket.ts @@ -1,5 +1,5 @@ import { useEffect, useRef, useState } from 'react'; -import { useGetWebsocketUrlQuery } from 'librechat-data-provider/react-query'; +import { useGetWebsocketUrlQuery } from '~/data-provider'; import type { MessagePayload } from '~/common'; import { io, Socket } from 'socket.io-client'; import { EventEmitter } from 'events'; diff --git a/packages/data-provider/src/config.ts b/packages/data-provider/src/config.ts index 3734455e38..712f908dd4 100644 --- a/packages/data-provider/src/config.ts +++ b/packages/data-provider/src/config.ts @@ -1234,6 +1234,10 @@ export enum RealtimeVoiceProviders { * Provider for OpenAI Realtime Voice API */ OPENAI = 'openai', + /** + * Provider for Google Realtime Voice API + */ + GOOGLE = 'google', } /** Enum for app-wide constants */ diff --git a/packages/data-provider/src/react-query/react-query-service.ts b/packages/data-provider/src/react-query/react-query-service.ts index 57e98c3825..03a37d99a7 100644 --- a/packages/data-provider/src/react-query/react-query-service.ts +++ b/packages/data-provider/src/react-query/react-query-service.ts @@ -376,14 +376,3 @@ export const useGetCustomConfigSpeechQuery = ( }, ); }; - -export const useGetWebsocketUrlQuery = ( - config?: UseQueryOptions, -): QueryObserverResult => { - return useQuery([QueryKeys.websocketUrl], () => dataService.getWebsocketUrl(), { - refetchOnWindowFocus: false, - refetchOnReconnect: false, - refetchOnMount: false, - ...config, - }); -}; diff --git a/packages/data-provider/src/types.ts b/packages/data-provider/src/types.ts index 5febb233d9..7df0ff6e5e 100644 --- a/packages/data-provider/src/types.ts +++ b/packages/data-provider/src/types.ts @@ -10,7 +10,8 @@ import type { TConversationTag, TBanner, } from './schemas'; -import { string } from 'zod'; + +export type TOpenAIMessage = OpenAI.Chat.ChatCompletionMessageParam; export * from './schemas';