diff --git a/src/api/types.ts b/src/api/types.ts index 6a17a20..ee50ad0 100644 --- a/src/api/types.ts +++ b/src/api/types.ts @@ -419,6 +419,7 @@ export interface SpeechCredential { custom_stt_endpoint: null | string; client_id: null | string; client_secret: null | string; + client_key: null | string; secret: null | string; nuance_tts_uri: null | string; nuance_stt_uri: null | string; diff --git a/src/containers/internal/views/applications/speech-selection.tsx b/src/containers/internal/views/applications/speech-selection.tsx index d23bef5..49c7a36 100644 --- a/src/containers/internal/views/applications/speech-selection.tsx +++ b/src/containers/internal/views/applications/speech-selection.tsx @@ -38,6 +38,7 @@ import { VENDOR_INWORLD, VENDOR_DEEPGRAM_FLUX, VENDOR_RESEMBLE, + VENDOR_HOUNDIFY, } from "src/vendor"; import { LabelOptions, @@ -434,6 +435,7 @@ export const SpeechProviderSelection = ({ vendor.value !== VENDOR_CUSTOM && vendor.value !== VENDOR_OPENAI && vendor.value !== VENDOR_DEEPGRAM_FLUX && + vendor.value !== VENDOR_HOUNDIFY && vendor.value !== VENDOR_COBALT, )} onChange={(e) => { diff --git a/src/containers/internal/views/speech-services/form.tsx b/src/containers/internal/views/speech-services/form.tsx index 97dd2d8..076e1fa 100644 --- a/src/containers/internal/views/speech-services/form.tsx +++ b/src/containers/internal/views/speech-services/form.tsx @@ -55,6 +55,7 @@ import { VENDOR_INWORLD, VENDOR_DEEPGRAM_FLUX, VENDOR_RESEMBLE, + VENDOR_HOUNDIFY, } from "src/vendor"; import { MSG_REQUIRED_FIELDS } from "src/constants"; import { @@ -134,6 +135,7 @@ export const SpeechServiceForm = ({ credential }: SpeechServiceFormProps) => { const [secretAccessKey, setSecretAccessKey] = useState(""); const [clientId, setClientId] = useState(""); const [secretKey, setSecretKey] = useState(""); + const [clientKey, setClientKey] = useState(""); const [clientSecret, setClientSecret] = useState(""); const [googleServiceKey, setGoogleServiceKey] = useState(null); @@ -455,6 +457,11 @@ export const SpeechServiceForm = ({ credential }: SpeechServiceFormProps) => { nuance_tts_uri: onPremNuanceTtsUrl || null, nuance_stt_uri: onPremNuanceSttUrl || null, }), + ...(vendor === VENDOR_HOUNDIFY && { + client_id: clientId || null, + client_key: clientKey || null, + user_id: userId || null, + }), ...(vendor === VENDOR_COBALT && { cobalt_server_uri: cobaltServerUri || null, }), @@ -723,6 +730,9 @@ export const SpeechServiceForm = ({ credential }: SpeechServiceFormProps) => { if (credential.data.client_id) { setClientId(credential.data.client_id); } + if (credential.data.client_key) { + setClientKey(credential.data.client_key); + } if (credential.data.secret) { setSecretKey(credential.data.secret); @@ -1028,6 +1038,7 @@ export const SpeechServiceForm = ({ credential }: SpeechServiceFormProps) => { vendor !== VENDOR_SONIOX && vendor !== VENDOR_SPEECHMATICS && vendor !== VENDOR_DEEPGRAM_FLUX && + vendor !== VENDOR_HOUNDIFY && vendor !== VENDOR_OPENAI && vendor != VENDOR_CUSTOM && (