Commit Graph

182 Commits

Author SHA1 Message Date
dalbodeule
5223cbe2b2 [feature] song list websocket service fixed. 2025-05-18 08:55:01 +09:00
dalbodeule
1465716e72 [hotfix] hotfix on register and activate logics. 2025-05-16 00:54:43 +09:00
dalbodeule
5fa04a6725 [hotfix] hotfix on manage users. 2025-05-16 00:29:50 +09:00
dalbodeule
f65c446bed [hotfix] hotfix on some codes. 2025-05-16 00:25:28 +09:00
dalbodeule
a896269087 [refactor] user and live stream handling logic
Replaced ChzzkUserCache with event-based user fetching for cleaner architecture. Integrated new ChzzkUserFindEvent and ChzzkUserReceiveEvent to handle user data retrieval. Removed old utility methods and streamlined live stream status checks with updated APIs.
2025-05-15 04:57:17 +09:00
dalbodeule
101db7d20c [refactor] chzzk4j update to 0.1.1 2025-05-13 21:31:17 +09:00
dalbodeule
3c3b9a79a2 debug chzzk login 4 2025-05-13 21:25:57 +09:00
dalbodeule
61a5f985c1 Refactor: replace songListScope with appropriate scopes
Replaced `songListScope` with `songScope` in `WSSongRoutes` and `timerScope` in `WSTimerRoutes` to better reflect their respective purposes. Improves code clarity and consistency in scope usage.
2025-04-24 17:48:11 +09:00
dalbodeule
aa95976005 Refactor WebSocket song list handling and improve session logic
Replaced individual WebSocket session management with `SessionHandler` to centralize and streamline logic. Improved code readability, reliability, and maintainability by reducing redundancy and encapsulating session and request handling in dedicated classes. Added retry mechanisms, acknowledgment handling, and better application shutdown handling.
2025-04-24 17:45:25 +09:00
dalbodeule
c5a98943c0 Refactor WebSocket ACK handling and improve message retries
Introduced `waitForAck` to centralize ACK handling logic and updated retry mechanism in `sendWithRetry` to improve reliability and readability. Cleaned up error handling in WebSocket session management and ensured proper cleanup of resources. These changes enhance maintainability and robustness of the WebSocket song list routes.
2025-04-24 17:08:12 +09:00
dalbodeule
8230762053 Refactor WebSocket handlers and add ACK-based message flow
Consolidated coroutine scopes into `songListScope` and `timerScope` for better management across WebSocket routes. Introduced ACK (acknowledgment) handling for reliable message delivery with retries and timeouts. Updated session handling for multiple WebSocket routes to improve code maintainability and consistency.
2025-04-24 16:56:49 +09:00
dalbodeule
d07cdb6ae8 Cancel route scope on application stop and simplify ACK handling.
Added a monitor to cancel the route scope when the application stops, ensuring proper resource cleanup. Removed the timeout logic in the ACK handling method, simplifying the flow while maintaining error handling.
2025-04-24 16:37:11 +09:00
dalbodeule
9c15c8f10d Remove SongListWebSocketManager and simplify wsSongListRoutes
The SongListWebSocketManager class and its associated logic were removed to streamline the codebase. The wsSongListRoutes function was updated accordingly to no longer require the manager as a parameter.
2025-04-24 16:26:25 +09:00
dalbodeule
5a7f78ff3e Refactor WebSocket route to use shared CoroutineScope
Introduced a shared `routeScope` with `SupervisorJob` for better coroutine management across WebSocket routes. This replaces ad-hoc CoroutineScope creation, preventing unnecessary scope overhead and supporting centralized cancellation. Mutexes were added for session and song-related operations to ensure thread safety.
2025-04-24 16:23:55 +09:00
dalbodeule
7a84a9e437 Configure SongListWebSocketManager in wsSongListRoutes.
This change adds a `SongListWebSocketManager` instance with a logger to the `wsSongListRoutes` setup. It improves manageability and ensures better logging for WebSocket interactions in the song list route.
2025-04-24 16:01:16 +09:00
dalbodeule
02cede87f8 Add SongListWebSocketManager and refactor WebSocket routes
Introduced SongListWebSocketManager for managing WebSocket sessions, including ping-pong handling and retry mechanisms. Refactored WSSongListRoutes to delegate session management and simplify logic by leveraging the new manager class.
2025-04-24 15:58:56 +09:00
dalbodeule
17d8065a34 Fix session cleanup in WebSocket routes
Add missing `finally` blocks to ensure session removal in WebSocket routes after exceptions. This prevents potential memory leaks and ensures proper resource cleanup.
2025-04-24 15:01:12 +09:00
dalbodeule
0e8462eaf1 Handle WebSocket session removal on channel closure
Add `removeSession` calls in WebSocket exception handling blocks to ensure proper session cleanup when a `ClosedReceiveChannelException` occurs. Prevents potential resource leaks and ensures consistency across WebSocket routes.
2025-04-24 14:56:00 +09:00
dalbodeule
83cb68b63f **Remove redundant session cleanup in WebSocket error handlers**
Removed unnecessary `removeSession` calls from WebSocket `finally` blocks as they are either handled elsewhere or no longer needed. This simplifies the error handling flow and ensures consistency across WebSocket route implementations.
2025-04-24 14:51:28 +09:00
dalbodeule
e653af7853 debug chzzk login 3 2025-01-09 00:04:52 +09:00
dalbodeule
9cf85a7bef debug chzzk login 2 2025-01-08 23:58:11 +09:00
dalbodeule
2c686e5777 debug chzzk login 2025-01-08 23:42:21 +09:00
dalbodeule
d3ed6c2d86 login method changed to chzzk login 2025-01-08 23:13:04 +09:00
dalbodeule
eccf1a29bc add botIsDisabled, welcomeMessageDisabled. 2024-12-09 14:47:41 +09:00
dalbodeule
4fca9df9c2 debugs... 4 2024-11-25 20:04:50 +09:00
dalbodeule
c14fc53dee debugs... 3 2024-11-25 19:58:17 +09:00
dalbodeule
768eadd561 debugs... 2024-11-25 19:56:22 +09:00
dalbodeule
9396e69570 debugs... 2024-11-25 18:50:23 +09:00
dalbodeule
8dd8f33cdd dependencies update 2024-11-16 20:35:30 +09:00
dalbodeule
ca2089631a debug on WSSongListRoutes.kt
- debug re-tx logics
2024-09-24 10:48:50 +09:00
dalbodeule
c9ceaf01fc debug on WSSongListRoutes.kt
- debug re-tx logics
2024-09-24 10:42:39 +09:00
dalbodeule
94e226fcab debug on WSSongListRoutes.kt
- add re-tx logics
- add ACK enum value
- else other improve
2024-09-24 10:35:11 +09:00
dalbodeule
3e0246771e debug on ApiCommandRoutes.kt, SongList.kt
- ApiCommandRoutes.kt is CommandReloadEvent post 4 times.
- SongList.kt is song_list.req_name length 20 to 80(byte)
2024-09-14 18:36:24 +09:00
dalbodeule
c0cec43f39 debug on loading (7x) 2024-08-28 22:16:14 +09:00
dalbodeule
b7985ff72c debug on loading (6x) 2024-08-28 21:42:46 +09:00
dalbodeule
be057c59e1 debug on loading (5x) 2024-08-28 21:37:25 +09:00
dalbodeule
5450d5039a debug on loading (4x) 2024-08-28 21:26:24 +09:00
dalbodeule
ae850b93d0 debug on loading (3x) 2024-08-28 21:20:43 +09:00
dalbodeule
534aaecb6e debug on eagerLoading (1x) 2024-08-28 21:01:35 +09:00
dalbodeule
a7069046f6 managers relation is fixed (9x) 2024-08-28 20:39:23 +09:00
dalbodeule
593546c89b managers relation is fixed (8x) 2024-08-28 17:58:35 +09:00
dalbodeule
3e0f63a3d1 managers relation is fixed (4x) 2024-08-28 17:24:02 +09:00
dalbodeule
5d9b6a7e5e managers relation is fixed (3x) 2024-08-28 17:16:48 +09:00
dalbodeule
447858a48c managers relation is fixed 2024-08-28 16:21:34 +09:00
dalbodeule
f1dc591b55 some fix on Manager functions. 2024-08-28 15:55:47 +09:00
dalbodeule
3806b0f824 some fix on wsTimerRoutes 2024-08-28 10:42:41 +09:00
dalbodeule
b87cf8cbfb some fix on wsSongListRoutes
- song remove from list(database) logic add
2024-08-24 15:08:05 +09:00
dalbodeule
9f4f8e84aa some fix on WSSongListRoutes
- add delUrl to SongResponse
2024-08-24 14:32:38 +09:00
dalbodeule
22bbd05aff some fix on SongSResponseDTO
- add @Serializable annotation
2024-08-24 13:57:59 +09:00
dalbodeule
36d0ed82d6 fix SongLists
- add currentSong object
- change some event, dto.
2024-08-24 13:31:50 +09:00