Route ALL WebRTC API richieste alla porta 8443
- Aggiornato tutti i percorsi API WebRTC da utilizzare media.{domain}:8443 - Non usare più Traefik per gli endpoint WebRTC - Configurazione API e WebSocket
Route ALL MediaService richieste al porto 8443 (bypass Traefik)
- Aggiornato tutti i media API percorsi da utilizzare media.{domain}:8443 - Non usare più Traefik per MediaService - Sia API che WebSocket vanno direttamente al...
Collegare alla porta 8443 (esterno) che si dirige a NodePort 30843
- Router in avanti esterno 8443 a k1m1 NodePort 30843 - Browser utilizza media.kamocrm.com:8443 - Interno NodePort è 30843 (Kubernetes gamma valida)
Connessione alla porta MediaService 8443 per WebSocket
- Collegamento WebSocket aggiornato per usare media.kamocrm.com:8443 - Bypasses Traefik per traffico WebSocket - Utilizza la connessione HTTPS/HTTP1.1 diretta a...
Rimuovere la restrizione di trasporto solo WebSocket per la compatibilità HTTP/2
- WebSocket API non supporta HTTP/2 (RFC 8441 non implementato) - Native WebSocket richiede HTTP/1.1 Aggiornamento che non supera HTTP/2 - Let SockJS auto-selec...
Utilizzare il trasporto WebSocket-only (disable XHR polling)
- Cambio di trasporto SockJS da [websocket, xhr-streaming, xhr-polling] a [websocket] - Rimuove l'errore a XHR polling - Forza connessione WebSocket pura - Fa i...
Collegare WebSocket direttamente a media.kamocrm.com
- Ritornato all'approccio originale: collegarsi ai media.* subdomini direttamente - Rimozione della complessità non necessaria dell'origine - Rimuoveto /ws bypa...
Rimuovere il riferimento esplicito namespace da kamowsmedia-service
- Entrambi i servizi sono nello stesso namespace (kamo) - Riferimenti espliciti namespace non necessari - Evita potenziali problemi trasversali
Rimuovere /ws riscrivere dal prossimo. config (a cura di Traefik)
- Rimuoveto Next.js riscrittura per /ws percorsi - WebSocket routing ora gestito a livello Traefik IngressRoute - Traefik percorsi internal.kamocrm.com/ws -> Me...
Route /ws richiede direttamente MediaService via Traefik
- Aggiunto il percorso dedicato per /ws percorsi in IngressRoute - Routes internal.kamocrm.com/ws -> MediaService direttamente - Utilizza gli stessi serverTrasp...
Consentire /ws WebSocket endpoints senza auth redirect
- Aggiunto /ws percorso di bypass middleware - SockJS ha bisogno di connettersi a /ws/info senza reindirizzare - Le connessioni WebSocket avranno ancora un cook...
Cambia connessione WebSocket con lo stesso indirizzo
- Cambiato da media.kamocrm.com alla stessa origine (internal.kamocrm.com) - Evita problemi di connessione WebSocket cross-origin - Aggiunto Next.js rewrite reg...
Aggiungi percorsi proxy API per endpoint WebRTC
- Aggiunto /api/webrtc/config proxy a MediaService - Aggiunto /api/webrtc/token proxy per l'autenticazione Janus - Aggiunto /api/webrtc/call/initiate, risposta,...
Rimuovi proprietà del coder non valide da getDisplayMedia
- Utilizzo di un semplice video: vero per la condivisione dello schermo - La costruzione dovrebbe avere successo
Risolvere l'errore di costruzione - sostituire PhoneOff con CallEnd
- PhoneOff icona non esiste in @mui/icons-material - Utilizzando CallEnd che è l'icona MUI corretta - File duplicati non utilizzati (ChatBoxWithWebRTC, VideoCal...
Chiamata completa peer-to-peer WebRTC con segnale
- Aggiunta usWebRTC gancio con supporto di segnale completo - Segnalazione integrata di WebSocket (offerta, risposte, candidati ICE) - Aggiunto le notifiche di ...
Aggiungi Janus WebRTC integrazione per le chiamate audio/video
- Aggiunto useJanusWebRTC gancio per WebRTC call management - Aggiunto componente VideoCallPanel per display video in-chat - Integrato con ChatBox per un'esperi...
Ripristinare il trasporto WebSocket a SockJS
- Revertire l'utilizzo del trasporto websocket (non inquinante) - I WebSockets sono standard e dovrebbero funzionare correttamente - Concentrati sul fissaggio d...
Salta il trasporto WebSocket in SockJS per evitare problemi HTTP/2
- Utilizzare xhr-streaming e xhr-polling trasporti invece di websocket - Questi trasporti funzionano sia con HTTP/1.1 che HTTP/2 senza richiedere aggiornamenti ...
Configurare i trasporti SockJS per gestire i problemi di aggiornamento HTTP/2 WebSocket
- Configurare esplicitamente l'ordine di trasporto SockJS per preferire WebSocket, quindi fallback a xhr-streaming/xhr-polling - Gli aggiornamenti HTTP/2 WebSoc...
Assicurare il percorso dei messaggi è riconosciuto da Next.js
- Aggiunto logging per verificare il percorso è stato colpito - Il file di percorso esiste e la struttura è corretta per Next.js 15
Rimuovere la proprietà "attiva" non esistente da STOMP Registrazione clienti
- STOMP Il cliente non ha una proprietà "attiva" - Controllare solo la proprietà "connessa" che è l'indicatore di stato corretto
Rimuovere il gestore non supportato suWebSocketError dal client STOMP
- onWebSocketError non è una proprietà valida in ClientOptions - I gestori di errori SockJS (onerror, onclose) già forniscono la gestione degli errori
Migliorare la gestione del timeout di connessione con la pulizia ref
Aggiungi gestione e registrazione degli errori WebSocket complete
- Aggiunto I gestori di errore SockJS (onopen, onerror, onclose) per catturare guasti di connessione - Rilevamento di timeout di connessione aggiunto (10 second...
Rimuovere il corretto funzionamento dell'agente HTTPS
- Modifiche convertite che superano la convalida del certificato - I certificati sono emessi dal servizio di auto-cert (crittografia di Let), non auto-firmato -...
Utilizzare HTTPS con agente che accetta certificati auto-firmati
- Revertito per utilizzare sempre HTTPS (non HTTP) - Aggiunto agente HTTPS con rifiutoUnauthorized: falso per auto-firmato certs - Questo consente alle vie serv...
Utilizzare il nome di servizio Kubernetes per MediaService per evitare problemi SSL cert
I percorsi di Server-side Next.js ora usano il *****************************************************************************************************************...
Rimuovere vecchi /api/security/media/ percorsi che intercettavano richieste
- I vecchi percorsi stavano inoltrando APIService che non ha più endpoint multimediali - Tutte le richieste dei media devono passare attraverso /api/media/ perc...
Aggiungi la registrazione dettagliata degli errori per la creazione di sessione MediaService
- Registra l'URL di MediaService chiamato - Intestazioni di risposta di registro - Registrazione degli errori migliorata con dettagli di errore completi - Inclu...
Ritorna alle azioni/checkout@v4 per abbinare altri progetti Next.js
- Rimuovere la logica di controllo manuale complessa che stava causando blocchi - Utilizzare azioni standard/checkout@v4 come kamo-login e kamo-register - Sempl...
Utilizzare clone superficiale con timeout per evitare appendere
- Uso -profondità 1 per la clonazione più rapida - Aggiunga il timeout (120 per poco, 300 per pieno) - Fallback a clone pieno se non riesce poco - Prestare comm...
Modifica della directory valida prima di git clone per evitare l'errore della directory di lavoro
- Cambiare a /tmp o / prima di rimuovere/clonare spazio di lavoro - Rimuovere la directory solo se esiste ma non è un repo git - Previene l'errore 'Impossibile ...
Utilizzare URL del repository hardcoded e impostare GITHUB WORKSPACE env var
- Utilizzare l'URL del repository diretto per evitare problemi di risoluzione DNS/hostname - Impostare la variabile di ambiente GITHUB WORKSPACE per i passaggi ...
Use git clone directly instead of relying on empty workspace
- Clone repository using git directly with repository URL - Handle both fresh clone and existing repository cases - Use working-directory for Docker build actio...
Simplify all checkout steps - remove git operations that hang
- Remove git fetch/reset/clean from deploy jobs - Forgejo runner already has code checked out - Just verify GITHUB_WORKSPACE is valid
Simplify checkout step - remove git clone that was hanging
- Remove git clone logic that was causing 20+ minute hangs - Forgejo runner already has code checked out, just verify directory - Remove unnecessary git fetch/r...
Improve checkout and Docker build context handling
- Add proper repository cloning if not already checked out - Verify Dockerfile exists before building - Use absolute paths for Docker build context - Fix workin...
Replace actions/checkout with manual git checkout to avoid DNS issues
- Replace actions/checkout@v4 with manual git checkout commands - Forgejo runner already has code checked out, just need to ensure clean state - Fixes DNS looku...
Add direct MediaService routes via media.{domain} for WebSocket support
- Create new /api/media/* routes that forward directly to media.{domain} - These routes bypass APIService to allow secure WebSocket connections - MediaService r...
Add logging for subscription request to backend
- Log when subscription request is sent to /app/chat/subscribe - Helps verify if subscription requests are reaching the backend
Add detailed logging for subscribe function
- Log when subscribe() is called and current connection state - Log client existence and connection status - Helps diagnose why subscriptions aren't being creat...
Add detailed WebSocket connection logging
- Enhanced logging for WebSocket connection success/failure - Log connection frame details on successful connection - Log detailed STOMP error information - Hel...
Extract large IDs from raw JSON to prevent JavaScript precision loss
- Extract memberID, userID, orgID, and securityOrgId from raw JSON string before parsing - Prevents precision loss for IDs > Number.MAX_SAFE_INTEGER (9007199254...
Serialize memberID and other IDs as strings in user-info API to prevent JavaScript precision loss
Complete memberId type updates in useChatWebSocket for string/number compatibility
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.