From 75b554b2f15d0ee9d89297fb00727814a0ee6545 Mon Sep 17 00:00:00 2001 From: CN_SZTL Date: Tue, 26 May 2020 22:00:25 +0800 Subject: [PATCH] luci-app-unblockneteasemusic: bump to 2.8-4 --- .../luci-app-unblockneteasemusic/Makefile | 2 +- .../luasrc/model/cbi/unblockneteasemusic.lua | 10 +++++ .../root/etc/config/unblockneteasemusic | 1 + .../root/etc/init.d/unblockneteasemusic | 39 +++++++++++++------ 4 files changed, 39 insertions(+), 13 deletions(-) diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/Makefile b/package/ctcgfw/luci-app-unblockneteasemusic/Makefile index 28b66718db..381ab6803e 100644 --- a/package/ctcgfw/luci-app-unblockneteasemusic/Makefile +++ b/package/ctcgfw/luci-app-unblockneteasemusic/Makefile @@ -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 diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua index 444bc4612e..c85b21b27a 100644 --- a/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua +++ b/package/ctcgfw/luci-app-unblockneteasemusic/luasrc/model/cbi/unblockneteasemusic.lua @@ -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 diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/config/unblockneteasemusic b/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/config/unblockneteasemusic index a1d4fc583f..ba17dbff36 100644 --- a/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/config/unblockneteasemusic +++ b/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/config/unblockneteasemusic @@ -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' diff --git a/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/init.d/unblockneteasemusic b/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/init.d/unblockneteasemusic index f2ec895d51..9386333e07 100755 --- a/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/init.d/unblockneteasemusic +++ b/package/ctcgfw/luci-app-unblockneteasemusic/root/etc/init.d/unblockneteasemusic @@ -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"; }