web会议聊天

This commit is contained in:
2025-12-27 11:29:52 +08:00
parent 545153fd01
commit 0f985ae8e8
5 changed files with 64 additions and 10 deletions

View File

@@ -111,7 +111,7 @@ services:
# 基础配置(局域网访问)
TZ: Asia/Shanghai
# 关键:使用 http:// 协议的完整 URL
PUBLIC_URL: http://192.168.0.253:8280
PUBLIC_URL: 192.168.0.253:8280
# 关键:禁用 HTTPS让容器生成 ws:// 而不是 wss://
ENABLE_HTTPS: 0
@@ -139,7 +139,7 @@ services:
ENABLE_GUESTS: 1
AUTH_TYPE: jwt
JWT_APP_ID: urbanLifeline
JWT_APP_SECRET: urbanLifelinejitsi
JWT_APP_SECRET: urbanLifeline-jitsi-secret-key-2025-production-safe-hs256
JWT_ACCEPTED_ISSUERS: urbanLifeline
JWT_ACCEPTED_AUDIENCES: jitsi
JWT_ASAP_KEYSERVER: https://192.168.0.253:8280/
@@ -206,7 +206,7 @@ services:
ENABLE_GUESTS: 1
AUTH_TYPE: jwt
JWT_APP_ID: urbanLifeline
JWT_APP_SECRET: urbanLifelinejitsi
JWT_APP_SECRET: urbanLifeline-jitsi-secret-key-2025-production-safe-hs256
JWT_ACCEPTED_ISSUERS: urbanLifeline
JWT_ACCEPTED_AUDIENCES: jitsi
JWT_ALLOW_EMPTY: 0

View File

@@ -62,8 +62,14 @@ public class JitsiTokenServiceImpl implements JitsiTokenService {
claims.put("exp", exp / 1000); // 秒级时间戳
claims.put("nbf", now / 1000);
// 构建JWT Header必须包含 typ: JWT
Map<String, Object> header = new HashMap<>();
header.put("alg", "HS256");
header.put("typ", "JWT");
// 生成JWT Token
String token = Jwts.builder()
.setHeader(header)
.setClaims(claims)
.setIssuedAt(new Date(now))
.setExpiration(new Date(exp))

View File

@@ -105,7 +105,7 @@ jitsi:
secret: urbanLifeline-jitsi-secret-key-2025-production-safe-hs256
server:
# Jitsi Meet服务器地址Docker部署在本地8280端口
url: http://192.168.0.253:8280
url: http://localhost:8280
token:
# JWT Token有效期毫秒- 默认2小时
expiration: 7200000