luci-app-unblockneteasemusic: sync with upstream source
This commit is contained in:
parent
bf4e77edaf
commit
b3941bdfe2
@ -11,8 +11,8 @@ LUCI_TITLE:=LuCI support for UnblockNeteaseMusic
|
||||
LUCI_DEPENDS:=+bash +busybox +coreutils-nohup +curl +dnsmasq-full +ipset +libopenssl +node
|
||||
LUCI_PKGARCH:=all
|
||||
PKG_NAME:=luci-app-unblockneteasemusic
|
||||
PKG_VERSION:=2.5
|
||||
PKG_RELEASE:=3
|
||||
PKG_VERSION:=2.6
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_MAINTAINER:=[CTCGFW]Project-OpenWrt
|
||||
|
||||
|
||||
@ -12,20 +12,6 @@ enable.description = translate("启用本插件以解除网易云音乐播放限
|
||||
enable.default = 0
|
||||
enable.rmempty = false
|
||||
|
||||
http_port = s:option(Value, "http_port", translate("[HTTP] 监听端口"))
|
||||
http_port.description = translate("本插件监听的HTTP端口,不可与其他程序/HTTPS共用一个端口")
|
||||
http_port.placeholder = "5200"
|
||||
http_port.default = "5200"
|
||||
http_port.datatype = "port"
|
||||
http_port.rmempty = false
|
||||
|
||||
https_port = s:option(Value, "https_port", translate("[HTTPS] 监听端口"))
|
||||
https_port.description = translate("本插件监听的HTTPS端口,不可与其他程序/HTTP共用一个端口")
|
||||
https_port.placeholder = "5201"
|
||||
https_port.default = "5201"
|
||||
https_port.datatype = "port"
|
||||
https_port.rmempty = false
|
||||
|
||||
music_source = s:option(ListValue, "music_source", translate("音源接口"))
|
||||
music_source:value("default", translate("默认"))
|
||||
music_source:value("qq", translate("QQ音乐"))
|
||||
@ -51,11 +37,17 @@ youtube_key.description = translate("API Key申请地址:https://developers.go
|
||||
youtube_key.datatype = "string"
|
||||
youtube_key:depends("music_source", "youtube")
|
||||
|
||||
endpoint_url = s:option(Value, "endpoint_url", translate("EndPoint"))
|
||||
endpoint_url.description = translate("具体说明参见:https://github.com/nondanee/UnblockNeteaseMusic")
|
||||
endpoint_url.placeholder = "https://music.163.com"
|
||||
endpoint_url.datatype = "string"
|
||||
endpoint_url.rmempty = false
|
||||
|
||||
hijack = s:option(ListValue, "hijack_ways", translate("劫持方法"))
|
||||
hijack:value("dont_hijack", translate("不开启劫持"))
|
||||
hijack:value("use_ipset", translate("使用IPSet劫持"))
|
||||
hijack:value("use_hosts", translate("使用Hosts劫持"))
|
||||
hijack.description = translate("如果使用Hosts劫持,请将HTTP/HTTPS端口设置为80/443")
|
||||
hijack.description = translate("如果使用Hosts劫持,主实例的HTTP/HTTPS端口将被锁定为80/443")
|
||||
hijack.default = "dont_hijack"
|
||||
hijack.rmempty = false
|
||||
|
||||
@ -77,6 +69,34 @@ advanced_mode.description = translate("仅推荐高级玩家使用")
|
||||
advanced_mode.default = 0
|
||||
advanced_mode.rmempty = false
|
||||
|
||||
http_port = s:option(Value, "http_port", translate("主实例 [HTTP] 监听端口"))
|
||||
http_port.description = translate("主实例监听的HTTP端口,不可与苹果实例/其他程序/HTTPS共用一个端口")
|
||||
http_port.placeholder = "5200"
|
||||
http_port.default = "5200"
|
||||
http_port.datatype = "port"
|
||||
http_port:depends("advanced_mode", 1)
|
||||
|
||||
https_port = s:option(Value, "https_port", translate("主实例 [HTTPS] 监听端口"))
|
||||
https_port.description = translate("主实例监听的HTTPS端口,不可与苹果实例/其他程序/HTTP共用一个端口")
|
||||
https_port.placeholder = "5201"
|
||||
https_port.default = "5201"
|
||||
https_port.datatype = "port"
|
||||
https_port:depends("advanced_mode", 1)
|
||||
|
||||
apple_http_port = s:option(Value, "apple_http_port", translate("苹果实例 [HTTP] 监听端口"))
|
||||
apple_http_port.description = translate("苹果实例监听的HTTP端口,不可与主实例/其他程序/HTTPS共用一个端口")
|
||||
apple_http_port.placeholder = "5202"
|
||||
apple_http_port.default = "5202"
|
||||
apple_http_port.datatype = "port"
|
||||
apple_http_port:depends("advanced_mode", 1)
|
||||
|
||||
apple_https_port = s:option(Value, "apple_https_port", translate("苹果实例 [HTTPS] 监听端口"))
|
||||
apple_https_port.description = translate("苹果实例监听的HTTPS端口,不可与主实例/其他程序/HTTP共用一个端口")
|
||||
apple_https_port.placeholder = "5203"
|
||||
apple_https_port.default = "5203"
|
||||
apple_https_port.datatype = "port"
|
||||
apple_https_port:depends("advanced_mode", 1)
|
||||
|
||||
daemon_enable = s:option(Flag, "daemon_enable", translate("启用进程守护"))
|
||||
daemon_enable.description = translate("开启后,附属程序会自动检测主程序运行状态,在主程序退出时自动重启")
|
||||
daemon_enable.default = 0
|
||||
@ -108,12 +128,6 @@ netease_server_ip.datatype = "ipaddr"
|
||||
netease_server_ip:depends("set_netease_server_ip", 1)
|
||||
netease_server_ip:depends("advanced_mode", 1)
|
||||
|
||||
endpoint_url = s:option(Value, "endpoint_url", translate("EndPoint"))
|
||||
endpoint_url.description = translate("具体说明参见:https://github.com/nondanee/UnblockNeteaseMusic")
|
||||
endpoint_url.placeholder = "https://music.163.com"
|
||||
endpoint_url.datatype = "string"
|
||||
endpoint_url:depends("advanced_mode", 1)
|
||||
|
||||
proxy_server_ip = s:option(Value, "proxy_server_ip", translate("代理服务器地址"))
|
||||
proxy_server_ip.description = translate("使用代理服务器获取音乐信息")
|
||||
proxy_server_ip.placeholder = "http(s)://host:port"
|
||||
|
||||
@ -1,17 +1,21 @@
|
||||
|
||||
config unblockneteasemusic
|
||||
option enable '0'
|
||||
option http_port '5200'
|
||||
option https_port '5201'
|
||||
option music_source 'default'
|
||||
option qq_cookie ''
|
||||
option youtube_key ''
|
||||
option endpoint_url 'https://music.163.com'
|
||||
option hijack_ways 'use_ipset'
|
||||
option auto_update '1'
|
||||
option update_time '3'
|
||||
option advanced_mode '0'
|
||||
option http_port '5200'
|
||||
option https_port '5201'
|
||||
option apple_http_port '5202'
|
||||
option apple_https_port '5203'
|
||||
option daemon_enable '0'
|
||||
option keep_core_when_upgrade '0'
|
||||
option pub_access '0'
|
||||
option strict_mode '0'
|
||||
option netease_server_ip '59.111.181.38'
|
||||
option endpoint_url 'https://music.163.com'
|
||||
option proxy_server_ip ''
|
||||
|
||||
@ -8,22 +8,29 @@ STOP=10
|
||||
lan_addr="$(uci get network.lan.ipaddr)"
|
||||
|
||||
enable="$(uci get unblockneteasemusic.@unblockneteasemusic[0].enable)"
|
||||
http_port="$(uci get unblockneteasemusic.@unblockneteasemusic[0].http_port)"
|
||||
https_port="$(uci get unblockneteasemusic.@unblockneteasemusic[0].https_port)"
|
||||
|
||||
music_source="$(uci get unblockneteasemusic.@unblockneteasemusic[0].music_source)"
|
||||
qq_cookie="$(uci get unblockneteasemusic.@unblockneteasemusic[0].qq_cookie 2> "/dev/null")"
|
||||
youtube_key="$(uci get unblockneteasemusic.@unblockneteasemusic[0].youtube_key 2> "/dev/null")"
|
||||
qq_cookie="$(uci get unblockneteasemusic.@unblockneteasemusic[0].qq_cookie 2>"/dev/null")"
|
||||
youtube_key="$(uci get unblockneteasemusic.@unblockneteasemusic[0].youtube_key 2>"/dev/null")"
|
||||
|
||||
endpoint_url="$(uci get unblockneteasemusic.@unblockneteasemusic[0].endpoint_url)"
|
||||
hijack_ways="$(uci get unblockneteasemusic.@unblockneteasemusic[0].hijack_ways)"
|
||||
|
||||
auto_update="$(uci get unblockneteasemusic.@unblockneteasemusic[0].auto_update)"
|
||||
update_time="$(uci get unblockneteasemusic.@unblockneteasemusic[0].update_time)"
|
||||
keep_core_when_upgrade="$(uci get unblockneteasemusic.@unblockneteasemusic[0].keep_core_when_upgrade 2> "/dev/null")"
|
||||
[ "*$(uci get unblockneteasemusic.@unblockneteasemusic[0].pub_access 2> "/dev/null")*" = "*1*" ] && addr="0.0.0.0" || addr="${lan_addr}"
|
||||
[ "*$(uci get unblockneteasemusic.@unblockneteasemusic[0].strict_mode 2> "/dev/null")*" = "*1*" ] && strict_mode="-s"
|
||||
netease_server_ip="$(uci get unblockneteasemusic.@unblockneteasemusic[0].netease_server_ip 2> "/dev/null")"
|
||||
|
||||
http_port="$(uci get unblockneteasemusic.@unblockneteasemusic[0].http_port 2>"/dev/null" || echo "5200")"
|
||||
https_port="$(uci get unblockneteasemusic.@unblockneteasemusic[0].https_port 2>"/dev/null" || echo "5201")"
|
||||
apple_http_port="$(uci get unblockneteasemusic.@unblockneteasemusic[0].apple_http_port 2>"/dev/null" || echo "5202")"
|
||||
apple_https_port="$(uci get unblockneteasemusic.@unblockneteasemusic[0].apple_https_port 2>"/dev/null" || echo "5203")"
|
||||
|
||||
keep_core_when_upgrade="$(uci get unblockneteasemusic.@unblockneteasemusic[0].keep_core_when_upgrade 2>"/dev/null")"
|
||||
[ "*$(uci get unblockneteasemusic.@unblockneteasemusic[0].pub_access 2>"/dev/null")*" = "*1*" ] && addr="0.0.0.0" || addr="${lan_addr}"
|
||||
[ "*$(uci get unblockneteasemusic.@unblockneteasemusic[0].strict_mode 2>"/dev/null")*" = "*1*" ] && strict_mode="-s"
|
||||
|
||||
netease_server_ip="$(uci get unblockneteasemusic.@unblockneteasemusic[0].netease_server_ip 2>"/dev/null")"
|
||||
[ -n "${netease_server_ip}" ] && netease_server_ip="-f ${netease_server_ip}"
|
||||
endpoint_url="$(uci get unblockneteasemusic.@unblockneteasemusic[0].endpoint_url 2> "/dev/null")"
|
||||
[ -n "${endpoint_url}" ] && endpoint_url="-e ${endpoint_url}"
|
||||
proxy_server_ip="$(uci get unblockneteasemusic.@unblockneteasemusic[0].proxy_server_ip 2> "/dev/null")"
|
||||
proxy_server_ip="$(uci get unblockneteasemusic.@unblockneteasemusic[0].proxy_server_ip 2>"/dev/null")"
|
||||
[ -n "${proxy_server_ip}" ] && proxy_server_ip="-u ${proxy_server_ip}"
|
||||
|
||||
set_ipset(){
|
||||
@ -31,7 +38,7 @@ set_ipset(){
|
||||
mkdir -p "/tmp/dnsmasq.d"
|
||||
rm -f "/tmp/dnsmasq.d/dnsmasq-unblockneteasemusic.conf"
|
||||
cat <<-EOF > "/tmp/dnsmasq.d/dnsmasq-unblockneteasemusic.conf"
|
||||
dhcp-option=252,http://${lan_addr}:${http_port}/proxy.pac
|
||||
dhcp-option=252,http://${lan_addr}:${apple_http_port}/proxy.pac
|
||||
ipset=/.music.163.com/music
|
||||
ipset=/interface.music.163.com/music
|
||||
ipset=/interface3.music.163.com/music
|
||||
@ -76,7 +83,7 @@ set_hosts(){
|
||||
mkdir -p "/tmp/dnsmasq.d"
|
||||
rm -f "/tmp/dnsmasq.d/dnsmasq-unblockneteasemusic.conf"
|
||||
cat <<-EOF > "/tmp/dnsmasq.d/dnsmasq-unblockneteasemusic.conf"
|
||||
dhcp-option=252,http://${lan_addr}:${http_port}/proxy.pac
|
||||
dhcp-option=252,http://${lan_addr}:${apple_http_port}/proxy.pac
|
||||
address=/music.163.com/${lan_addr}
|
||||
address=/interface.music.163.com/${lan_addr}
|
||||
address=/interface3.music.163.com/${lan_addr}
|
||||
@ -133,19 +140,22 @@ start()
|
||||
sed -i -e "1i const key = '${youtube_key}'" "/usr/share/unblockneteasemusic/core/provider/youtube.js"
|
||||
fi
|
||||
|
||||
[ "${hijack_ways}" = "use_hosts" ] && { http_port="80"; https_port="443"; }
|
||||
if [ "${music_source}" = "default" ]; then
|
||||
nohup node "/usr/share/unblockneteasemusic/core/app.js" -a "${addr}" -p "${http_port}":"${https_port}" ${netease_server_ip} ${proxy_server_ip} ${endpoint_url} ${strict_mode} >> "/tmp/unblockneteasemusic.log" 2>&1 &
|
||||
nohup node "/usr/share/unblockneteasemusic/core/app.js" -a "${addr}" -p "${http_port}":"${https_port}" ${netease_server_ip} ${proxy_server_ip} ${strict_mode} >> "/tmp/unblockneteasemusic.log" 2>&1 &
|
||||
nohup node "/usr/share/unblockneteasemusic/core/app.js" -a "${addr}" -p "${apple_http_port}":"${apple_https_port}" -e "${endpoint_url}" ${netease_server_ip} ${proxy_server_ip} ${strict_mode} >> "/tmp/unblockneteasemusic.log" 2>&1 &
|
||||
else
|
||||
nohup node "/usr/share/unblockneteasemusic/core/app.js" -a "${addr}" -p "${http_port}":"${https_port}" -o "${music_source}" ${netease_server_ip} ${proxy_server_ip} ${endpoint_url} ${strict_mode} >> "/tmp/unblockneteasemusic.log" 2>&1 &
|
||||
nohup node "/usr/share/unblockneteasemusic/core/app.js" -a "${addr}" -p "${http_port}":"${https_port}" -o "${music_source}" ${netease_server_ip} ${proxy_server_ip} ${strict_mode} >> "/tmp/unblockneteasemusic.log" 2>&1 &
|
||||
nohup node "/usr/share/unblockneteasemusic/core/app.js" -a "${addr}" -p "${apple_http_port}":"${apple_https_port}" -o "${music_source}" -e "${endpoint_url}" ${netease_server_ip} ${proxy_server_ip} ${strict_mode} >> "/tmp/unblockneteasemusic.log" 2>&1 &
|
||||
fi
|
||||
|
||||
set_type="start"
|
||||
if [ "*${hijack_ways}*" = "*use_ipset*" ]; then
|
||||
if [ "${hijack_ways}" = "use_ipset" ]; then
|
||||
set_ipset > "/dev/null" 2>&1
|
||||
elif [ "*${hijack_ways}*" = "*use_hosts*" ]; then
|
||||
elif [ "${hijack_ways}" = "use_hosts" ]; then
|
||||
set_hosts > "/dev/null" 2>&1
|
||||
fi
|
||||
[ "*$(uci get unblockneteasemusic.@unblockneteasemusic[0].pub_access 2> "/dev/null")*" = "*1*" ] && set_ports > "/dev/null" 2>&1
|
||||
[ "*$(uci get unblockneteasemusic.@unblockneteasemusic[0].pub_access 2>"/dev/null")*" = "*1*" ] && set_ports > "/dev/null" 2>&1
|
||||
|
||||
sed -i '/unblockneteasemusic/d' /etc/crontabs/root
|
||||
[ "${auto_update}" -eq "1" ] && echo "0 ${update_time} * * * /usr/share/unblockneteasemusic/update_core.sh" >> "/etc/crontabs/root"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user