Documentation ¶
Index ¶
- type Album
- type AlbumArtist
- type AlbumCommentResourceInfo
- type AlbumCommentThread
- type AlbumInfo
- type AlbumResp
- type AlbumSearchResult
- type AlbumSocialData
- type Artist
- type ArtistInfo
- type ArtistResp
- type ArtistSearchResult
- type BasicArtistInfo
- type BasicPlaylistCreatorInfo
- type BasicPlaylistInfo
- type BasicRadioInfo
- type BasicSongSearchResult
- type BasicUserInfo
- type ChargeInfo
- type DJInfo
- type ExtendedUserInfoForSearch
- type FreeTrialInfo
- type LRCData
- type LyricResp
- type LyricSearchResult
- type PlayListResp
- type Playlist
- type PlaylistSearchResult
- type PrivilegeInfo
- type RadioSearchResult
- type ResourceInfo
- type SearchResp
- type SearchResultUnion
- type SongInfo
- type SongResp
- type SongSearchResult
- type SongURLInfo
- type SongURLResp
- type TrackID
- type UserInfo
- type UserSearchResult
- type VideoInfo
- type VideoSearchResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlbumArtist ¶
type AlbumArtist struct { Img1V1ID int64 `json:"img1v1Id"` TopicPerson int `json:"topicPerson"` Followed bool `json:"followed"` Alias []interface{} `json:"alias"` PicID int `json:"picId"` BriefDesc string `json:"briefDesc"` MusicSize int `json:"musicSize"` AlbumSize int `json:"albumSize"` Img1V1URL string `json:"img1v1Url"` Trans string `json:"trans"` PicURL string `json:"picUrl"` Name string `json:"name"` ID int `json:"id"` Img1V1IDStr string `json:"img1v1Id_str"` }
type AlbumCommentThread ¶
type AlbumCommentThread struct { ID string `json:"id"` ResourceInfo AlbumCommentResourceInfo `json:"resourceInfo"` ResourceType int `json:"resourceType"` CommentCount int `json:"commentCount"` LikedCount int `json:"likedCount"` HotCount int `json:"hotCount"` LatestLikedUsers interface{} `json:"latestLikedUsers"` ResourceID int `json:"resourceId"` ResourceTitle string `json:"resourceTitle"` ResourceOwnerID int `json:"resourceOwnerId"` }
type AlbumInfo ¶
type AlbumInfo struct { ID int `json:"id"` Type string `json:"type"` Size int `json:"size"` Songs []interface{} `json:"songs"` Paid bool `json:"paid"` OnSale bool `json:"onSale"` Mark int `json:"mark"` Alias []interface{} `json:"alias"` Artists []AlbumArtist `json:"artists"` CopyrightID int `json:"copyrightId"` PicID uint64 `json:"picId"` Artist AlbumArtist `json:"artist"` PublishTime uint64 `json:"publishTime"` Company string `json:"company"` BriefDescription string `json:"briefDesc"` CommentThreadID string `json:"commentThreadId"` CoverImageURL string `json:"picUrl"` CoverImageID uint64 `json:"pic"` CoverImageStringID string `json:"picId_str"` BlurredCoverImageURL string `json:"blurPicUrl"` CompanyID int `json:"companyId"` Tags string `json:"tags"` Description string `json:"description"` Status int `json:"status"` SubType string `json:"subType"` Name string `json:"name"` SocialInfo AlbumSocialData `json:"info"` }
type AlbumResp ¶
type AlbumResp struct { Songs []SongInfo `json:"songs"` Code int `json:"code"` Album AlbumInfo `json:"album"` Response string `json:"-"` }
func (*AlbumResp) Deserialize ¶
type AlbumSearchResult ¶
type AlbumSocialData ¶
type AlbumSocialData struct { CommentThread AlbumCommentThread `json:"commentThread"` LatestLikedUsers interface{} `json:"latestLikedUsers"` Liked bool `json:"liked"` Comments interface{} `json:"comments"` ResourceType int `json:"resourceType"` ResourceID int `json:"resourceId"` CommentCount int `json:"commentCount"` LikedCount int `json:"likedCount"` ThreadID string `json:"threadId"` }
type ArtistInfo ¶
type ArtistInfo struct { BasicArtistInfo // A brief description of this artist. Description string `json:"briefDesc"` TopicPerson int `json:"topicPerson"` Alias []interface{} `json:"alias"` // Number of songs SongCount int `json:"musicSize"` PublishTime uint64 `json:"publishTime"` AccountID uint64 `json:"accountId"` }
type ArtistResp ¶
type ArtistResp struct { Artist ArtistInfo `json:"artist"` // Popular songs Songs []SongInfo `json:"hotSongs"` // There's more songs flag? More bool `json:"more"` Code int `json:"code"` Response string `json:"-"` }
func (*ArtistResp) Deserialize ¶
func (r *ArtistResp) Deserialize(resp string) error
type ArtistSearchResult ¶
type ArtistSearchResult struct { ArtistCount uint `json:"artistCount,omitempty"` Artists []BasicArtistInfo `json:"artists,omitempty"` }
type BasicArtistInfo ¶
type BasicArtistInfo struct { ID int `json:"id"` // Original Name Name string `json:"name"` // Localised name (Chinese) LocalisedName string `json:"trans"` Img1V1ID int64 `json:"img1v1Id"` Img1V1IDStr string `json:"img1v1Id_str"` Img1V1URL string `json:"img1v1Url"` PicID int64 `json:"picId"` PicIDStr string `json:"picId_str"` PicURL string `json:"picUrl"` // Number of albums AlbumCount int `json:"albumSize"` // Number of MV MVCount int `json:"mvSize"` Followed bool `json:"followed"` }
type BasicPlaylistInfo ¶
type BasicPlaylistInfo struct { ID int `json:"id"` Name string `json:"name"` CoverImgURL string `json:"coverImgUrl"` Creator BasicPlaylistCreatorInfo `json:"creator"` Subscribed bool `json:"subscribed"` TrackCount int `json:"trackCount"` UserID int `json:"userId"` PlayCount int `json:"playCount"` BookCount int `json:"bookCount"` OfficialTags interface{} `json:"officialTags,omitempty"` Description string `json:"description"` HighQuality bool `json:"highQuality"` }
type BasicRadioInfo ¶
type BasicRadioInfo struct { ID int `json:"id"` DJ DJInfo `json:"dj"` Name string `json:"name"` PicURL string `json:"picUrl"` Description string `json:"desc"` SubCount int `json:"subCount"` ProgramCount int `json:"programCount"` CreateTime uint64 `json:"createTime"` CategoryID int `json:"categoryId"` Category string `json:"category"` RadioFeeType int `json:"radioFeeType"` FeeScope int `json:"feeScope"` Bought bool `json:"buyed"` Videos interface{} `json:"videos"` Finished bool `json:"finished"` UnderShelf bool `json:"underShelf"` PurchaseCount int `json:"purchaseCount"` Price int `json:"price"` OriginalPrice int `json:"originalPrice"` DiscountPrice interface{} `json:"discountPrice"` LastProgramCreateTime uint64 `json:"lastProgramCreateTime"` LastProgramName string `json:"lastProgramName"` LastProgramID int `json:"lastProgramId"` PicID uint64 `json:"picId"` ComposeVideo bool `json:"composeVideo"` RecommendText string `json:"rcmdtext"` LikedCount int `json:"likedCount"` CommentCount int `json:"commentCount"` }
type BasicSongSearchResult ¶
type BasicUserInfo ¶
type ChargeInfo ¶
type ExtendedUserInfoForSearch ¶
type ExtendedUserInfoForSearch struct { UserInfo AuthenticationTypes int `json:"authenticationTypes"` Anchor bool `json:"anchor"` FollowedByCount int `json:"followeds"` FollowsCount int `json:"follows"` Algorithm string `json:"alg"` PlaylistCount int `json:"playlistCount"` PlaylistBeSubscribedCount int `json:"playlistBeSubscribedCount"` AvatarImgIDStr string `json:"avatarImgId_str,omitempty"` }
type FreeTrialInfo ¶
type LyricResp ¶
type LyricResp struct { UnknownSgc bool `json:"sgc"` UnknownSfy bool `json:"sfy"` UnknownQfy bool `json:"qfy"` Lyrics LRCData `json:"lrc,omitempty"` LocalisedLyrics LRCData `json:"tlyric,omitempty"` Code int `json:"code"` Response string `json:"-"` }
func (*LyricResp) Deserialize ¶
type LyricSearchResult ¶
type LyricSearchResult BasicSongSearchResult
a subset of `SongSearchResult`
type PlayListResp ¶
type PlayListResp struct { Code int `json:"code"` RelatedVideos interface{} `json:"relatedVideos"` Playlist Playlist `json:"playlist"` Urls interface{} `json:"urls"` Privileges []PrivilegeInfo `json:"privileges"` Response string `json:"-"` }
func (*PlayListResp) Deserialize ¶
func (r *PlayListResp) Deserialize(resp string) error
type Playlist ¶
type Playlist struct { BasicPlaylistInfo Creator UserInfo `json:"creator"` Subscribers []interface{} `json:"subscribers"` Tracks []SongInfo `json:"tracks"` TrackIds []TrackID `json:"trackIds"` UpdateFrequency interface{} `json:"updateFrequency"` BackgroundCoverID int `json:"backgroundCoverId"` BackgroundCoverURL interface{} `json:"backgroundCoverUrl"` TitleImage int `json:"titleImage"` TitleImageURL interface{} `json:"titleImageUrl"` EnglishTitle interface{} `json:"englishTitle"` OpRecommend bool `json:"opRecommend"` AdType int `json:"adType"` TrackNumberUpdateTime int64 `json:"trackNumberUpdateTime"` SubscribedCount int `json:"subscribedCount"` CloudTrackCount int `json:"cloudTrackCount"` CreateTime int64 `json:"createTime"` SpecialType int `json:"specialType"` UpdateTime int64 `json:"updateTime"` CoverImgID int64 `json:"coverImgId"` NewImported bool `json:"newImported"` CommentThreadID string `json:"commentThreadId"` Privacy int `json:"privacy"` TrackUpdateTime int64 `json:"trackUpdateTime"` TrackCount int `json:"trackCount"` Ordered bool `json:"ordered"` Tags []interface{} `json:"tags"` Status int `json:"status"` CommentCount int `json:"commentCount"` }
type PlaylistSearchResult ¶
type PlaylistSearchResult struct { Playlists []BasicPlaylistInfo `json:"playlists,omitempty"` PlaylistCount uint `json:"playlistCount,omitempty"` }
type PrivilegeInfo ¶
type PrivilegeInfo struct { ID int `json:"id"` Fee int `json:"fee"` Payed int `json:"payed"` UnknownSt int `json:"st"` UnknownPl int `json:"pl"` UnknownDl int `json:"dl"` UnknownSp int `json:"sp"` UnknownCp int `json:"cp"` UnknownSubp int `json:"subp"` UnknownCs bool `json:"cs"` MaxBitrate int `json:"maxbr"` UnknownFl int `json:"fl"` UnknownToast bool `json:"toast"` UnknownFlag int `json:"flag"` PreOrder bool `json:"preSell"` PlayMaxBitrate int `json:"playMaxbr"` DownloadMaxBitrate int `json:"downloadMaxbr"` ChargeInfoList []ChargeInfo `json:"chargeInfoList"` }
type RadioSearchResult ¶
type RadioSearchResult struct { Radios []BasicRadioInfo `json:"djRadios,omitempty"` RadiosCount uint `json:"djRadiosCount,omitempty"` }
type ResourceInfo ¶
type SearchResp ¶
type SearchResp struct { Result SearchResultUnion `json:"result"` Code int `json:"code"` Response string `json:"-"` }
func (*SearchResp) Deserialize ¶
func (r *SearchResp) Deserialize(resp string) error
type SearchResultUnion ¶
type SearchResultUnion struct { SongSearchResult ArtistSearchResult AlbumSearchResult VideoSearchResult LyricSearchResult PlaylistSearchResult RadioSearchResult UserSearchResult }
type SongInfo ¶
type SongInfo struct { ID int `json:"id"` Name string `json:"name"` TranslatedName []string `json:"tns,omitempty"` UnknownPst int `json:"pst"` UnknownT int `json:"t"` Artists []Artist `json:"ar"` // unknown Aliases []string `json:"alia,omitempty"` UnknownPop float64 `json:"pop"` UnknownSt int `json:"st"` UnknownRt string `json:"rt"` UnknownFee int `json:"fee"` UnknownV int `json:"v"` UnknownCrbt interface{} `json:"crbt"` UnknownCf string `json:"cf"` Album Album `json:"al"` UnknownDt int `json:"dt"` HighQuality ResourceInfo `json:"h,omitempty"` MediumQuality ResourceInfo `json:"m,omitempty"` LowQuality ResourceInfo `json:"l,omitempty"` UnknownA interface{} `json:"a"` UnknownCd string `json:"cd"` UnknownNo int `json:"no"` UnknownRtURL interface{} `json:"rtUrl"` UnknownFtype int `json:"ftype"` UnknownRtUrls []interface{} `json:"rtUrls"` UnknownDjID int `json:"djId"` Copyright int `json:"copyright"` UnknownSID int `json:"s_id"` Mark int `json:"mark"` OriginalCoverType int `json:"originCoverType"` Single int `json:"single"` NoCopyrightRecommend interface{} `json:"noCopyrightRcmd"` HasMV int `json:"mv"` ResourceType int `json:"rtype"` ResourceURL string `json:"rurl"` UnknownMst int `json:"mst"` UnknownCp int `json:"cp"` PublishTime int64 `json:"publishTime"` // Privilege is only available when accessed from "Lyric Search" Privilege PrivilegeInfo `json:"privilege,omitdefault"` // Lyrics is only available when accessed from "Lyric Search" Lyrics []string `json:"lyrics,omitdefault"` }
type SongResp ¶
type SongResp struct { Songs []SongInfo `json:"songs"` Privileges []PrivilegeInfo `json:"privileges"` Code int `json:"code"` Response string `json:"-"` }
func (*SongResp) Deserialize ¶
type SongSearchResult ¶
type SongSearchResult struct { BasicSongSearchResult RecQuery interface{} `json:"rec_query,omitempty"` RecType interface{} `json:"rec_type,omitempty"` Highlights []string `json:"highlights,omitempty"` HasMore bool `json:"hasMore,omitempty"` }
type SongURLInfo ¶
type SongURLInfo struct { ID int `json:"id"` // 200: OK Code int `json:"code"` URL string `json:"url"` Bitrate int `json:"br"` Bytes int `json:"size"` MD5 string `json:"md5"` // Usually 1200, 20 minutes? ExpireIn int `json:"expi"` Type string `json:"type"` Gain float64 `json:"gain"` Fee int `json:"fee"` Payed int `json:"payed"` UnknownUf interface{} `json:"uf"` Flag int `json:"flag"` CanExtend bool `json:"canExtend"` FreeTrialInfo *FreeTrialInfo `json:"freeTrialInfo"` // e.g. "standard" Level string `json:"level"` // e.g. "mp3" EncodeType string `json:"encodeType"` }
func (*SongURLInfo) IsSample ¶
func (s *SongURLInfo) IsSample() bool
type SongURLResp ¶
type SongURLResp struct { Data []SongURLInfo `json:"data"` Code int `json:"code"` Response string `json:"-"` }
func (*SongURLResp) Deserialize ¶
func (r *SongURLResp) Deserialize(resp string) error
type UserInfo ¶
type UserInfo struct { BasicPlaylistCreatorInfo DefaultAvatar bool `json:"defaultAvatar"` Province int `json:"province"` Followed bool `json:"followed"` AvatarURL string `json:"avatarUrl"` AccountStatus int `json:"accountStatus"` Gender int `json:"gender"` City int `json:"city"` Birthday int64 `json:"birthday"` Signature string `json:"signature"` Description string `json:"description"` DetailDescription string `json:"detailDescription"` AvatarImgID int64 `json:"avatarImgId"` BackgroundImgID int64 `json:"backgroundImgId"` BackgroundURL string `json:"backgroundUrl"` Authority int `json:"authority"` Mutual bool `json:"mutual"` DjStatus int `json:"djStatus"` VipType int `json:"vipType"` RemarkName interface{} `json:"remarkName"` AvatarImgIDStr string `json:"avatarImgIdStr"` BackgroundImgIDStr string `json:"backgroundImgIdStr"` }
type UserSearchResult ¶
type UserSearchResult struct { Users []ExtendedUserInfoForSearch `json:"userprofiles"` UsersCount uint `json:"userprofileCount"` }
type VideoInfo ¶
type VideoInfo struct { CoverURL string `json:"coverUrl"` Title string `json:"title"` // Duration in MS DurationMS int `json:"durationms"` PlayTime int `json:"playTime"` Type int `json:"type"` Creator []BasicUserInfo `json:"creator"` AliasName interface{} `json:"aliaName"` TransName interface{} `json:"transName"` VideoID string `json:"vid"` MarkTypes []interface{} `json:"markTypes"` Algorithm string `json:"alg"` }
type VideoSearchResult ¶
Click to show internal directories.
Click to hide internal directories.