Skip to content

Commit a8850eb

Browse files
committed
✨减少注释
1 parent 1b81dad commit a8850eb

1 file changed

Lines changed: 20 additions & 23 deletions

File tree

plugin/music/selecter.go

Lines changed: 20 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
// Package music 整合多平台音乐点播能力(基于 music-lib 重构)
1+
// Package music 整合多平台音乐点播能力
22
package music
33

44
import (
55
"fmt"
66

7-
ctrl "github.com/FloatTech/zbpctrl" // 别名 zbpctrl 为 ctrl
8-
"github.com/FloatTech/zbputils/control" // 保持 control 原名
7+
ctrl "github.com/FloatTech/zbpctrl"
8+
"github.com/FloatTech/zbputils/control"
99
"github.com/FloatTech/zbputils/ctxext"
1010
"github.com/guohuiyuan/music-lib/kugou"
1111
"github.com/guohuiyuan/music-lib/kuwo"
@@ -17,7 +17,6 @@ import (
1717
"github.com/wdvxdr1123/ZeroBot/message"
1818
)
1919

20-
// 平台映射:指令前缀 -> 点歌函数
2120
var platformMap = map[string]func(string) (message.Segment, error){
2221
"咪咕": getMiguMusic,
2322
"酷我": getKuwoMusic,
@@ -28,7 +27,6 @@ var platformMap = map[string]func(string) (message.Segment, error){
2827
}
2928

3029
func init() {
31-
// 注册指令处理器
3230
control.AutoRegister(&ctrl.Options[*zero.Ctx]{
3331
DisableOnDefault: false,
3432
Brief: "点歌",
@@ -44,29 +42,39 @@ func init() {
4442
platformPrefix := matches[1]
4543
keyword := matches[2]
4644

47-
// 获取目标平台处理函数
4845
processFunc, ok := platformMap[platformPrefix]
4946
if !ok {
5047
ctx.SendChain(message.Text("不支持的点播平台:", platformPrefix))
5148
return
5249
}
5350

54-
// 执行点播并返回结果
5551
seg, err := processFunc(keyword)
5652
if err != nil {
57-
// 修改:直接传递 err,不需要 call .Error()
5853
ctx.SendChain(message.Text("点歌失败:", err))
5954
return
6055
}
6156
ctx.SendChain(seg)
6257
})
6358
}
6459

65-
// 删除了 getMusicSegment 函数,因为已经通过 Map 直接分发
66-
67-
// --- 各平台适配层(基于 music-lib 实现) ---
60+
// getMusicSegment 根据平台和关键词获取音乐消息段
61+
func getMusicSegment(platform, keyword string) (message.Segment, error) {
62+
switch platform {
63+
case "migu":
64+
return getMiguMusic(keyword)
65+
case "kuwo":
66+
return getKuwoMusic(keyword)
67+
case "kugou":
68+
return getKugouMusic(keyword)
69+
case "netease":
70+
return getNeteaseMusic(keyword)
71+
case "qq":
72+
return getQQMusic(keyword)
73+
default:
74+
return message.Segment{}, errors.New("未知的音乐平台:" + platform)
75+
}
76+
}
6877

69-
// getMiguMusic 咪咕音乐点播
7078
func getMiguMusic(keyword string) (message.Segment, error) {
7179
songs, err := migu.Search(keyword)
7280
if err != nil {
@@ -77,7 +85,6 @@ func getMiguMusic(keyword string) (message.Segment, error) {
7785
}
7886
song := songs[0]
7987

80-
// 传入 &song (指针)
8188
playURL, err := migu.GetDownloadURL(&song)
8289
if err != nil {
8390
return message.Segment{}, errors.Wrap(err, "获取咪咕播放链接失败")
@@ -93,7 +100,6 @@ func getMiguMusic(keyword string) (message.Segment, error) {
93100
).Add("content", song.Artist).Add("image", song.Cover).Add("subtype", "migu"), nil
94101
}
95102

96-
// getKuwoMusic 酷我音乐点播
97103
func getKuwoMusic(keyword string) (message.Segment, error) {
98104
songs, err := kuwo.Search(keyword)
99105
if err != nil {
@@ -104,7 +110,6 @@ func getKuwoMusic(keyword string) (message.Segment, error) {
104110
}
105111
song := songs[0]
106112

107-
// 传入 &song (指针)
108113
playURL, err := kuwo.GetDownloadURL(&song)
109114
if err != nil {
110115
return message.Segment{}, errors.Wrap(err, "获取酷我播放链接失败")
@@ -120,7 +125,6 @@ func getKuwoMusic(keyword string) (message.Segment, error) {
120125
).Add("content", song.Artist).Add("image", song.Cover).Add("subtype", "kuwo"), nil
121126
}
122127

123-
// getKugouMusic 酷狗音乐点播
124128
func getKugouMusic(keyword string) (message.Segment, error) {
125129
songs, err := kugou.Search(keyword)
126130
if err != nil {
@@ -131,7 +135,6 @@ func getKugouMusic(keyword string) (message.Segment, error) {
131135
}
132136
song := songs[0]
133137

134-
// 传入 &song (指针)
135138
playURL, err := kugou.GetDownloadURL(&song)
136139
if err != nil {
137140
return message.Segment{}, errors.Wrap(err, "获取酷狗播放链接失败")
@@ -147,7 +150,6 @@ func getKugouMusic(keyword string) (message.Segment, error) {
147150
).Add("content", song.Artist).Add("image", song.Cover).Add("subtype", "kugou"), nil
148151
}
149152

150-
// getNeteaseMusic 网易云音乐点播
151153
func getNeteaseMusic(keyword string) (message.Segment, error) {
152154
songs, err := netease.Search(keyword)
153155
if err != nil {
@@ -158,7 +160,6 @@ func getNeteaseMusic(keyword string) (message.Segment, error) {
158160
}
159161
song := songs[0]
160162

161-
// 获取播放直链
162163
playURL, err := netease.GetDownloadURL(&song)
163164
if err != nil {
164165
return message.Segment{}, errors.Wrap(err, "获取网易云播放链接失败")
@@ -167,15 +168,13 @@ func getNeteaseMusic(keyword string) (message.Segment, error) {
167168
return message.Segment{}, errors.New("获取网易云播放链接失败:链接为空")
168169
}
169170

170-
// 构造 CustomMusic
171171
return message.CustomMusic(
172172
fmt.Sprintf("https://music.163.com/#/song?id=%s", song.ID),
173173
playURL,
174174
song.Name,
175175
).Add("content", song.Artist).Add("image", song.Cover).Add("subtype", "163"), nil
176176
}
177177

178-
// getQQMusic QQ音乐点播
179178
func getQQMusic(keyword string) (message.Segment, error) {
180179
songs, err := qq.Search(keyword)
181180
if err != nil {
@@ -186,7 +185,6 @@ func getQQMusic(keyword string) (message.Segment, error) {
186185
}
187186
song := songs[0]
188187

189-
// 获取播放直链
190188
playURL, err := qq.GetDownloadURL(&song)
191189
if err != nil {
192190
return message.Segment{}, errors.Wrap(err, "获取QQ音乐播放链接失败")
@@ -195,7 +193,6 @@ func getQQMusic(keyword string) (message.Segment, error) {
195193
return message.Segment{}, errors.New("获取QQ音乐播放链接失败:链接为空")
196194
}
197195

198-
// 构造 CustomMusic
199196
return message.CustomMusic(
200197
fmt.Sprintf("https://y.qq.com/n/ryqq/songDetail/%s", song.ID),
201198
playURL,

0 commit comments

Comments
 (0)