Skip to content

Commit

Permalink
feat: 新增所有歌曲列表
Browse files Browse the repository at this point in the history
  • Loading branch information
hanxi committed Sep 10, 2024
1 parent 980772b commit 781e5eb
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 9 deletions.
14 changes: 11 additions & 3 deletions xiaomusic/static/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ $(function(){

$('#music_list').change(function() {
const selectedValue = $(this).val();
localStorage.setItem('cur_playlist', selectedValue);
$('#music_name').empty();
const sorted_musics = data[selectedValue].sort(custom_sort_key);
$.each(sorted_musics, function(index, item) {
Expand All @@ -108,10 +109,17 @@ $(function(){
$('#music_list').trigger('change');

// 获取当前播放列表
$.get(`curplaylist?did=${did}`, function(data, status) {
if (data != "") {
$('#music_list').val(data);
$.get(`curplaylist?did=${did}`, function(playlist, status) {
if (playlist != "") {
$('#music_list').val(playlist);
$('#music_list').trigger('change');
} else {
// 使用本地记录的
playlist = localStorage.getItem('cur_playlist');
if (data.includes(playlist)) {
$('#music_list').val(playlist);
$('#music_list').trigger('change');
}
}
})
})
Expand Down
21 changes: 15 additions & 6 deletions xiaomusic/xiaomusic.py
Original file line number Diff line number Diff line change
Expand Up @@ -453,6 +453,9 @@ def _gen_all_music_list(self):
self.log.exception(f"Execption {e}")

self.music_list["全部"] = list(self.all_music.keys())
self.music_list["所有歌曲"] = [
name for name in self.all_music.keys() if name not in self._all_radio
]

self._append_custom_play_list()

Expand Down Expand Up @@ -1189,7 +1192,9 @@ async def text_to_speech(self, value):
# 同一组设备播放
async def group_player_play(self, url, name=""):
device_id_list = self.xiaomusic.get_group_device_id_list(self.group_name)
tasks = [self.play_one_url(device_id, url, name) for device_id in device_id_list]
tasks = [
self.play_one_url(device_id, url, name) for device_id in device_id_list
]
results = await asyncio.gather(*tasks)
self.log.info(f"group_player_play {url} {device_id_list} {results}")
return results
Expand Down Expand Up @@ -1222,15 +1227,19 @@ async def _get_audio_id(self, name):
"queryType": 1,
"offset": 0,
"count": 6,
"timestamp": int(time.time_ns() / 1000)
"timestamp": int(time.time_ns() / 1000),
}
response = await self.xiaomusic.mina_service.mina_request('/music/search', params)
audio_id = response['data']['songList'][5]['audioID'] # QQ音乐为搜索结果的第6首歌
response = await self.xiaomusic.mina_service.mina_request(
"/music/search", params
)
audio_id = response["data"]["songList"][5][
"audioID"
] # QQ音乐为搜索结果的第6首歌
self.log.debug(f"_get_audio_id. name: {name} songId:{audio_id}")
except Exception as e:
self.log.error(f"_get_audio_id {e}")
finally:
return str(audio_id)
return str(audio_id)

# 设置下一首歌曲的播放定时器
async def set_next_music_timeout(self, sec):
self.cancel_next_timer()
Expand Down

0 comments on commit 781e5eb

Please sign in to comment.