fix: stt error handler
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
import axios from 'axios';
|
||||||
import { useCallback, useRef, useState } from 'react';
|
import { useCallback, useRef, useState } from 'react';
|
||||||
import { speechToText } from '../../apis';
|
import { speechToText } from '../../apis';
|
||||||
import { extractErrorMessage } from '../../config';
|
import { extractErrorMessage } from '../../config';
|
||||||
@@ -52,15 +53,19 @@ export const useNonStreamSTT = (params?: UseNonStreamSTTParams) => {
|
|||||||
params?.onSuccess?.(result);
|
params?.onSuccess?.(result);
|
||||||
return result;
|
return result;
|
||||||
} catch (err: any) {
|
} catch (err: any) {
|
||||||
const res = err?.response?.data;
|
if (axios.isCancel(err)) {
|
||||||
if (res?.error || (res?.status_code && res?.status_code !== 200)) {
|
return null;
|
||||||
const errorMessage = extractErrorMessage(res);
|
|
||||||
setError({
|
|
||||||
error: true,
|
|
||||||
errorMessage
|
|
||||||
});
|
|
||||||
params?.onError?.(errorMessage);
|
|
||||||
}
|
}
|
||||||
|
const res = err?.response?.data;
|
||||||
|
const errorMessage =
|
||||||
|
res?.error || (res?.status_code && res?.status_code !== 200)
|
||||||
|
? extractErrorMessage(res)
|
||||||
|
: err?.response?.statusText || err?.message || 'Request failed';
|
||||||
|
setError({
|
||||||
|
error: true,
|
||||||
|
errorMessage
|
||||||
|
});
|
||||||
|
params?.onError?.(errorMessage);
|
||||||
return null;
|
return null;
|
||||||
} finally {
|
} finally {
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ export const useStreamSTT = (params?: UseStreamSTTParams) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
if ('error' in result) {
|
if ('error' in result) {
|
||||||
const errorMessage = extractErrorMessage(result.data);
|
const errorMessage = extractErrorMessage(result);
|
||||||
setError({
|
setError({
|
||||||
error: true,
|
error: true,
|
||||||
errorMessage
|
errorMessage
|
||||||
|
|||||||
@@ -220,7 +220,7 @@ export const useStreamTTS = (params?: UseStreamTTSParams) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
if ('error' in result) {
|
if ('error' in result) {
|
||||||
const errorMessage = extractErrorMessage(result.data);
|
const errorMessage = extractErrorMessage(result);
|
||||||
setError({
|
setError({
|
||||||
error: true,
|
error: true,
|
||||||
errorMessage
|
errorMessage
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ const GroundSTT: React.FC<MessageProps> = forwardRef((props, ref) => {
|
|||||||
onError: (error) => {
|
onError: (error) => {
|
||||||
setTokenResult({
|
setTokenResult({
|
||||||
error: true,
|
error: true,
|
||||||
errorMessage: error
|
errorMessage: error?.message || _.toString(error)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user