Remover a restrição de transporte somente do WebSocket para compatibilidade HTTP/2
- Navegador WebSocket API não suporta HTTP/2 (RFC 8441 não implementado) - WebSocket nativo requer HTTP/1.1 Atualização que falha em HTTP/2 - Deixe o SockJS sel...
Restore HTTP/2 for WebSockets (RFC 8441 support)
- WebSockets CAN work over HTTP/2 via RFC 8441 - Removed TLSOption (not needed) - Removed ServersTransport reference (let HTTP/2 work) - Restored simple domain-...
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...
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 ...
Revert "fix(traefik): disable idle timeout for WebSocket connections"
This reverts commit ****************
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...
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
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 - ...
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
Usar o transporte WebSocket-only (desativar as sondagens XHR)
- Transporte alterado do SockJS de [websocket, xhr-streaming, xhr-polling] para [websocket] - Remove o retorno às sondagens XHR - Força conexão WebSocket pura -...
Add CORS middleware to media-route for cross-origin WebSocket
- Added cors middleware to allow cross-origin connections - Enables WebSocket connections from internal.* to media.* - Allows all origins, methods, and headers ...
Conecte WebSocket diretamente para media.kamocrm.com
- Revertida para a abordagem original: conecte-se diretamente ao subdomínio media.* - Complexidade desnecessária da mesma origem removida - Removido /ws bypass ...
Remover a referência explícita do espaço de nomes do serviço kamowsmedia
- Ambos os serviços estão no mesmo espaço de nomes (kamo) - Referência explícita do espaço de nomes não necessária - Evita potenciais problemas de espaço entre ...
Remover /ws reescrever do próximo. configuração (manejada por Traefik)
- Removido Next.js reescrita para /ws caminhos - Roteamento WebSocket agora manipulado a nível Traefik IngressRoute - Rotas Traefik internal.kamocrm.com/ws -> M...
Rota /ws solicitações diretamente para MediaService via Traefik
- Adicionado rota dedicada para /ws caminhos em IngressRoute - Rotas internal.kamocrm.com/ws -> MediaService diretamente - Usa os mesmos ServidoresTransportes c...
Permitir terminais WebSocket /ws sem redirecionamento de autenticação
- Added /ws path to middleware bypass - SockJS precisa se conectar a /ws/info sem redirecionamento - As conexões WebSocket ainda terão *** cookie - Corrige prob...
Mudar a ligação WebSocket para a mesma origem
- Mudada de media.kamocrm.com para mesma origem (internal.kamocrm.com) - Evita problemas de conexão WebSocket de origem cruzada - Added Next.js rewrite rule to ...
Adicionar rotas de proxy da API para os endpoints WebRTC
- Adicionado /api/webrtc/config proxy para MediaService - Adicionado /api/webrtc/token proxy para a autenticação do Janus - Adicionado /api/webrtc/call/iniciate...
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...
Remover a propriedade do codificador inválida do getDisplayMedia
- Usando vídeo simples: true para compartilhamento de tela - Construir agora deve ter sucesso
Resolver erro de compilação - substituir PhoneOff com CallEnd
- O ícone PhoneOff não existe em @mui/icons-material - Usando CallEnd que é o ícone MUI correto - Remover arquivos duplicados não utilizados (ChatBoxWithWebRTC,...
Chamada WebRTC de peer-to-peer completa com sinalização
- Adicionado usoWebRTC gancho com suporte de sinalização completa - Sinalização integrada WebSocket (ofertas, respostas, candidatos ICE) - Adicionadas notificaç...
Add WebSocket signaling for peer-to-peer calls
- Added WebRTCSignalingController for call signaling - Handles offer/answer exchange via STOMP - Forwards ICE candidates between peers - Manages call hangup not...
Adicionar integração Janus WebRTC para chamadas de áudio/vídeo
- Adicionado useJanusWebRTC gancho para gerenciamento de chamadas WebRTC - Adicionado componente VideoCallPanel para exibição de vídeo no chat - Integrado com C...
Add Janus WebRTC integration
- Added WebRTCController for token generation and call management - Configured Janus API URL and secrets (api, token, admin) - Configured STUN/TURN servers (kam...
Update TURN server credentials with secure values
- Updated turn-secret with secure random value - Updated turn-password for Janus authentication - Credentials match MediaService WebRTC configuration
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
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...
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...
Use full Kubernetes CRD provider name for ServersTransport reference
Traefik requires the @kubernetescrd suffix when referencing CRD resources like ServersTransport.
Add ServersTransport deployment to CI/CD workflow
Deploy traefik/serverstransport.yaml as part of Traefik deployment to both K1M1 and K2M1. This enables HTTP/1.1 backend connections for MediaService WebSocket s...
Add ServersTransport for MediaService WebSocket connections
Add media-websocket-transport ServersTransport resource to disable HTTP/2 for backend connections to MediaService. This is required for proper WebSocket upgrade...
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 ...
Restaurar o transporte WebSocket em SockJS
- Reverter para usar o transporte websocket (não votação) - WebSockets são padrão e devem funcionar corretamente - Foco na fixação do problema de conexão WebSoc...
Ignorar o transporte WebSocket no SockJS para evitar problemas HTTP/2
- Usar transportes xhr-streaming e xhr-polling em vez de websocket - Estes transportes funcionam com HTTP/1.1 e HTTP/2 sem necessidade de atualizações WebSocket...
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...
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...
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...
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...
Add media-websocket-upgrade middleware to force Upgrade header
- Add Upgrade: websocket header for WebSocket paths to fix HTTP/2 Extended CONNECT conversion - This ensures HTTP/2 WebSocket upgrade requests are properly conv...
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...
Desactivar o HTTP/2 para a ligação à infra- estrutura do MediaService
- Adicionar desactivarHTTP2: true to force HTTP/1.1 for backend connections - HTTP/2 Extended CONNECT não está corretamente convertendo cabeçalho Upgrade - Atua...
Configurar o esquema de serviço IngressRoute para suporte ao WebSocket
- Define esquema: http para garantir o tratamento HTTP/1.1 adequado para atualizações WebSocket - HTTP/2 Extended CONNECT precisa de conversão adequada para HTT...
Remova o manipulador de aperto de mão inválido e corrija a configuração do SockJS
- Remova o cancelamento do HandshakeHandler inválido (o método não existe) - Remover a chamada setSupressCors inválida (o método não existe) - Mantenha HttpSess...
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...
Configurar os transportes SockJS para lidar com problemas de atualização HTTP/2 WebSocket
- Configure explicitamente a ordem de transporte SockJS para preferir WebSocket, em seguida, voltar para xhr-streaming/xhr-polling - HTTP/2 Atualizações WebSock...
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...
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...
Como o que vês no transporte?
Tudo isso chega em seu espaço de trabalho por conta própria. Comece no plano gratuito e leia esta página novamente em um mês.
