API 参考

Audio

浏览音频文件并在设备上控制播放。手机充当媒体播放器。

类型定义

bash
type Audio {
  id: ID!
  title: String!
  artist: String!
  path: String!
  duration: Int!         # milliseconds
  size: Int!             # bytes
  bucketId: String!
  albumFileId: String!   # use GET /fs?id=<albumFileId> for album art
  createdAt: String!
  updatedAt: String!
  tags: [Tag!]!
}

type PlaylistAudio {
  title: String!
  artist: String!
  path: String!
  duration: Int!         # milliseconds
}

enum MediaPlayMode {
  REPEAT_ALL
  REPEAT_ONE
  SHUFFLE
}

操作

query

audios

搜索音频文件。查询留空可列出全部。

bash
query GetAudios($offset: Int!, $limit: Int!, $query: String!, $sortBy: FileSortBy!) {
  audios(offset: $offset, limit: $limit, query: $query, sortBy: $sortBy) {
    id title artist path duration size bucketId albumFileId createdAt
    tags { id name }
  }
}
query

audioCount

统计匹配查询的音频文件数量。

bash
query GetAudioCount($query: String!) {
  audioCount(query: $query)
}
mutation

playAudio

在设备上开始播放音频文件。如果尚未在播放列表中,则会添加。

bash
mutation PlayAudio($path: String!) {
  playAudio(path: $path) { title artist path duration }
}
mutation

updateAudioPlayMode

设置播放模式。

bash
mutation UpdateAudioPlayMode($mode: MediaPlayMode!) {
  updateAudioPlayMode(mode: $mode)
}
mutation

clearAudioPlaylist

清空当前播放列表并停止播放。

bash
mutation ClearAudioPlaylist {
  clearAudioPlaylist
}
mutation

deletePlaylistAudio

按文件路径从播放列表中移除一条音轨。

bash
mutation DeletePlaylistAudio($path: String!) {
  deletePlaylistAudio(path: $path)
}
mutation

addPlaylistAudios

向当前播放列表添加最多 1,000 个匹配的音频文件。

bash
mutation AddPlaylistAudios($query: String!) {
  addPlaylistAudios(query: $query)
}
mutation

reorderPlaylistAudios

通过提供有序的文件路径列表来重新排序播放列表。

bash
mutation ReorderPlaylistAudios($paths: [String!]!) {
  reorderPlaylistAudios(paths: $paths)
}