diff --git a/web/assets/js/model/inbound.js b/web/assets/js/model/inbound.js index aebf321a..803b5d94 100644 --- a/web/assets/js/model/inbound.js +++ b/web/assets/js/model/inbound.js @@ -1710,7 +1710,7 @@ class Inbound extends XrayCommonClass { toJson() { let streamSettings; - if (this.canEnableStream()) { + if (this.canEnableStream() || this.stream?.sockopt) { streamSettings = this.stream.toJson(); } return { diff --git a/web/html/inbounds.html b/web/html/inbounds.html index e2b98d49..58d2d07a 100644 --- a/web/html/inbounds.html +++ b/web/html/inbounds.html @@ -1119,7 +1119,11 @@ protocol: inbound.protocol, settings: inbound.settings.toString(), }; - if (inbound.canEnableStream()) data.streamSettings = inbound.stream.toString(); + if (inbound.canEnableStream()){ + data.streamSettings = inbound.stream.toString(); + } else if (inbound.stream?.sockopt) { + data.streamSettings = JSON.stringify({ sockopt: inbound.stream.sockopt.toJson() }, null, 2); + } data.sniffing = inbound.sniffing.toString(); data.allocate = inbound.allocate.toString(); @@ -1139,7 +1143,11 @@ protocol: inbound.protocol, settings: inbound.settings.toString(), }; - if (inbound.canEnableStream()) data.streamSettings = inbound.stream.toString(); + if (inbound.canEnableStream()){ + data.streamSettings = inbound.stream.toString(); + } else if (inbound.stream?.sockopt) { + data.streamSettings = JSON.stringify({ sockopt: inbound.stream.sockopt.toJson() }, null, 2); + } data.sniffing = inbound.sniffing.toString(); data.allocate = inbound.allocate.toString();