luci-app-unblockneteasemusic: bump to 2.8-4

This commit is contained in:
CN_SZTL 2020-05-26 22:00:25 +08:00
parent 90b7b1d1a2
commit 75b554b2f1
No known key found for this signature in database
GPG Key ID: 6850B6345C862176
4 changed files with 39 additions and 13 deletions

View File

@ -12,7 +12,7 @@ LUCI_DEPENDS:=+bash +busybox +coreutils-nohup +curl +dnsmasq-full +ipset +libope
LUCI_PKGARCH:=all
PKG_NAME:=luci-app-unblockneteasemusic
PKG_VERSION:=2.8
PKG_RELEASE:=3
PKG_RELEASE:=4
PKG_MAINTAINER:=[CTCGFW]Project-OpenWrt

View File

@ -43,6 +43,16 @@ youtube_key.description = translate("API Key申请地址https://developers.go
youtube_key.datatype = "string"
youtube_key:depends("music_source", "youtube")
replace_music_source = s:option(ListValue, "replace_music_source", translate("强制音乐音源替换"))
replace_music_source:value("dont_replace", translate("不强制替换音乐音源"))
replace_music_source:value("lower_than_192kbps", translate("当音质低于192Kbps"))
replace_music_source:value("lower_than_320kbps", translate("当音质低于320Kbps"))
replace_music_source:value("lower_than_999kbps", translate("当音质低于999Kbps无损"))
replace_music_source:value("replace_all", translate("替换所有音乐音源"))
replace_music_source.description = translate("当音乐音质低于指定数值时,尝试强制使用其他平台的高音质版本进行替换")
replace_music_source.default = "dont_replace"
replace_music_source.rmempty = false
enable_flac = s:option(Flag, "enable_flac", translate("启用无损音质"))
enable_flac.description = translate("目前仅支持QQ、酷我、咪咕音源")
enable_flac.default = 0

View File

@ -5,6 +5,7 @@ config unblockneteasemusic
option neteasemusic_cookie ''
option qq_cookie ''
option youtube_key ''
option replace_music_source 'dont_replace'
option enable_flac '0'
option auto_update '1'
option update_time '3'

View File

@ -32,6 +32,7 @@ neteasemusic_cookie="$(uci_get_by_type "unblockneteasemusic" "neteasemusic_cooki
qq_cookie="$(uci_get_by_type "unblockneteasemusic" "qq_cookie")"
youtube_key="$(uci_get_by_type "unblockneteasemusic" "youtube_key")"
replace_music_source="$(uci_get_by_type "unblockneteasemusic" "replace_music_source" "dont_replace")"
enable_flac="$(uci_get_by_type "unblockneteasemusic" "enable_flac" "0")"
[ "${enable_flac}" -eq "1" ] && flag_arg="ENABLE_FLAC=true"
@ -182,24 +183,38 @@ start()
[ -n "${neteasemusic_cookie}" ] && {
ub_cookie_line="$(sed -n -e "/netease.path.includes('song\/enhance')/=" "/usr/share/unblockneteasemusic/core/src/hook.js")";
[ -n "${ub_cookie_line}" ] && { let ub_cookie_endline="${ub_cookie_line}+6"; sed -i "${ub_cookie_line},${ub_cookie_endline}d" "/usr/share/unblockneteasemusic/core/src/hook.js"; }
sed -i "/netease.path == '\/api\/song\/enhance\/download\/url'/i\\\t\\t\\t\\tif (netease.path.includes('song\/enhance')) {" "/usr/share/unblockneteasemusic/core/src/hook.js";
sed -i "/if (netease.path.includes('song\/enhance')) {/a\\\t\\t\\t\\t\\treq.headers.cookie = [" "/usr/share/unblockneteasemusic/core/src/hook.js";
sed -i "/req.headers.cookie = \[/a\\\t\\t\\t\\t\\t\\t'MUSIC_U=${neteasemusic_cookie}'," "/usr/share/unblockneteasemusic/core/src/hook.js";
sed -i "/'MUSIC_U=${neteasemusic_cookie}',/a\\\t\\t\\t\\t\\t\\treq.headers.cookie.replace(\/\\\s*MUSIC_\\\w=[^\\\s;]+;*\/g, '')" "/usr/share/unblockneteasemusic/core/src/hook.js";
sed -i "/req.headers.cookie.replace(\/\\\s\\*MUSIC_\\\w=[^\\\s;]\\+/a\\\t\\t\\t\\t\\t].filter(line => line).join('; ')" "/usr/share/unblockneteasemusic/core/src/hook.js";
sed -i "/].filter(line => line).join('; ')/a\\\t\\t\\t\\t}\\n" "/usr/share/unblockneteasemusic/core/src/hook.js";
[ -n "${ub_cookie_line}" ] && { let ub_cookie_endline="ub_cookie_line+6"; sed -i "${ub_cookie_line},${ub_cookie_endline}d" "/usr/share/unblockneteasemusic/core/src/hook.js"; }
sed -i "/netease.path == '\/api\/song\/enhance\/download\/url'/i\\\t\\t\\t\\tif (netease.path.includes('song\/enhance')) {" "/usr/share/unblockneteasemusic/core/src/hook.js"
sed -i "/if (netease.path.includes('song\/enhance')) {/a\\\t\\t\\t\\t\\treq.headers.cookie = [" "/usr/share/unblockneteasemusic/core/src/hook.js"
sed -i "/req.headers.cookie = \[/a\\\t\\t\\t\\t\\t\\t'MUSIC_U=${neteasemusic_cookie}'," "/usr/share/unblockneteasemusic/core/src/hook.js"
sed -i "/'MUSIC_U=${neteasemusic_cookie}',/a\\\t\\t\\t\\t\\t\\treq.headers.cookie.replace(\/\\\s*MUSIC_\\\w=[^\\\s;]+;*\/g, '')" "/usr/share/unblockneteasemusic/core/src/hook.js"
sed -i "/req.headers.cookie.replace(\/\\\s\\*MUSIC_\\\w=[^\\\s;]\\+/a\\\t\\t\\t\\t\\t].filter(line => line).join('; ')" "/usr/share/unblockneteasemusic/core/src/hook.js"
sed -i "/].filter(line => line).join('; ')/a\\\t\\t\\t\\t}\\n" "/usr/share/unblockneteasemusic/core/src/hook.js"
}
[ -n "${qq_cookie}" ] && {
qq_cookie_line="$(awk "/'cookie':/{print NR}" "/usr/share/unblockneteasemusic/core/src/provider/qq.js")";
sed -i "${qq_cookie_line}d" "/usr/share/unblockneteasemusic/core/src/provider/qq.js";
sed -i -e "${qq_cookie_line}i \\\t'cookie': '${qq_cookie}'" "/usr/share/unblockneteasemusic/core/src/provider/qq.js";
qq_cookie_line="$(awk "/'cookie':/{print NR}" "/usr/share/unblockneteasemusic/core/src/provider/qq.js")"
sed -i "${qq_cookie_line}d" "/usr/share/unblockneteasemusic/core/src/provider/qq.js"
sed -i -e "${qq_cookie_line}i \\\t'cookie': '${qq_cookie}'" "/usr/share/unblockneteasemusic/core/src/provider/qq.js"
}
[ -n "${youtube_key}" ] && {
sed -i '/const key = /d' "/usr/share/unblockneteasemusic/core/src/provider/youtube.js";
sed -i -e "1i const key = '${youtube_key}'" "/usr/share/unblockneteasemusic/core/src/provider/youtube.js";
sed -i '/const key = /d' "/usr/share/unblockneteasemusic/core/src/provider/youtube.js"
sed -i -e "1i const key = '${youtube_key}'" "/usr/share/unblockneteasemusic/core/src/provider/youtube.js"
}
quality_check_line="$(awk "/target == 0 \|\| item.id == target/{print NR}" "/usr/share/unblockneteasemusic/core/src/hook.js")"
sed -i "${quality_check_line}d" "/usr/share/unblockneteasemusic/core/src/hook.js"
if [ "${replace_music_source}" = "dont_replace" ]; then
sed -i -e "${quality_check_line}i \\\t\\tif ((item.code != 200 || item.freeTrialInfo) && (target == 0 || item.id == target)) {" "/usr/share/unblockneteasemusic/core/src/hook.js"
elif [ "${replace_music_source}" = "lower_than_192kbps" ]; then
sed -i -e "${quality_check_line}i \\\t\\tif ((item.code != 200 || item.freeTrialInfo || item.br < 192000) && (target == 0 || item.id == target)) {" "/usr/share/unblockneteasemusic/core/src/hook.js"
elif [ "${replace_music_source}" = "lower_than_320kbps" ]; then
sed -i -e "${quality_check_line}i \\\t\\tif ((item.code != 200 || item.freeTrialInfo || item.br < 320000) && (target == 0 || item.id == target)) {" "/usr/share/unblockneteasemusic/core/src/hook.js"
elif [ "${replace_music_source}" = "lower_than_999kbps" ]; then
sed -i -e "${quality_check_line}i \\\t\\tif ((item.code != 200 || item.freeTrialInfo || item.br < 999000) && (target == 0 || item.id == target)) {" "/usr/share/unblockneteasemusic/core/src/hook.js"
elif [ "${replace_music_source}" = "replace_all" ]; then
sed -i -e "${quality_check_line}i \\\t\\tif (target == 0 || item.id == target) {" "/usr/share/unblockneteasemusic/core/src/hook.js"
fi
{ [ -f "${self_issue_cert_crt}" ] && [ "${self_issue_cert_crt}" != "/usr/share/unblockneteasemusic/core/server.crt" ]; } && { ln -sf "${self_issue_cert_crt}" "/usr/share/unblockneteasemusic/core/server.crt"; sed -i "/${self_issue_cert_crt//\//\\/}/d"; echo "${self_issue_cert_crt}" >> "/etc/sysupgrade.conf"; }
{ [ -f "${self_issue_cert_key}" ] && [ "${self_issue_cert_key}" != "/usr/share/unblockneteasemusic/core/server.key" ]; } && { ln -sf "${self_issue_cert_key}" "/usr/share/unblockneteasemusic/core/server.key"; sed -i "/${self_issue_cert_key//\//\\/}/d"; echo "${self_issue_cert_key}" >> "/etc/sysupgrade.conf"; }