Simplify to HTTPS:8443 only, remove dual port config
- MediaService runs ONLY on port 8443 (HTTPS) - No more Traefik routing for MediaService - Removed DualPortConfig complexity - All traffic (API + WebSocket) goe...
Use SSLHostConfig API for Tomcat SSL configuration
- Use SSLHostConfig and SSLHostConfigCertificate (correct Tomcat API) - Configure certificate via **************** - Fixes compilation errors with setAttribute/...
Use setAttribute for Tomcat SSL configuration
- Changed from setKeystoreFile/Pass/Type/Alias to setAttribute - Tomcat 10+ uses setAttribute for SSL properties - Fixes compilation errors
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...
Conectează-te la portul 8443 (extern) pe care se îndreaptă către NodePort 30843
- Router forwards extern 8443 to k1m1 NodePort 30843 - Browser folosește media.kamocrm.com:8443 - NodePort intern este 30843 (Raza Kubernetes valid)
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 -> ...
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...
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
Conectaţi-vă la portul MediaService 8443 pentru WebSocket
- Actualizare conexiune WebSocket pentru a utiliza media.kamocrm.com:8443 - Bypasses Traefik pentru traficul numai pe WebSocket - Foloseste conexiunea directa H...
Expose MediaService on port 8443 for WebSocket over HTTPS/HTTP1.1
- Added NodePort service on 8443 for direct WebSocket access (bypasses Traefik) - Mount wildcard-kamocrm-com SSL certificate - Init container converts PEM to PK...
Elimina restrictia de transport numai pe WebSocket pentru compatibilitate HTTP/2
- Browser WebSocket API nu suporta HTTP/2 (RFC 8441 nu este implementat) - WebSocket nativ necesită HTTP/1.1 Upgrade care nu reușește peste HTTP/2 - Să SockJS a...
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
Utilizați doar transportul WebSocket (dezactivează sondajele XHR)
- Transporturi SockJS modificate de la [websocket, xhr-streaming, xhr-polling] la [websocket] - Elimină retragerea la sondajul XHR - Forte conexiune WebSocket p...
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 ...
Conectați WebSocket direct la media.kamocrm.com
- Reversed to original approach: conect to media.* subdomeniu direct - Eliminarea complexității inutile de aceeași origine - Eliminat /ws bypass din mijlocware ...
Elimină trimiterea explicită de namespace din kamowsmedia-service
- Ambele servicii sunt în același namespace (kamo) - Nu este nevoie de referinţă explicită de namespace - Evita potentiale probleme inter-namespace
Elimină /ws rescrie de la următoarea. config (handled by Traefik)
- Eliminat Next.js rescrie pentru /ws căi - rutare WebSocket acum manipulate la nivelul Traefik IngressRoute - Traefik routes intern.kamocrm.com/ws -> MediaServ...
Solicitări direct către MediaService via Traefik
- Adauga trasee dedicate pentru /ws trasee in IngressRoute - Trasee interne.kamocrm.com/ws -> MediaService direct - Foloseste aceleasi servere Transportare ca m...
Permite /ws WebSocket obiective fără redirecționare aut
- Calea Adăugat /ws la middleware bypass - SockJS trebuie să se conecteze la /ws/info fără redirecţionare - Conexiunile WebSocket vor avea în continuare *** coo...
Schimbă conexiunea WebSocket cu aceeași origine
- Schimbat de la media.kamocrm.com la aceeaşi origine (intern.kamocrm.com) - Evita problemele legate de conexiunea WebSocket - Adăugat Next.js rescrie regula pe...
Adaugă căi proxy API pentru criteriile de evaluare WebRTC
- Adăugat /api/webrtc/config proxy la MediaService - Adăugat /api/webrtc/token proxy pentru autentificare Janus - Adăugat /api/webrtc/call/inițiate, responde, e...
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...
Elimină proprietatea coder invalid de la getDisplayMedia
- Folosind video simplu: adevarat pentru partajarea ecranului - Construcţia ar trebui să reuşească
Rezolvați eroarea de construire - înlocuiți TelefonOff cu CallEnd
- Pictograma telefonică nu există în @mui/icons-material - Folosind CallEnd care este pictograma MUI corectă - Elimină fișierele duplicate neutilizate (ChatBoxW...
Apel complet peer-to-peer WebRTC cu semnalizare
- Cârlig WEBRTC cu semnalizare completă - Semnalizare WebSocket integrata (oferte, raspunsuri, candidati ICE) - Adauga notificări de apel primite cu butoane ras...
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...
Adaugă integrarea Janus WebRTC pentru apeluri audio/video
- Utilizarea adăugată JanusWebrTC cârlig pentru managementul apelurilor WebRTC - Added VideoCallPanel component for in-chat video show - Integrat cu ChatBox pen...
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 ...
Restaurare WebSocket transport în SockJS
- Revenind la utilizarea transportului websocket (nu sondaje) - WebSockets sunt standard și ar trebui să funcționeze în mod corespunzător - Concentrează-te pe f...
Skip WebSocket transport în SockJS pentru a evita probleme HTTP/2
- Utilizați xhr-streaming și xhr-polling transporturi în loc de websocket - Aceste transporturi lucreaza atat cu HTTP/1.1 cat si cu HTTP/2 fara a necesita upgra...
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...
Ca ceea ce vezi de transport maritim?
Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.