Hubungkan ke MediaService port 8443 untuk WebSocket
- Update Koneksi WebSocket untuk menggunakan media.kamocrm.com: 8443 - Melewati Traefik untuk WebSocket- hanya lalu lintas - Menggunakan koneksi HTTPS / HTTP1.1...
Hapus WebSocket-hanya pembatasan transport untuk kompatibilitas HTTP / 2
- Browser WebSocket API tidak mendukung HTTP / 2 (RFC 8441 tidak diimplementasikan) - Native WebSocket membutuhkan HTTP / 1.1 Upgrade yang gagal melewati HTTP /...
Gunakan WebSocket-only transport (non-aktifkan TPS XHR)
- Diubah Transport SockJS dari [websocket, xhr-streaming, xhr-polling] ke [websocket] - Hapus mundur ke TPS XHR - Kekuatan koneksi WebSocket murni - Gagal cepat...
Hubungkan WebSocket langsung ke media.kamocrm.com
- Dikembalikan ke pendekatan asli: terhubung ke media. * subdomain secara langsung - Dibuang sama - asal kompleksitas - Dihapus / ws bypass dari middleware (tid...
Hapus referensi namespace eksplisit dari layanan kamowsmeaa-
- Kedua layanan berada dalam namespace yang sama (kamo) - Referensi namespace explisit tidak diperlukan - Menghindari potensi masalah antar-ruang nama
Hapus / ws menulis ulang dari berikutnya. config (ditangani oleh Traefik)
- Removed Next.js rewrite for / ws paths - WebSocket routing sekarang ditangani di tingkat Traefik IngressRoute - Rute traefik proprial.kamocrm.com / w - > Medi...
Route / ws meminta langsung ke MediaService via Traefik
- Ditambahkan rute berdedikasi untuk jalur / ws di IngressRoute - Routes provenal.kamocrm.com / w - > MediaService secara langsung - Gunakan ServersTransport ya...
Ijinkan / w Endpoints WebSocket tanpa redirect auth
- Alamat ditambahkan / ws ke bypass middleware - SockJS perlu menyambung ke / w / info tanpa mengarahkan - Koneksi WebSocket akan tetap memiliki cookie * * - Ma...
Ubah koneksi WebSocket ke asal-same-
- Diubah dari media.kamocrm.com ke asal yang sama (convenal.kamocrm.com) - Menghindari masalah sambungan WebSocket - Ditambahkan aturan reply Next.js ke proxy /...
Tambahkan rute proksi API bagi titik akhir WebRTC
- Ditambahkan / api / webrtc / config proxy ke MediaService - Tambahkan / api / webrtc / token proksi untuk otentikasi Janus - Ditambahkan / api / webrtc / call...
Hapus properti koder tidak valid dari getDisplayMedia
- Menggunakan video sederhana: benar untuk berbagi layar - Membangun sekarang harus berhasil
Resolve build error - menggantikan PhoneOff dengan Callen
- Ikon PhoneOff tidak ada dalam material @ mui / icons- - Menggunakan Callen End yang merupakan ikon MUI yang benar - Menghapus berkas duplikat yang tak terpaka...
Lengkap peer- to-peer WebRTC memanggil dengan sinyal
- Menambahkan kait useWebRTC dengan dukungan sinyal penuh - Sinyal WebSocket terpadu (menawarkan, menjawab, calon ICE) - Tambahkan pemberitahuan panggilan masuk...
Tambahkan integrasi Janus WebRTC untuk panggilan audio / video
- Ditambahkan kait useJanusWebRTC untuk manajemen panggilan WebRTC - Ditambahkan Komponen VideoCallPanel untuk tampilan video in- chat - Terintegrasi dengan Cha...
Kembalikan transportasi WebSocket dalam SockJS
- Revert untuk menggunakan transport websocket (bukan polling) - WebSockets adalah standar dan harus bekerja dengan baik Fokus untuk memperbaiki isu koneksi Web...
Lewati transportasi WebSocket dalam SockJS untuk menghindari masalah HTTP / 2
- Gunakan xhr-streaming dan xhr-polling transportasi bukan websocket - Transportasi ini bekerja dengan baik HTTP / 1.1 dan HTTP / 2 tanpa membutuhkan upgrade We...
Atur transportasi SockJS untuk menangani masalah peningkatan WebSocket HTTP / 2
- Secara eksplisit mengatur urutan transportasi SockJS untuk lebih menyukai WebSocket, kemudian mundur ke xhr-streaming / xhr-polling - HTTP / 2 Upgrade WebSock...
Pastikan rute pesan dikenali oleh Next.js
- Ditambah logging untuk memverifikasi rute sedang dipukul - Berkas rute ada dan struktur yang benar untuk Next.js 15
Hapus properti 'aktif' yang tidak ada dari STOMP Log klien
- STOMP Klien tidak memiliki properti 'aktif' - Hanya memeriksa properti 'terhubung' yang merupakan indikator keadaan yang benar
Hapus penanganan onWebSocketError yang tidak didukung dari klien StoMP
- onWebSocketError bukan properti yang valid dalam ClientOptions - Penangan galat SockJS (onerror, onclose) telah menyediakan penanganan kesalahan
Tambahkan galat WebSocket komprehensif penanganan dan log
- Ditambahkan penanganan galat SockJS (onopen, onerror, onclose) untuk menangkap kegagalan koneksi - Ditambah pendeteksi timeout koneksi (10 detik) untuk mengid...
Hapus solusi agen HTTPS yang salah
- Mengembalikan perubahan yang melewati validasi sertifikat - Sertifikat dikeluarkan oleh layanan auto- cert (Mari Enkripsi), bukan self-signed - Perlu menyelid...
Gunakan HTTPS dengan agen yang menerima sertifikat yang ditandatangani sendiri
- Terbalik untuk selalu menggunakan HTTPS (bukan HTTP) - Ditambahkan agen HTTPS dengan penolakan Tidak sah: salah untuk certs self-signed - This allowed server-...
Gunakan nama layanan Kubernetes bagi MediaService untuk menghindari isu cert SSL
- Server- side Next.js route now use * * * * * * * * * * * * * * - Ini menghindari sendiri-signed sertifikat error ketika menghubungkan ke https: / / media.kamo...
Hapus lama / api / keamanan / media / rute yang mencegat permintaan
- Rute lama diteruskan ke APIService yang tidak lagi memiliki titik akhir media - Semua permintaan media harus melalui / api / media / rute langsung ke MediaSer...
Tambahkan galat terinci saat log untuk pembuatan sesi MediaService
- Log URL MediaService dipanggil - Tajuk respon log - Enhanced error logging with full error details - Sertakan URL dalam respon kesalahan untuk debug
Tambahkan aksi / checkout @ v4 untuk menyebarkan _ k1m1 pekerjaan juga
Revert ke aksi / checkout @ v4 untuk mencocokkan proyek Next.js lainnya
- Hapus kompleks manual checkout logika yang menyebabkan hang - Gunakan standar aksi / checkout @ v4 seperti kamo-login dan kamo-register - Sederhanakan konteks...
Gunakan clone dangkal dengan timeout untuk mencegah menggantung
- Gunakan --depth 1 untuk kloning lebih cepat - Tambah timeout (120-an untuk dangkal, 300s untuk penuh) - Fallback ke clone penuh jika dangkal gagal - Ambil kom...
Ubah ke direktori yang valid sebelum git clone untuk menghindari error direktori kerja
- Ubah ke / tmp atau sebelum menghapus / mengkloning area kerja - Hanya menghapus direktori jika ada tetapi bukan sebuah git repo - Prevents 'Tidak dapat membac...
Use hardcoded repository URL and set GITHUB_WORKSPACE env var
- Use direct repository URL to avoid DNS/hostname resolution issues - Set GITHUB_WORKSPACE environment variable for subsequent steps - Use env var in Docker bui...
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
Handle anggota ID sebagai string konsisten untuk memperbaiki deteksi penulis pesan
Update NavTop and NavTopPanel to accept string or number member IDs
Terima ID anggota sebagai string atau nomor untuk menangani kehilangan presisi
Tambahkan log ke alur ID anggota trek dari Anggota Butir ke ChatDock
Seperti apa yang Anda lihat pengiriman?
Semua pembaruan ini secara otomatis mendarat di ruang kerja Anda. Mulai bebas dan menontonnya tumbuh minggu demi minggu.