KamoCRM

直播更改日志

每个功能,固定和改进, 张贴在船。 发射时没有任何东西被挡住.

17,488
变动共计
5,978
特征
5,281
修补
30
项目
按项目过滤
所有项目17,488AIService251APIService174BillingService157ConversionService110DaemonService138DocsService223ESigService91EmailService574InitializerService329KBService151KlusterServices738MCPGatewayService246MediaService602RAGService79SecurityService1,846TranslateService62VOIPService249VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,347kamo-login335kamo-marketing641kamo-nowww20kamo-register213kamo-shared-library1,657kamo-signer-monorepo56kamolos114
按类型过滤
所有类型Build16CI523Chore773Docs3,254Feature5,978Fix5,281Other994Performance165Refactor278Revert23Style42Test160Upgrade1
November 5, 2025
FixMediaService

Use setProperty on protocol handler

snadjafinia·11mo ago
FixMediaService

Use setAttribute for Tomcat SSL configuration

- Changed from setKeystoreFile/Pass/Type/Alias to setAttribute - Tomcat 10+ uses setAttribute for SSL properties - Fixes compilation errors

snadjafinia·11mo ago
FixMediaService

Run MediaService on BOTH ports 80 (HTTP API) and 8443 (HTTPS WebSocket)

- Reverted service.yaml and ingressroute.yaml to use port 80 - Removed forced SERVER_PORT and SSL_ENABLED env vars - Added DualPortConfig to programmatically ad...

snadjafinia·11mo ago
Fixkamo-internal

连接8443(外部)端口,该端口通向节点30843

- 路由器外接8443至k1m1节点30843 -浏览器使用media.kamocrm.com:8443 - 内部节点港为30843 (Kubernetes 有效范围)

snadjafinia·11mo ago
FixMediaService

Use NodePort 30843 instead of hostPort for WebSocket

- hostPort may be blocked by firewall rules - NodePort 30843 is in valid range (30000-32767) - Browser connects to external port 8443 - Router forwards 8443 -> ...

snadjafinia·11mo ago
FixMediaService

Add SSL configuration to k8s ConfigMap

- ConfigMap was missing SSL config from application.yml - Added server.ssl settings with environment variable support - Matches local application.yml configurat...

snadjafinia·11mo ago
FixMediaService

Use hostPort instead of NodePort for 8443

- NodePort range is 30000-32767, cannot use 8443 - Use hostPort to bind directly to host port 8443 - Removed service-websocket.yaml

snadjafinia·11mo ago
Fixkamo-internal

删除 HTTP/2 兼容性的 WebSocket 运输限制

-浏览器WebSocket API不支持HTTP/2(RFC 8441未执行) - 原生WebSocket需要HTTP/1.1 升级失败于 HTTP/2 - 让SockJS自动选择运输(xhr -- -- 流/xhr -- -- 通过HTTP/2) - 修复与 HTTP/2 的 WebSocket 连接失败

snadjafinia·11mo ago
FixMediaService

Use explicit Host() for /ws route to enable TLSOption

- Changed /ws route from HostRegexp to Host(media.kamocrm.com) - TLSOption can only be applied to explicit hosts (not regex) - ALPN negotiation happens during T...

snadjafinia·11mo ago
FixMediaService

Force HTTP/1.1 for MediaService ONLY via TLSOption

- Created media-tls-http1 TLSOption with alpnProtocols: [http/1.1] - Referenced ONLY in media-route IngressRoute - Does not affect other Traefik routes - Fixes ...

snadjafinia·11mo ago
FixMediaService

Separate /ws route for WebSocket, keep HTTP/2 for API

- Added two routes: /ws for WebSocket (higher priority), rest for API - Only /ws uses media-websocket-transport (HTTP/2 disabled) - API routes can use HTTP/2 fo...

snadjafinia·11mo ago
FixMediaService

Use Host() instead of HostRegexp() for media-route

- Simplified to Host(media.kamocrm.com) - Avoids regex escaping issues with backticks - Tests show route is working with simple Host match

snadjafinia·11mo ago
FixMediaService

Force HTTP/1.1 via TLSOption for WebSocket compatibility

- Created TLSOption to disable HTTP/2 ALPN negotiation - Forces browsers to use HTTP/1.1 for media.kamocrm.com - WebSocket upgrades require HTTP/1.1 protocol - ...

snadjafinia·11mo ago
FixKlusterServices

Disable idle timeout for WebSocket connections

- Added idleTimeout=0 to websecure entrypoint - Prevents Traefik from closing WebSocket connections due to inactivity - Fixes SockJS WebSocket timeout issues

snadjafinia·11mo ago
Fixkamo-internal

仅使用 WebSocket 运算( 残疾 XHR 投票)

- 将SockJS运输从[websocket,xhr-streaming,xhr-poling]改为[websocket] - 取消回落投票 - 纯网络锁接力 - 如果WebSocket不起作用,而不是有辱人格,那么失败的速度会很快

