spotify

package
v1.4.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2022 License: MIT Imports: 16 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client はSpotifyのWeb APIをコールするクライアントです。

func NewClient

func NewClient(cfg *config.Spotify) *Client

NewClient はClientのポインタを生成する関数です。

func (*Client) CurrentlyPlaying

func (c *Client) CurrentlyPlaying(ctx context.Context) (*entity.CurrentPlayingInfo, error)

CurrentlyPlaying は現在の再生状況を取得するAPIです。

func (*Client) DeleteAllTracksInQueue added in v1.2.0

func (c *Client) DeleteAllTracksInQueue(ctx context.Context, deviceID string, trackURI string) error

DeleteAllTracksInQueue はユーザーのSpotifyに積まれている「次に再生される曲」「再生待ち」を全てskipします。 プレミアム会員必須

func (*Client) Enqueue

func (c *Client) Enqueue(ctx context.Context, trackURI string, deviceID string) error

Enqueue は曲を「次に再生される曲」に追加するAPIです。deviceIDが空の場合はデフォルトのデバイスで再生されます。 APIが非同期で処理がされるため、リクエストが返ってきても曲の追加が完了しているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

func (*Client) Exchange

func (c *Client) Exchange(ctx context.Context, code string) (*oauth2.Token, error)

Exchange は Authorization codeを使ってOAuthのアクセストークンを取得します。 ref : https://developer.spotify.com/documentation/general/guides/authorization-guide/

func (*Client) GetActiveDevices

func (c *Client) GetActiveDevices(ctx context.Context) ([]*entity.Device, error)

GetActiveDevices はSpotify APIを通して、ログインしているユーザがSpotifyを起動している端末を取得します。

func (*Client) GetAuthURL

func (c *Client) GetAuthURL(state string) string

GetAuthURL はSpotifyの認証画面のURLを取得します。

func (*Client) GetMe

func (c *Client) GetMe(ctx context.Context) (*entity.SpotifyUser, error)

GetMe は自分の情報をSpotify APIから取得します。

func (*Client) GetTracksFromURI

func (c *Client) GetTracksFromURI(ctx context.Context, trackURIs []string) ([]*entity.Track, error)

GetTrackFromURI はSpotify APIを通して、与えられたTrack URIを用い音楽を取得します。

func (*Client) GoNextTrack added in v1.2.0

func (c *Client) GoNextTrack(ctx context.Context, deviceID string) error

GoNextTrack はユーザーが現在再生している曲を1曲skipします。 APIが非同期で処理がされるため、リクエストが返ってきてもskipが完了しているとは限りません。 プレミアム会員必須

func (*Client) Pause

func (c *Client) Pause(ctx context.Context, deviceID string) error

Pause は再生を一時停止します。deviceIDが空の場合はデフォルトのデバイスで再生されます。 APIが非同期で処理がされるため、リクエストが返ってきても再生が一時停止されているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

func (*Client) Play

func (c *Client) Play(ctx context.Context, deviceID string) error

Play は曲を再生し始めるか現在再生途中の曲の再生を再開するAPIです。deviceIDが空の場合はデフォルトのデバイスで再生されます。 APIが非同期で処理がされるため、リクエストが返ってきても再生が開始しているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

func (*Client) PlayWithTracks

func (c *Client) PlayWithTracks(ctx context.Context, deviceID string, trackURIs []string) error

PlayWithTracks は曲を指定して曲を再生し始めるAPIです。deviceIDが空の場合はデフォルトのデバイスで再生されます。 APIが非同期で処理がされるため、リクエストが返ってきても再生が開始しているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

func (*Client) PlayWithTracksAndPosition added in v1.1.0

func (c *Client) PlayWithTracksAndPosition(ctx context.Context, deviceID string, trackURIs []string, position time.Duration) error

PlayWithTracksAndPosition は指定した曲を、指定した位置から再生を始めるAPIです。deviceIDが空の場合はデフォルトのデバイスで再生されます。 APIが非同期で処理がされるため、リクエストが返ってきても再生が開始しているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

func (*Client) Refresh

func (c *Client) Refresh(ctx context.Context, token *oauth2.Token) (*oauth2.Token, error)

Refresh はリフレッシュトークンを使用して新しいアクセストークンを取得します。

func (*Client) Search

func (c *Client) Search(ctx context.Context, q string) ([]*entity.Track, error)

Search はSpotify APIを通して、与えられたクエリを用い音楽を検索します。

func (*Client) SetRepeatMode

func (c *Client) SetRepeatMode(ctx context.Context, on bool, deviceID string) error

SetRepeatMode はリピートモードの設定を変更するAPIです。 APIが非同期で処理がされるため、リクエストが返ってきてもリピートモードの設定が完了しているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

func (*Client) SetShuffleMode

func (c *Client) SetShuffleMode(ctx context.Context, on bool, deviceID string) error

SetShuffleMode はシャッフルモードの設定を変更するAPIです。 APIが非同期で処理がされるため、リクエストが返ってきてもシャッフルモードの設定が完了しているとは限りません。 設定が反映されたか確認するには CurrentlyPlaying() を叩く必要があります。 プレミアム会員必須

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL