1
0
Fork 0
mirror of https://github.com/Ysurac/openmptcprouter-feeds.git synced 2025-02-14 19:41:51 +00:00

V2ray support to status page and wizard

This commit is contained in:
Ycarus (Yannick Chabanois) 2020-08-19 15:46:00 +02:00
parent 8cd9e76fee
commit 1218fea5b1
2 changed files with 47 additions and 15 deletions

View file

@ -146,18 +146,26 @@
}
}
if (mArray.openmptcprouter.socks_service_enabled == true && mArray.openmptcprouter.service_addr != "")
if (mArray.openmptcprouter.shadowsocks_enabled == true && mArray.openmptcprouter.service_addr != "")
{
if (mArray.openmptcprouter.socks_service == false)
if (mArray.openmptcprouter.shadowsocks_service == false)
{
statusMessage += _('ShadowSocks is not running');
if (mArray.openmptcprouter.socks_service_key == false && mArray.openmptcprouter.socks_service_method !== "none")
if (mArray.openmptcprouter.shadowsocks_service_key == false && mArray.openmptcprouter.shadowsocks_service_method !== "none")
{
statusMessage += ' <i>(' + _('empty key') + ')</i>';
}
statusMessage += '<br/>';
}
}
if (mArray.openmptcprouter.v2ray_enabled == true && mArray.openmptcprouter.service_addr != "")
{
if (mArray.openmptcprouter.v2ray_service == false)
{
statusMessage += _('V2Ray is not running');
statusMessage += '<br/>';
}
}
if (mArray.openmptcprouter.fsro == true)
{
statusMessage += _('Filesystem is readonly') + '<br/>';
@ -181,9 +189,9 @@
statusIcon = "<%=resource%>/openmptcprouter/images/statusError.png";
} else if (mArray.openmptcprouter.service_addr != "")
{
if (mArray.openmptcprouter.socks_service_enabled == false)
if (mArray.openmptcprouter.v2ray_enabled == false && mArray.openmptcprouter.shadowsocks_enabled == false)
{
statusMessage += _('ShadowSocks is DISABLED') + '<br/>';
statusMessage += _('Proxy is DISABLED') + '<br/>';
}
if (mArray.openmptcprouter.tun_state == "DOWN")
{
@ -255,7 +263,7 @@
if (mArray.openmptcprouter.vps_status == "DOWN")
{
statusMessage += _('Can\'t ping server') + '<br/>';
} else if (mArray.openmptcprouter.socks_service_enabled == true && mArray.openmptcprouter.ss_addr == "" && mArray.openmptcprouter.external_check == true)
} else if (mArray.openmptcprouter.shadowsocks_enabled == true && mArray.openmptcprouter.ss_addr == "" && mArray.openmptcprouter.external_check == true)
{
statusMessage += _('Can\'t get public IP address from ShadowSocks') + '<br/>';
} else if (mArray.openmptcprouter.wan_addr == "" && mArray.openmptcprouter.external_check == true)
@ -320,19 +328,24 @@
content += _('IPv6:') + " " + mArray.openmptcprouter.wan_addr6;
content += '<br />';
}
if (mArray.openmptcprouter.socks_service_enabled == true && mArray.openmptcprouter.ss_traffic && mArray.openmptcprouter.ss_traffic != 0)
if (mArray.openmptcprouter.ss_traffic && mArray.openmptcprouter.ss_traffic != 0)
{
content += _('Shadowsocks traffic:') + " " + formatBytes(mArray.openmptcprouter.ss_traffic);
content += '<br />';
}
if (mArray.openmptcprouter.v2ray_traffic && mArray.openmptcprouter.v2ray_traffic != 0)
{
content += _('V2Ray traffic:') + " " + formatBytes(mArray.openmptcprouter.v2ray_traffic);
content += '<br />';
}
if (mArray.openmptcprouter.vpn_traffic && mArray.openmptcprouter.vpn_traffic != 0)
{
content += _('VPN traffic:') + " " + formatBytes(mArray.openmptcprouter.vpn_traffic);
content += '<br />';
}
if (mArray.openmptcprouter.ss_traffic && mArray.openmptcprouter.vpn_traffic && mArray.openmptcprouter.vpn_traffic != 0 && mArray.openmptcprouter.ss_traffic != 0)
if (mArray.openmptcprouter.v2ray_traffic && mArray.openmptcprouter.ss_traffic && mArray.openmptcprouter.vpn_traffic && mArray.openmptcprouter.vpn_traffic != 0 && mArray.openmptcprouter.ss_traffic != 0)
{
content += _('Total traffic:') + " " + formatBytes(mArray.openmptcprouter.vpn_traffic + mArray.openmptcprouter.ss_traffic);
content += _('Total traffic:') + " " + formatBytes(mArray.openmptcprouter.vpn_traffic + mArray.openmptcprouter.ss_traffic + mArray.openmptcprouter.v2ray_traffic);
content += '<br />';
}
content += '<br />';