snadjafinia·11mo ago
Fixkamo-internal

从 kamowsmedia- service 中删除明确的命名空间引用

- 两种服务同名空间(kamo) - 不需要明确的名称空间参考 - 避免潜在的跨名称空间问题

snadjafinia·11mo ago
Fixkamo-internal

从下一个删除/ws重写 。 配置(由Traefik处理)

- 已删除 Next.js 为/ws 路径重写 - 现由Traefik IngressRoute处理的WebSocket线路 - Traefik 内部路线.kamocrm.com/ws - > 直接媒体服务

snadjafinia·11mo ago
Fixkamo-internal

通过Traefik直接向MediaService提供路线/ws请求

- 为入侵鲁特的路径增加专用路线 - 内部路线.kamocrm.com/ws - > 直接媒体服务 - 在WebSocket支助中使用与媒体路线相同的服务器运输 - 用于 WebSocket 连接的 Bypasses Next.js(Next.js 重写不支持 WS) - 更具体的路线首先与一般路线相匹配

snadjafinia·11mo ago
Fixkamo-internal

允许/ws WebSocket 端点, 而无需认证重定向

- 将路径添加到中间软件绕行 - SockJS 需要连接到/ws/info而不重定向 - WebSocket连接仍然有 *** cookie - 解决WebSocket连接超时问题

snadjafinia·11mo ago
Fixkamo-internal

更改同源的 WebSocket 连接

- 从media.kamocrm.com改为同源(内部.kamocrm.com) - 避免出现交叉来源的WebSocket连接问题 - 添加 Next.js 重写规则到代理/ws 到 Media Service - 浏览器将连接到内部.kamocrm.com/ws - Next.js将代理到媒体.kamocrm.com...

snadjafinia·11mo ago
FixMediaService

Remove @kubernetescrd suffix from serversTransport reference

- Traefik error: cross-namespace format not allowed when crossnamespace disabled - IngressRoute and ServersTransport are in same namespace (kamo) - Use simple n...

snadjafinia·11mo ago
Fixkamo-internal

从 getDisplayMedia 中删除无效的编码器属性

- 使用简单的视频:屏幕共享真实性 - 建设现在应该成功

snadjafinia·11mo ago
Fixkamo-internal

解析构建错误 - 将 PhoneOff 替换为 CallEnd

- 手机图标在@mui/icons-materi中不存在 - 使用CallEnd,这是正确的MUI图标 - 删除未使用的重复文件(ChatBox With WebRTC、VideoCallView、使用JanusWebRTC) - 建设现在应该成功

snadjafinia·11mo ago
FixKlusterServices

Split port ranges to avoid conflicts

- Coturn relay: 52000-65535 (13,536 ports) - Avoids: Janus RTP (10000-49151) and WireGuard (51820-51821) - No overlap between services

snadjafinia·11mo ago
FixKlusterServices

Adjust relay port range to avoid WireGuard/VPN ports

- Changed max-port from 65535 to 51800 to avoid conflicts - Avoids WireGuard on UDP 51820 and other VPN services on 51821 - Provides 2,649 ports (49152-51800) f...

snadjafinia·11mo ago
FixKlusterServices

Resolve CrashLoopBackOff by fixing probes and config

- Replace netstat-based health probes with TCP socket checks (netstat not available in coturn/coturn:latest Alpine image) - Remove conflicting no-stdout-log dir...

snadjafinia·11mo ago
FixMediaService

Use full Kubernetes CRD provider name for ServersTransport reference

Traefik requires the @kubernetescrd suffix when referencing CRD resources like ServersTransport.

snadjafinia·11mo ago
FixMediaService

Simplify MediaService WebSocket IngressRoute configuration

Remove media-websocket-upgrade middleware that was forcing headers and causing WebSocket handshake issues. Traefik automatically handles WebSocket upgrade when ...

snadjafinia·11mo ago
Fixkamo-internal

在 SockJS 跳过 WebSocket 运输以避免 HTTP/2 问题

- 使用xhr-流线和xhr-波程运输,而不是网络锁 - 这些运输与HTTP/1.1和HTTP/2同时工作,不需要WebSocket升级 - 避免HTTP/2扩展的CONNECT问题并改进标题转发问题 - /ws/info 请求在 HTTP/2 中及时出局(499起),使 SockJS 无法连接

snadjafinia·11mo ago
FixMediaService

Add end anchor to WebSocket path regex pattern

- Add $ to end of PathRegexp to ensure exact match - Fixes regex parsing error in Traefik - /ws/info is now working (200 OK) but WebSocket upgrade route needs p...

snadjafinia·11mo ago
FixMediaService

Only apply WebSocket upgrade middleware to actual WebSocket paths

- Change route match from PathPrefix(/ws/) to **************** - /ws/info is a regular HTTP request, not a WebSocket upgrade - Adding Upgrade header to /ws/info...

snadjafinia·11mo ago
FixKlusterServices

