fix: Floating window image cannot be displayed (#3634)

* fix: After modifying the voice playback settings in the application, save the unpublished settings, and the conversation page should display the settings before modification

* fix: Floating window image cannot be displayed
This commit is contained in:
shaohuzhang1 2025-07-16 17:55:24 +08:00 committed by GitHub
parent c249f7501f
commit c7a9a4d4bd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 18 additions and 8 deletions

View File

@ -913,23 +913,31 @@ class ApplicationOperateSerializer(serializers.Serializer):
[ApplicationKnowledgeMapping(application_id=application_id, knowledge_id=knowledge_id) for knowledge_id in
knowledge_id_list]) if len(knowledge_id_list) > 0 else None
def speech_to_text(self, instance, with_valid=True):
def speech_to_text(self, instance, debug=True, with_valid=True):
if with_valid:
self.is_valid(raise_exception=True)
SpeechToTextRequest(data=instance).is_valid(raise_exception=True)
application_id = self.data.get('application_id')
application = QuerySet(Application).filter(id=application_id).first()
if debug:
application = QuerySet(Application).filter(id=application_id).first()
else:
application = QuerySet(ApplicationVersion).filter(application_id=application_id).order_by(
'-create_time').first()
if application.stt_model_enable:
model = get_model_instance_by_model_workspace_id(application.stt_model_id, application.workspace_id)
text = model.speech_to_text(instance.get('file'))
return text
def text_to_speech(self, instance, with_valid=True):
def text_to_speech(self, instance, debug=True, with_valid=True):
if with_valid:
self.is_valid(raise_exception=True)
TextToSpeechRequest(data=instance).is_valid(raise_exception=True)
application_id = self.data.get('application_id')
application = QuerySet(Application).filter(id=application_id).first()
if debug:
application = QuerySet(Application).filter(id=application_id).first()
else:
application = QuerySet(ApplicationVersion).filter(application_id=application_id).order_by(
'-create_time').first()
if application.tts_model_enable:
model = get_model_instance_by_model_workspace_id(application.tts_model_id, application.workspace_id,
**application.tts_model_params_setting)

View File

@ -462,10 +462,10 @@ class TextToSpeechSerializers(serializers.Serializer):
def text_to_speech(self, instance):
self.is_valid(raise_exception=True)
application_id = self.data.get('application_id')
application = QuerySet(Application).filter(id=application_id).first()
application = QuerySet(ApplicationVersion).filter(id=application_id).order_by('-create_time').first()
return ApplicationOperateSerializer(
data={'application_id': application_id,
'user_id': application.user_id}).text_to_speech(instance)
'user_id': application.user_id}).text_to_speech(instance, False)
class SpeechToTextSerializers(serializers.Serializer):
@ -477,4 +477,4 @@ class SpeechToTextSerializers(serializers.Serializer):
application = QuerySet(Application).filter(id=application_id).first()
return ApplicationOperateSerializer(
data={'application_id': application_id,
'user_id': application.user_id}).speech_to_text(instance)
'user_id': application.user_id}).speech_to_text(instance, False)

View File

@ -53,7 +53,9 @@ class ChatEmbedSerializer(serializers.Serializer):
if application_setting is not None:
is_draggable = 'true' if application_setting.draggable else 'false'
if application_setting.float_icon is not None and len(application_setting.float_icon) > 0:
float_icon = f"{self.data.get('protocol')}://{self.data.get('host')}{CONFIG.get_chat_path()}{application_setting.float_icon}"
float_icon = application_setting.float_icon[1:] if application_setting.float_icon.startswith(
'.') else application_setting.float_icon
float_icon = f"{self.data.get('protocol')}://{self.data.get('host')}{CONFIG.get_chat_path()}{float_icon}"
show_guide = 'true' if application_setting.show_guide else 'false'
if application_setting.float_location is not None:
float_location = application_setting.float_location