mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-02-15 03:51:51 +00:00
V2ray support to status page and wizard
This commit is contained in:
parent
8cd9e76fee
commit
1218fea5b1
2 changed files with 47 additions and 15 deletions
|
@ -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');
|
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 += ' <i>(' + _('empty key') + ')</i>';
|
||||||
}
|
}
|
||||||
statusMessage += '<br/>';
|
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)
|
if (mArray.openmptcprouter.fsro == true)
|
||||||
{
|
{
|
||||||
statusMessage += _('Filesystem is readonly') + '<br/>';
|
statusMessage += _('Filesystem is readonly') + '<br/>';
|
||||||
|
@ -181,9 +189,9 @@
|
||||||
statusIcon = "<%=resource%>/openmptcprouter/images/statusError.png";
|
statusIcon = "<%=resource%>/openmptcprouter/images/statusError.png";
|
||||||
} else if (mArray.openmptcprouter.service_addr != "")
|
} 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")
|
if (mArray.openmptcprouter.tun_state == "DOWN")
|
||||||
{
|
{
|
||||||
|
@ -255,7 +263,7 @@
|
||||||
if (mArray.openmptcprouter.vps_status == "DOWN")
|
if (mArray.openmptcprouter.vps_status == "DOWN")
|
||||||
{
|
{
|
||||||
statusMessage += _('Can\'t ping server') + '<br/>';
|
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/>';
|
statusMessage += _('Can\'t get public IP address from ShadowSocks') + '<br/>';
|
||||||
} else if (mArray.openmptcprouter.wan_addr == "" && mArray.openmptcprouter.external_check == true)
|
} else if (mArray.openmptcprouter.wan_addr == "" && mArray.openmptcprouter.external_check == true)
|
||||||
|
@ -320,19 +328,24 @@
|
||||||
content += _('IPv6:') + " " + mArray.openmptcprouter.wan_addr6;
|
content += _('IPv6:') + " " + mArray.openmptcprouter.wan_addr6;
|
||||||
content += '<br />';
|
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 += _('Shadowsocks traffic:') + " " + formatBytes(mArray.openmptcprouter.ss_traffic);
|
||||||
content += '<br />';
|
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)
|
if (mArray.openmptcprouter.vpn_traffic && mArray.openmptcprouter.vpn_traffic != 0)
|
||||||
{
|
{
|
||||||
content += _('VPN traffic:') + " " + formatBytes(mArray.openmptcprouter.vpn_traffic);
|
content += _('VPN traffic:') + " " + formatBytes(mArray.openmptcprouter.vpn_traffic);
|
||||||
content += '<br />';
|
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 />';
|
||||||
}
|
}
|
||||||
content += '<br />';
|
content += '<br />';
|
||||||
|
|
|
@ -175,9 +175,24 @@ end
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<fieldset class="cbi-section" id="shadowsocks">
|
<fieldset class="cbi-section" id="proxy">
|
||||||
<legend><%:ShadowSocks settings%></legend>
|
<legend><%:Proxy settings%></legend>
|
||||||
<div class="cbi-section-descr"><%:By default ShadowSocks is used for TCP traffic.%></div>
|
<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">
|
<div class="cbi-value">
|
||||||
<label class="cbi-value-title"><%:ShadowSocks key%></label>
|
<label class="cbi-value-title"><%:ShadowSocks key%></label>
|
||||||
<div class="cbi-value-field">
|
<div class="cbi-value-field">
|
||||||
|
@ -189,9 +204,13 @@ end
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="cbi-value">
|
<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">
|
<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>
|
</div>
|
||||||
<div class="cbi-value">
|
<div class="cbi-value">
|
||||||
|
@ -216,7 +235,7 @@ end
|
||||||
<% else %>
|
<% else %>
|
||||||
<%:There is no Advanced Encryption Standard (AES) instruction set integrated in the processor, you should use chacha20.%>
|
<%:There is no Advanced Encryption Standard (AES) instruction set integrated in the processor, you should use chacha20.%>
|
||||||
<% end %>
|
<% end %>
|
||||||
<%:Encryption method is also used for Glorytun and OpenVPN.%>
|
<%:Encryption method is used for Shadowsocks, Glorytun and OpenVPN.%>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
Loading…
Reference in a new issue