jisti-meet服务开启
This commit is contained in:
@@ -92,4 +92,20 @@ logging:
|
||||
console: UTF-8
|
||||
file: UTF-8
|
||||
level:
|
||||
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping: TRACE
|
||||
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping: TRACE
|
||||
|
||||
# ================== Jitsi Meet 视频会议配置 ==================
|
||||
jitsi:
|
||||
app:
|
||||
# 应用ID(必须与Docker配置中的JWT_APP_ID一致)
|
||||
id: urbanLifeline
|
||||
# JWT密钥(必须与Docker配置中的JWT_APP_SECRET一致)
|
||||
# 警告:生产环境请修改为强随机字符串,并妥善保管
|
||||
# 注意:HS256算法要求密钥长度至少32字节(256 bits)
|
||||
secret: urbanLifeline-jitsi-secret-key-2025-production-safe-hs256
|
||||
server:
|
||||
# Jitsi Meet服务器地址(Docker部署在本地8280端口)
|
||||
url: http://192.168.0.253:8280
|
||||
token:
|
||||
# JWT Token有效期(毫秒)- 默认2小时
|
||||
expiration: 7200000
|
||||
@@ -12,7 +12,7 @@
|
||||
<result column="message_type" property="messageType" jdbcType="VARCHAR"/>
|
||||
<result column="content" property="content" jdbcType="VARCHAR"/>
|
||||
<result column="files" property="files" jdbcType="ARRAY" typeHandler="org.xyzh.common.jdbc.handler.StringArrayTypeHandler"/>
|
||||
<result column="content_extra" property="contentExtra" jdbcType="OTHER" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
|
||||
<result column="content_extra" property="contentExtra" jdbcType="OTHER" typeHandler="org.xyzh.common.jdbc.handler.FastJson2TypeHandler"/>
|
||||
<result column="reply_to_msg_id" property="replyToMsgId" jdbcType="VARCHAR"/>
|
||||
<result column="is_ai_message" property="isAiMessage" jdbcType="BOOLEAN"/>
|
||||
<result column="ai_message_id" property="aiMessageId" jdbcType="VARCHAR"/>
|
||||
@@ -34,7 +34,7 @@
|
||||
<result column="message_type" property="messageType" jdbcType="VARCHAR"/>
|
||||
<result column="content" property="content" jdbcType="VARCHAR"/>
|
||||
<result column="files" property="files" jdbcType="ARRAY" typeHandler="org.xyzh.common.jdbc.handler.StringArrayTypeHandler"/>
|
||||
<result column="content_extra" property="contentExtra" jdbcType="OTHER" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
|
||||
<result column="content_extra" property="contentExtra" jdbcType="OTHER" typeHandler="org.xyzh.common.jdbc.handler.FastJson2TypeHandler"/>
|
||||
<result column="reply_to_msg_id" property="replyToMsgId" jdbcType="VARCHAR"/>
|
||||
<result column="is_ai_message" property="isAiMessage" jdbcType="BOOLEAN"/>
|
||||
<result column="ai_message_id" property="aiMessageId" jdbcType="VARCHAR"/>
|
||||
@@ -66,7 +66,7 @@
|
||||
#{optsn}, #{messageId}, #{roomId}, #{senderId}, #{senderType}, #{senderName}, #{content}, #{creator}
|
||||
<if test="messageType != null">, #{messageType}</if>
|
||||
<if test="files != null">, #{files, typeHandler=org.xyzh.common.jdbc.handler.StringArrayTypeHandler}</if>
|
||||
<if test="contentExtra != null">, #{contentExtra, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler}</if>
|
||||
<if test="contentExtra != null">, #{contentExtra, typeHandler=org.xyzh.common.jdbc.handler.FastJson2TypeHandler}::jsonb</if>
|
||||
<if test="replyToMsgId != null">, #{replyToMsgId}</if>
|
||||
<if test="isAiMessage != null">, #{isAiMessage}</if>
|
||||
<if test="aiMessageId != null">, #{aiMessageId}</if>
|
||||
|
||||
@@ -9,21 +9,24 @@
|
||||
<result column="workcase_id" property="workcaseId" jdbcType="VARCHAR"/>
|
||||
<result column="meeting_name" property="meetingName" jdbcType="VARCHAR"/>
|
||||
<result column="meeting_password" property="meetingPassword" jdbcType="VARCHAR"/>
|
||||
<result column="description" property="description" jdbcType="VARCHAR"/>
|
||||
<result column="jwt_token" property="jwtToken" jdbcType="VARCHAR"/>
|
||||
<result column="jitsi_room_name" property="jitsiRoomName" jdbcType="VARCHAR"/>
|
||||
<result column="jitsi_server_url" property="jitsiServerUrl" jdbcType="VARCHAR"/>
|
||||
<result column="status" property="status" jdbcType="VARCHAR"/>
|
||||
<result column="creator_id" property="creatorId" jdbcType="VARCHAR"/>
|
||||
<result column="creator" property="creator" jdbcType="VARCHAR"/>
|
||||
<result column="creator_type" property="creatorType" jdbcType="VARCHAR"/>
|
||||
<result column="creator_name" property="creatorName" jdbcType="VARCHAR"/>
|
||||
<result column="participant_count" property="participantCount" jdbcType="INTEGER"/>
|
||||
<result column="max_participants" property="maxParticipants" jdbcType="INTEGER"/>
|
||||
<result column="start_time" property="actualStartTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="end_time" property="actualEndTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="start_time" property="startTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="end_time" property="endTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="advance" property="advance" jdbcType="INTEGER"/>
|
||||
<result column="actual_start_time" property="actualStartTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="actual_end_time" property="actualEndTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="duration_seconds" property="durationSeconds" jdbcType="INTEGER"/>
|
||||
<result column="iframe_url" property="iframeUrl" jdbcType="VARCHAR"/>
|
||||
<result column="config" property="config" jdbcType="OTHER" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
|
||||
<result column="creator" property="creator" jdbcType="VARCHAR"/>
|
||||
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="delete_time" property="deleteTime" jdbcType="TIMESTAMP"/>
|
||||
@@ -37,17 +40,20 @@
|
||||
<result column="workcase_id" property="workcaseId" jdbcType="VARCHAR"/>
|
||||
<result column="meeting_name" property="meetingName" jdbcType="VARCHAR"/>
|
||||
<result column="meeting_password" property="meetingPassword" jdbcType="VARCHAR"/>
|
||||
<result column="description" property="description" jdbcType="VARCHAR"/>
|
||||
<result column="jwt_token" property="jwtToken" jdbcType="VARCHAR"/>
|
||||
<result column="jitsi_room_name" property="jitsiRoomName" jdbcType="VARCHAR"/>
|
||||
<result column="jitsi_server_url" property="jitsiServerUrl" jdbcType="VARCHAR"/>
|
||||
<result column="status" property="status" jdbcType="VARCHAR"/>
|
||||
<result column="creator_id" property="creatorId" jdbcType="VARCHAR"/>
|
||||
<result column="creator_type" property="creatorType" jdbcType="VARCHAR"/>
|
||||
<result column="creator_name" property="creatorName" jdbcType="VARCHAR"/>
|
||||
<result column="participant_count" property="participantCount" jdbcType="INTEGER"/>
|
||||
<result column="max_participants" property="maxParticipants" jdbcType="INTEGER"/>
|
||||
<result column="start_time" property="actualStartTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="end_time" property="actualEndTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="start_time" property="startTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="end_time" property="endTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="advance" property="advance" jdbcType="INTEGER"/>
|
||||
<result column="actual_start_time" property="actualStartTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="actual_end_time" property="actualEndTime" jdbcType="TIMESTAMP"/>
|
||||
<result column="duration_seconds" property="durationSeconds" jdbcType="INTEGER"/>
|
||||
<result column="iframe_url" property="iframeUrl" jdbcType="VARCHAR"/>
|
||||
<result column="config" property="config" jdbcType="OTHER" typeHandler="com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler"/>
|
||||
@@ -59,29 +65,38 @@
|
||||
</resultMap>
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
meeting_id, optsn, room_id, workcase_id, meeting_name, meeting_password, jwt_token,
|
||||
jitsi_room_name, jitsi_server_url, status, creator_id, creator_type, creator_name,
|
||||
participant_count, max_participants, start_time, end_time, duration_seconds, iframe_url,
|
||||
meeting_id, optsn, room_id, workcase_id, meeting_name, meeting_password, description, jwt_token,
|
||||
jitsi_room_name, jitsi_server_url, status, creator_type, creator_name,
|
||||
participant_count, max_participants, start_time, end_time, advance,
|
||||
actual_start_time, actual_end_time, duration_seconds, iframe_url,
|
||||
config, creator, create_time, update_time, delete_time, deleted
|
||||
</sql>
|
||||
|
||||
<insert id="insertVideoMeeting" parameterType="org.xyzh.api.workcase.dto.TbVideoMeetingDTO">
|
||||
INSERT INTO workcase.tb_video_meeting (
|
||||
optsn, meeting_id, room_id, workcase_id, meeting_name, jitsi_room_name, creator_id, creator_type, creator_name, creator
|
||||
optsn, meeting_id, room_id, workcase_id, meeting_name, jitsi_room_name, creator_type, creator_name, creator
|
||||
<if test="meetingPassword != null">, meeting_password</if>
|
||||
<if test="description != null">, description</if>
|
||||
<if test="jwtToken != null">, jwt_token</if>
|
||||
<if test="jitsiServerUrl != null">, jitsi_server_url</if>
|
||||
<if test="status != null">, status</if>
|
||||
<if test="maxParticipants != null">, max_participants</if>
|
||||
<if test="startTime != null">, start_time</if>
|
||||
<if test="endTime != null">, end_time</if>
|
||||
<if test="advance != null">, advance</if>
|
||||
<if test="iframeUrl != null">, iframe_url</if>
|
||||
<if test="config != null">, config</if>
|
||||
) VALUES (
|
||||
#{optsn}, #{meetingId}, #{roomId}, #{workcaseId}, #{meetingName}, #{jitsiRoomName}, #{creatorId}, #{creatorType}, #{creatorName}, #{creator}
|
||||
#{optsn}, #{meetingId}, #{roomId}, #{workcaseId}, #{meetingName}, #{jitsiRoomName}, #{creatorType}, #{creatorName}, #{creator}
|
||||
<if test="meetingPassword != null">, #{meetingPassword}</if>
|
||||
<if test="description != null">, #{description}</if>
|
||||
<if test="jwtToken != null">, #{jwtToken}</if>
|
||||
<if test="jitsiServerUrl != null">, #{jitsiServerUrl}</if>
|
||||
<if test="status != null">, #{status}</if>
|
||||
<if test="maxParticipants != null">, #{maxParticipants}</if>
|
||||
<if test="startTime != null">, #{startTime}</if>
|
||||
<if test="endTime != null">, #{endTime}</if>
|
||||
<if test="advance != null">, #{advance}</if>
|
||||
<if test="iframeUrl != null">, #{iframeUrl}</if>
|
||||
<if test="config != null">, #{config, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler}</if>
|
||||
)
|
||||
@@ -92,11 +107,15 @@
|
||||
<set>
|
||||
<if test="meetingName != null and meetingName != ''">meeting_name = #{meetingName},</if>
|
||||
<if test="meetingPassword != null">meeting_password = #{meetingPassword},</if>
|
||||
<if test="description != null">description = #{description},</if>
|
||||
<if test="jwtToken != null">jwt_token = #{jwtToken},</if>
|
||||
<if test="status != null and status != ''">status = #{status},</if>
|
||||
<if test="participantCount != null">participant_count = #{participantCount},</if>
|
||||
<if test="actualStartTime != null">start_time = #{actualStartTime},</if>
|
||||
<if test="actualEndTime != null">end_time = #{actualEndTime},</if>
|
||||
<if test="startTime != null">start_time = #{startTime},</if>
|
||||
<if test="endTime != null">end_time = #{endTime},</if>
|
||||
<if test="advance != null">advance = #{advance},</if>
|
||||
<if test="actualStartTime != null">actual_start_time = #{actualStartTime},</if>
|
||||
<if test="actualEndTime != null">actual_end_time = #{actualEndTime},</if>
|
||||
<if test="durationSeconds != null">duration_seconds = #{durationSeconds},</if>
|
||||
<if test="iframeUrl != null">iframe_url = #{iframeUrl},</if>
|
||||
<if test="config != null">config = #{config, typeHandler=com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler},</if>
|
||||
@@ -126,7 +145,7 @@
|
||||
<if test="filter.workcaseId != null and filter.workcaseId != ''">AND workcase_id = #{filter.workcaseId}</if>
|
||||
<if test="filter.meetingName != null and filter.meetingName != ''">AND meeting_name LIKE CONCAT('%', #{filter.meetingName}, '%')</if>
|
||||
<if test="filter.status != null and filter.status != ''">AND status = #{filter.status}</if>
|
||||
<if test="filter.creatorId != null and filter.creatorId != ''">AND creator_id = #{filter.creatorId}</if>
|
||||
<if test="filter.creator != null and filter.creator != ''">AND creator = #{filter.creator}</if>
|
||||
<if test="filter.creatorType != null and filter.creatorType != ''">AND creator_type = #{filter.creatorType}</if>
|
||||
AND deleted = false
|
||||
</where>
|
||||
@@ -142,7 +161,7 @@
|
||||
<if test="filter.workcaseId != null and filter.workcaseId != ''">AND workcase_id = #{filter.workcaseId}</if>
|
||||
<if test="filter.meetingName != null and filter.meetingName != ''">AND meeting_name LIKE CONCAT('%', #{filter.meetingName}, '%')</if>
|
||||
<if test="filter.status != null and filter.status != ''">AND status = #{filter.status}</if>
|
||||
<if test="filter.creatorId != null and filter.creatorId != ''">AND creator_id = #{filter.creatorId}</if>
|
||||
<if test="filter.creator != null and filter.creator != ''">AND creator = #{filter.creator}</if>
|
||||
<if test="filter.creatorType != null and filter.creatorType != ''">AND creator_type = #{filter.creatorType}</if>
|
||||
AND deleted = false
|
||||
</where>
|
||||
@@ -159,7 +178,7 @@
|
||||
<if test="filter.workcaseId != null and filter.workcaseId != ''">AND workcase_id = #{filter.workcaseId}</if>
|
||||
<if test="filter.meetingName != null and filter.meetingName != ''">AND meeting_name LIKE CONCAT('%', #{filter.meetingName}, '%')</if>
|
||||
<if test="filter.status != null and filter.status != ''">AND status = #{filter.status}</if>
|
||||
<if test="filter.creatorId != null and filter.creatorId != ''">AND creator_id = #{filter.creatorId}</if>
|
||||
<if test="filter.creator != null and filter.creator != ''">AND creator = #{filter.creator}</if>
|
||||
<if test="filter.creatorType != null and filter.creatorType != ''">AND creator_type = #{filter.creatorType}</if>
|
||||
AND deleted = false
|
||||
</where>
|
||||
|
||||
Reference in New Issue
Block a user