From 4800f8fb706a092a38255ee70904227238b2a6f6 Mon Sep 17 00:00:00 2001 From: lolka1333 Date: Mon, 5 Jan 2026 05:50:40 +0100 Subject: feat: Real-time Outbound Traffic, UI Improvements & Fix (#3629) * Refactor HTML and JavaScript for improved UI and functionality - Cleaned up JavaScript methods in subscription.js for better readability. - Updated inbounds.html to clarify traffic update handling and removed unnecessary comments. - Enhanced xray.html by correcting casing in routingDomainStrategies. - Added mobile touch scrolling styles in page.html for better tab navigation on small screens. - Streamlined vless.html by removing redundant line breaks and improving form layout. - Refined subscription subpage.html for better structure and user experience. - Adjusted outbounds.html to improve button visibility and functionality. - Updated xray_traffic_job.go to ensure accurate traffic updates and real-time UI refresh. * Refactor client traffic handling in InboundService - Updated addClientTraffic method to initialize onlineClients as an empty slice instead of nil. - Improved clarity and consistency in handling empty onlineUsers scenario. * Add WebSocket support for outbounds traffic updates - Implemented WebSocket connection in xray.html to handle real-time updates for outbounds traffic. - Enhanced xray_traffic_job.go to retrieve and broadcast outbounds traffic updates. - Introduced MessageTypeOutbounds in hub.go for managing outbounds messages. - Added BroadcastOutbounds function in notifier.go to facilitate broadcasting outbounds updates to connected clients. --------- Co-authored-by: lolka1333 --- web/websocket/hub.go | 1 + 1 file changed, 1 insertion(+) (limited to 'web/websocket/hub.go') diff --git a/web/websocket/hub.go b/web/websocket/hub.go index 187ebb6f..7ee93405 100644 --- a/web/websocket/hub.go +++ b/web/websocket/hub.go @@ -20,6 +20,7 @@ const ( MessageTypeInbounds MessageType = "inbounds" // Inbounds list update MessageTypeNotification MessageType = "notification" // System notification MessageTypeXrayState MessageType = "xray_state" // Xray state change + MessageTypeOutbounds MessageType = "outbounds" // Outbounds list update ) // Message represents a WebSocket message -- cgit v1.2.3