diff --git a/ui/src/assets/tipIMG.jpg b/ui/src/assets/tipIMG.jpg new file mode 100644 index 000000000..9f6955db5 Binary files /dev/null and b/ui/src/assets/tipIMG.jpg differ diff --git a/ui/src/components/ai-chat/index.vue b/ui/src/components/ai-chat/index.vue index 84482de39..e10d9b365 100644 --- a/ui/src/components/ai-chat/index.vue +++ b/ui/src/components/ai-chat/index.vue @@ -238,6 +238,7 @@ import 'recorder-core/src/engine/mp3-engine' import { MsgWarning } from '@/utils/message' import DynamicsForm from '@/components/dynamics-form/index.vue' import type { FormField } from '@/components/dynamics-form/type' +import { MsgAlert } from '@/utils/message' defineOptions({ name: 'AiChat' }) const route = useRoute() @@ -845,7 +846,21 @@ const startRecording = async () => { } ) } catch (error) { - console.error('无法获取音频权限:', error) + // console.error('无法获取音频权限:', error) + MsgAlert( + `提示`, + `
该功能需要使用麦克风,浏览器禁止不安全页面录音,解决方案如下:
+1、可开启 https 解决;
+2、若无 https 配置则需要修改浏览器安全配置,Chrome 设置如下:
+(1) 地址栏输入chrome://flags/#unsafely-treat-insecure-origin-as-secure;
+(2) 将 http 站点配置在文本框中,例如: http://127.0.0.1:8080。
`,
+ {
+ confirmButtonText: '我知道了',
+ dangerouslyUseHTMLString: true,
+ customClass: 'record-tip-confirm'
+ }
+ )
}
}
diff --git a/ui/src/styles/app.scss b/ui/src/styles/app.scss
index 1ba986e5b..6ba317e1a 100644
--- a/ui/src/styles/app.scss
+++ b/ui/src/styles/app.scss
@@ -734,7 +734,6 @@ h5 {
}
}
-
.edit-avatar {
position: relative;
.edit-mask {
@@ -742,4 +741,8 @@ h5 {
left: 0;
background: rgba(0, 0, 0, 0.4);
}
-}
\ No newline at end of file
+}
+
+.record-tip-confirm {
+ max-width: 800px !important;
+}
diff --git a/ui/src/views/application/index.vue b/ui/src/views/application/index.vue
index 03f92a6de..b58f97541 100644
--- a/ui/src/views/application/index.vue
+++ b/ui/src/views/application/index.vue
@@ -127,7 +127,7 @@ import { ref, onMounted, reactive } from 'vue'
import applicationApi from '@/api/application'
import CreateApplicationDialog from './component/CreateApplicationDialog.vue'
import CopyApplicationDialog from './component/CopyApplicationDialog.vue'
-import { MsgSuccess, MsgConfirm } from '@/utils/message'
+import { MsgSuccess, MsgConfirm, MsgAlert } from '@/utils/message'
import { isAppIcon } from '@/utils/application'
import { useRouter } from 'vue-router'
import { isWorkFlow } from '@/utils/application'