View file

@ -175,9 +175,24 @@ end
</div>
</div>
</fieldset>
<fieldset class="cbi-section" id="shadowsocks">
<legend><%:ShadowSocks settings%></legend>
<div class="cbi-section-descr"><%:By default ShadowSocks is used for TCP traffic.%></div>
<fieldset class="cbi-section" id="proxy">
<legend><%:Proxy settings%></legend>
<div class="cbi-section-descr"><%:By default proxy is used for any traffic that is TCP (and UDP for V2Ray).%></div>
<div class="cbi-value">
<label class="cbi-value-title"><%:Default Proxy%></label>
<div class="cbi-value-field">
<select class="cbi-input-select" name="default_proxy" size="1">
<% if nixio.fs.access("/etc/init.d/shadowsocks-libev") then %><option value="shadowsocks" <% if uci:get("shadowsocks-libev","sss0","disabled") == "0" then %>selected="selected"<% end %>>Shadowsocks</option><% end %>
<% if nixio.fs.access("/etc/init.d/v2ray") then %><option value="v2ray" <% if uci:get("v2ray","main","enabled") == "1" then %>selected="selected"<% end %>>V2Ray</option><% end %>
<option value="none" <% if uci:get("shadowsocks-libev","sss0","disabled") ~= "0" and uci:get("v2ray","main","enabled") ~= "1" then %>selected="selected"<% end %>>None</option>
</select>
<br />
<div class="cbi-value-description">
<%:Set the default Proxy used for TCP when ShadowSocks is enabled, for TCP and UDP when V2Ray is enabled.%>
</div>
</div>
</div>
<div class="cbi-value">
<label class="cbi-value-title"><%:ShadowSocks key%></label>
<div class="cbi-value-field">
@ -189,9 +204,13 @@ end
</div>
</div>
<div class="cbi-value">
<label class="cbi-value-title"><%:Disable ShadowSocks%></label>
<label class="cbi-value-title"><%:V2Ray user id%></label>
<div class="cbi-value-field">
<input class="cbi-input-checkbox" type="checkbox" name="disableshadowsocks" value="1" <% if uci:get("shadowsocks-libev","sss0","disabled") == "1" then %>checked<% end %> />
<input type="text" name="v2ray_user" placeholder="<%:V2Ray user%>" class="cbi-input-text" value="<%=uci:get("v2ray","omrout","s_vmess_user_id")%>" />
<br />
<div class="cbi-value-description">
<%:Key is retrieved from server API by default. V2Ray is used for TCP and UDP.%>
</div>
</div>
</div>
<div class="cbi-value">
@ -216,7 +235,7 @@ end
<% else %>
<%:There is no Advanced Encryption Standard (AES) instruction set integrated in the processor, you should use chacha20.%>
<% end %>
<%:Encryption method is also used for Glorytun and OpenVPN.%>
<%:Encryption method is used for Shadowsocks, Glorytun and OpenVPN.%>
</div>
</div>
</div>