From 3e8fc59213e8567715affb8bff4e398a1f7f7fbc Mon Sep 17 00:00:00 2001 From: mhsanaei Date: Tue, 3 Dec 2024 22:07:58 +0100 Subject: [PATCH] WebSocket: Add heartbeatPeriod --- web/assets/js/model/inbound.js | 6 +++++- web/assets/js/model/outbound.js | 10 +++++++++- web/html/xui/form/outbound.html | 3 +++ web/html/xui/form/stream/stream_ws.html | 3 +++ 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/web/assets/js/model/inbound.js b/web/assets/js/model/inbound.js index 4661d51d..35f9dc3a 100644 --- a/web/assets/js/model/inbound.js +++ b/web/assets/js/model/inbound.js @@ -379,13 +379,15 @@ class WsStreamSettings extends XrayCommonClass { acceptProxyProtocol = false, path = '/', host = '', - headers = [] + headers = [], + heartbeatPeriod = 0, ) { super(); this.acceptProxyProtocol = acceptProxyProtocol; this.path = path; this.host = host; this.headers = headers; + this.heartbeatPeriod = heartbeatPeriod; } addHeader(name, value) { @@ -402,6 +404,7 @@ class WsStreamSettings extends XrayCommonClass { json.path, json.host, XrayCommonClass.toHeaders(json.headers), + json.heartbeatPeriod, ); } @@ -411,6 +414,7 @@ class WsStreamSettings extends XrayCommonClass { path: this.path, host: this.host, headers: XrayCommonClass.toV2Headers(this.headers, false), + heartbeatPeriod: this.heartbeatPeriod, }; } } diff --git a/web/assets/js/model/outbound.js b/web/assets/js/model/outbound.js index 83ac4306..c9400efc 100644 --- a/web/assets/js/model/outbound.js +++ b/web/assets/js/model/outbound.js @@ -206,16 +206,23 @@ class KcpStreamSettings extends CommonClass { } class WsStreamSettings extends CommonClass { - constructor(path = '/', host = '') { + constructor( + path = '/', + host = '', + heartbeatPeriod = 0, + + ) { super(); this.path = path; this.host = host; + this.heartbeatPeriod = heartbeatPeriod; } static fromJson(json = {}) { return new WsStreamSettings( json.path, json.host, + json.heartbeatPeriod, ); } @@ -223,6 +230,7 @@ class WsStreamSettings extends CommonClass { return { path: this.path, host: this.host, + heartbeatPeriod: this.heartbeatPeriod }; } } diff --git a/web/html/xui/form/outbound.html b/web/html/xui/form/outbound.html index fde2f27c..a337ab28 100644 --- a/web/html/xui/form/outbound.html +++ b/web/html/xui/form/outbound.html @@ -337,6 +337,9 @@ + + + diff --git a/web/html/xui/form/stream/stream_ws.html b/web/html/xui/form/stream/stream_ws.html index 80f44c50..16a423ca 100644 --- a/web/html/xui/form/stream/stream_ws.html +++ b/web/html/xui/form/stream/stream_ws.html @@ -9,6 +9,9 @@ + + +