Add Connection: Upgrade header to WebSocket upgrade middleware

- Add Connection: Upgrade header along with Upgrade: websocket - Both headers are required for proper WebSocket upgrade handshake - This ensures HTTP/2 Extended...

snadjafinia·11mo ago
FixMediaService

Add separate route for WebSocket paths with upgrade middleware

- Create separate route matching /ws/** paths with media-websocket-upgrade middleware - This ensures Upgrade: websocket header is added for WebSocket upgrade re...

snadjafinia·11mo ago
FixMediaService

Use ServersTransport to disable HTTP/2 for WebSocket connections

- Create ServersTransport resource with disableHTTP2: true - Reference ServersTransport in IngressRoute service configuration - Remove invalid disableHTTP2 fiel...

snadjafinia·11mo ago
FixMediaService

禁用媒体服务后端连接的 HTTP/2

- 添加禁用HTTP2: 将 HTTP/1.1 强制用于后端连接 - HTTP/2 扩展 CONNECT 没有正确转换升级头 - WebSocket升级需要HTTP/1.1升级:websocket头 - 此修正 WebSocket 握手时的“ 升级头: 无效” 错误

snadjafinia·11mo ago
FixMediaService

Configure IngressRoute service scheme for WebSocket support

- Set scheme: http to ensure proper HTTP/1.1 handling for WebSocket upgrades - HTTP/2 Extended CONNECT needs proper conversion to HTTP/1.1 Upgrade header - This...

snadjafinia·11mo ago
FixMediaService

Remove invalid handshake handler and fix SockJS configuration

- Remove invalid DefaultHandshakeHandler override (method doesn't exist) - Remove invalid setSupressCors call (method doesn't exist) - Keep HttpSessionHandshake...

snadjafinia·11mo ago
FixMediaService

Add WebSocket handshake logging and SockJS configuration

- Add handshake handler and interceptor logging to diagnose WebSocket connection issues - Configure SockJS to suppress CORS (handled by Spring Security) and dis...

snadjafinia·11mo ago
Fixkamo-internal

配置 SockJS 运输处理 HTTP/2 WebSocket 升级问题

- 明确配置SockJS运输订单,以选择WebSocket,然后回落到xhr-流/xhr-波 - HTTP/2 WebSocket升级可能失败,SockJS将自动回落到HTTP/1.1相容的运输上 - 这将解决浏览器使用 HTTP/2 时的 WebSocket 连接超时

snadjafinia·11mo ago
FixMediaService

Remove media-cors middleware from IngressRoute to allow WebSocket connections

- media-cors middleware was clearing CORS headers which interfered with WebSocket upgrades - WebSocket connections require direct pass-through without header mo...

snadjafinia·11mo ago
November 4, 2025
FixMediaService

Remove invalid Spring Security pattern /ws/**/info

- PatternParseException: No more pattern data allowed after {*...} or ** - /ws/** already covers all paths under /ws including /ws/info - This was causing 500 e...

snadjafinia·11mo ago
FixMediaService

Apply media-cors middleware to MediaService IngressRoute

- Apply media-cors middleware to allow CORS headers for WebSocket connections - Matches the pattern used for theme domains

snadjafinia·11mo ago
FixMediaService

Explicitly permit OPTIONS requests for CORS preflight

- Add explicit permit for OPTIONS method on all paths - Add explicit permit for /ws/info endpoint (SockJS handshake) - This ensures CORS preflight requests reac...

snadjafinia·11mo ago
FixMediaService

Make CORS configuration more permissive for WebSocket connections

- Explicitly handle '*' wildcard for origins, methods, and headers - Add WebSocket-related headers to exposed headers - Add logging to verify CORS configuration...

snadjafinia·11mo ago
FixMediaService

Add logging and configure SockJS heartbeat/disconnect settings

- Add logging to verify WebSocket endpoint registration - Configure SockJS heartbeat and disconnect delay - This should help diagnose why SockJS handshake isn't...

snadjafinia·11mo ago
Fixkamo-internal

确保信件路由被 Next.js 识别

- 新增记录以核实路线被击中 - 路线文件存在,Next.js 15的结构是正确的

snadjafinia·11mo ago
Fixkamo-internal

从 STOMP 中删除不存在的“ 活动” 属性 客户端记录

- STOMP (英语) 客户端没有“ 活动” 属性 - 只检查“ 连接” 属性, 该属性为正确的状态指标

snadjafinia·11mo ago
Fixkamo-internal

从 STOMP 客户端中删除不支持的 WebSocketError 处理器

- 在WebSocketError上不是客户端选项中的有效属性 - SockJS 错误处理器( 错误, 关闭) 已经提供了错误处理

snadjafinia·11mo ago
Fixkamo-internal

改进连接超时处理 rescleanup

snadjafinia·11mo ago

就像你看到的运输?

所有东西都是靠自己运入你的工作空间的 从免费计划开始,一个月后再读这页.

永远开始自由查看定价