Додати інтеграцію Janus WebRTC для аудіо / відео дзвінків
- Додано використанняJanusWebRTC гак для керування викликами WebRTC - Додано компонент VideoCallPanel для відображення відео в чаті - Інтегрований з чатбоксом д...
Відновлення WebSocket транспорту в SockJS
- Перевернутися до використання websocket транспорту (не опитування) - WebSockets є стандартними і повинні працювати належним чином - Зосередок на фіксуванні ак...
Пропустити транспорт WebSocket у SockJS, щоб уникнути проблем HTTP/2
- Використання хр-стрімів і хр-поллінгів замість websocket - Ці транспортні засоби працюють з HTTP / 1.1 та HTTP / 2 без використання оновлення WebSocket - Уник...
Налаштування транспорту SockJS для обробки HTTP / 2 WebSocket оновлення
- Виключно налаштуйте транспорт SockJS для того, щоб віддати перевагу WebSocket, потім знизіть до Xhr-streaming/xhr-polling - Оновлення HTTP / 2 WebSocket може ...
Забезпечити маршрут повідомлення визнається Next.js
- Додана реєстрація для перевірки маршруту - Маршрутний файл існує і структура правильний для Next.js 15
Видаліть невибагливе майно "активний" від STOMP Реєстрація клієнтів
- СТОМП Клієнт не має права власності - Тільки перевірте майно, яке є правильним показником стану
Видалити непідтримуваний наWebSocketError обробник від STOMP клієнт
- наWebSocketError не є дійсним майном у Клієнті - SockJS похибки (onerror, onclose) вже забезпечують обробку помилок
Додайте комплексне управління похибкою WebSocket та журнал
- Додано SockJS помилки обробників (відкрито, onerror, onclose) для зловживання несправностей з'єднання - Додано виявлення часу з'єднання (10 секунд) для виявле...
Видалити неправильний HTTPS агент робота
- Перевернуті зміни, які перенесли перевірку сертифікату - Сертифікати видаються автоматично-сертифікаційною службою (шифрування Let's), не самопризначеною - По...
Використовуйте HTTPS з агентом, який приймає сертифікати
- Перевернуто завжди використовувати HTTPS (не HTTP) - Додано HTTPS агент з відхиленнямНесанкціонований: false для самопризначених сертитів - Це дозволяє на сер...
Використовуйте ім'я сервісу Kubernetes для MediaService, щоб уникнути проблем сертифікації SSL
- Server-side Next.js маршрути тепер використовувати **************** - Це дозволяє уникнути помилок самопризначених сертифікатів при підключенні до https://med...
Зняти старі /api / захист / медіа / маршрути, які перехоплюють запити
- Старі маршрути були переадресовані в APIService, які більше не мають кінцевих точок - Усі медіа-запити повинні пройти через /api/media/довідки безпосередньо в...
Додайте детальний журнал про помилки для створення сеансу MediaService
- URL-адреса Log MediaService - Головні редактори - Розширений журнал помилок з повними деталями помилок - Включіть URL-адресу в відповідь про помилку для видал...
Зворотній зв'язок/checkout@v4 для узгодження інших проектів Next.js
- Вилучити складну логіку ручного виїзду, яка викликає повіски - Використовуйте стандартні дії/checkout@v4, як kamo-login і kamo-register - Спрощуйте контекст п...
Використовуйте неглибокий клон, щоб запобігти висихання
- Використовуйте - глибиною 1 для швидкого затискання - Додати час (120-ті рр., 300-ті роки для повного) - Повернутися до повного клону, якщо не буде - Витратит...
Зміна дійсного каталогу до git clone, щоб уникнути помилки каталогу
- Змінити /тмп або / перед видаленням / блокування робочого простору - Тільки видалити каталог, якщо він існує, але не є git repo - Запобігає 'Неможливо прочита...
Використовуйте жорсткийкодований репозиторій URL і встановити GITHUB WORKSPACE var
- Використовуйте прямий репозиторій URL, щоб уникнути проблем з роздільною здатністю DNS/hostname - встановити GITHUB WORKSPACE змінну для наступних кроків - Ви...
Використовуйте git clone безпосередньо замість відновлення на порожній робочому просторі
- Репозиторій Clone за допомогою git безпосередньо з URL-адресою репозиторій - Ручка як свіже клон і існуючі репозитори - Використовуйте робочу спрямованість дл...
Спрощуйте всі етапи оформлення - видаліть git операції, які висить
- Видаліть git fetch/reset/clean від розгортання робочих місць - Forgejo runner вже має код перевірки - Просто перевірте GITHUB WORKSPACE діє
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
Увімкніть ідентифікатори користувачів як рядки, послідовно зафіксуйте виявлення автора повідомлення
Update NavTop and NavTopPanel to accept string or number member IDs
Прийняти ідентифікатори учасника як рядок або номер для обробки втрати точності
Додати журнал для відстеження потоку ідентифікатора учасника з членомItem до чатDock
Відправляйте, щоб уникнути втрати точності JavaScript з великою кількістю
Correct TypeScript const assertion for conditional author assignment
Clarify that messages are saved to database even when recipient is offline
Improve cleanup to handle typing indicator subscription properly
Add missing typingIndicatorCallbackRef declaration and improve cleanup
Improve title handling and WebSocket subscription timing for messages and typing indicators
Include memberId in typing indicator and display typing status
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
