api

package
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2025 License: AGPL-3.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// AkustikAPILookupArtistProcedure is the fully-qualified name of the AkustikAPI's LookupArtist RPC.
	AkustikAPILookupArtistProcedure = "/akustik.AkustikAPI/LookupArtist"
	// AkustikAPILookupAlbumProcedure is the fully-qualified name of the AkustikAPI's LookupAlbum RPC.
	AkustikAPILookupAlbumProcedure = "/akustik.AkustikAPI/LookupAlbum"
	// AkustikAPILookupPlaylistProcedure is the fully-qualified name of the AkustikAPI's LookupPlaylist
	// RPC.
	AkustikAPILookupPlaylistProcedure = "/akustik.AkustikAPI/LookupPlaylist"
	// AkustikAPILookupAlbumImageProcedure is the fully-qualified name of the AkustikAPI's
	// LookupAlbumImage RPC.
	AkustikAPILookupAlbumImageProcedure = "/akustik.AkustikAPI/LookupAlbumImage"
	// AkustikAPILookupArtistImageProcedure is the fully-qualified name of the AkustikAPI's
	// LookupArtistImage RPC.
	AkustikAPILookupArtistImageProcedure = "/akustik.AkustikAPI/LookupArtistImage"
	// AkustikAPILookupPlaylistImageProcedure is the fully-qualified name of the AkustikAPI's
	// LookupPlaylistImage RPC.
	AkustikAPILookupPlaylistImageProcedure = "/akustik.AkustikAPI/LookupPlaylistImage"
	// AkustikAPILookupPlayedAlbumImageProcedure is the fully-qualified name of the AkustikAPI's
	// LookupPlayedAlbumImage RPC.
	AkustikAPILookupPlayedAlbumImageProcedure = "/akustik.AkustikAPI/LookupPlayedAlbumImage"
	// AkustikAPIGetStreamingPageProcedure is the fully-qualified name of the AkustikAPI's
	// GetStreamingPage RPC.
	AkustikAPIGetStreamingPageProcedure = "/akustik.AkustikAPI/GetStreamingPage"
	// AkustikAPIListStreamingPlaylistsProcedure is the fully-qualified name of the AkustikAPI's
	// ListStreamingPlaylists RPC.
	AkustikAPIListStreamingPlaylistsProcedure = "/akustik.AkustikAPI/ListStreamingPlaylists"
	// AkustikAPIListStreamingAlbumsProcedure is the fully-qualified name of the AkustikAPI's
	// ListStreamingAlbums RPC.
	AkustikAPIListStreamingAlbumsProcedure = "/akustik.AkustikAPI/ListStreamingAlbums"
	// AkustikAPIListStreamingArtistsProcedure is the fully-qualified name of the AkustikAPI's
	// ListStreamingArtists RPC.
	AkustikAPIListStreamingArtistsProcedure = "/akustik.AkustikAPI/ListStreamingArtists"
	// AkustikAPISearchProcedure is the fully-qualified name of the AkustikAPI's Search RPC.
	AkustikAPISearchProcedure = "/akustik.AkustikAPI/Search"
	// AkustikAPISearchLibraryProcedure is the fully-qualified name of the AkustikAPI's SearchLibrary
	// RPC.
	AkustikAPISearchLibraryProcedure = "/akustik.AkustikAPI/SearchLibrary"
	// AkustikAPIListLibraryArtistsProcedure is the fully-qualified name of the AkustikAPI's
	// ListLibraryArtists RPC.
	AkustikAPIListLibraryArtistsProcedure = "/akustik.AkustikAPI/ListLibraryArtists"
	// AkustikAPIAddStreamingArtistProcedure is the fully-qualified name of the AkustikAPI's
	// AddStreamingArtist RPC.
	AkustikAPIAddStreamingArtistProcedure = "/akustik.AkustikAPI/AddStreamingArtist"
	// AkustikAPIListLibraryAlbumsProcedure is the fully-qualified name of the AkustikAPI's
	// ListLibraryAlbums RPC.
	AkustikAPIListLibraryAlbumsProcedure = "/akustik.AkustikAPI/ListLibraryAlbums"
	// AkustikAPIListPlayedAlbumsProcedure is the fully-qualified name of the AkustikAPI's
	// ListPlayedAlbums RPC.
	AkustikAPIListPlayedAlbumsProcedure = "/akustik.AkustikAPI/ListPlayedAlbums"
	// AkustikAPIAddStreamingAlbumProcedure is the fully-qualified name of the AkustikAPI's
	// AddStreamingAlbum RPC.
	AkustikAPIAddStreamingAlbumProcedure = "/akustik.AkustikAPI/AddStreamingAlbum"
	// AkustikAPIListLibraryPlaylistsProcedure is the fully-qualified name of the AkustikAPI's
	// ListLibraryPlaylists RPC.
	AkustikAPIListLibraryPlaylistsProcedure = "/akustik.AkustikAPI/ListLibraryPlaylists"
	// AkustikAPIAddPlaylistProcedure is the fully-qualified name of the AkustikAPI's AddPlaylist RPC.
	AkustikAPIAddPlaylistProcedure = "/akustik.AkustikAPI/AddPlaylist"
	// AkustikAPIAddTrackToPlaylistProcedure is the fully-qualified name of the AkustikAPI's
	// AddTrackToPlaylist RPC.
	AkustikAPIAddTrackToPlaylistProcedure = "/akustik.AkustikAPI/AddTrackToPlaylist"
	// AkustikAPIImportPlaylistProcedure is the fully-qualified name of the AkustikAPI's ImportPlaylist
	// RPC.
	AkustikAPIImportPlaylistProcedure = "/akustik.AkustikAPI/ImportPlaylist"
	// AkustikAPIPlayProcedure is the fully-qualified name of the AkustikAPI's Play RPC.
	AkustikAPIPlayProcedure = "/akustik.AkustikAPI/Play"
	// AkustikAPIPauseProcedure is the fully-qualified name of the AkustikAPI's Pause RPC.
	AkustikAPIPauseProcedure = "/akustik.AkustikAPI/Pause"
	// AkustikAPISeekProcedure is the fully-qualified name of the AkustikAPI's Seek RPC.
	AkustikAPISeekProcedure = "/akustik.AkustikAPI/Seek"
	// AkustikAPISkipForwardProcedure is the fully-qualified name of the AkustikAPI's SkipForward RPC.
	AkustikAPISkipForwardProcedure = "/akustik.AkustikAPI/SkipForward"
	// AkustikAPISkipBackwardProcedure is the fully-qualified name of the AkustikAPI's SkipBackward RPC.
	AkustikAPISkipBackwardProcedure = "/akustik.AkustikAPI/SkipBackward"
	// AkustikAPISetVolumeProcedure is the fully-qualified name of the AkustikAPI's SetVolume RPC.
	AkustikAPISetVolumeProcedure = "/akustik.AkustikAPI/SetVolume"
	// AkustikAPIEnqueueProcedure is the fully-qualified name of the AkustikAPI's Enqueue RPC.
	AkustikAPIEnqueueProcedure = "/akustik.AkustikAPI/Enqueue"
	// AkustikAPIClearQueueProcedure is the fully-qualified name of the AkustikAPI's ClearQueue RPC.
	AkustikAPIClearQueueProcedure = "/akustik.AkustikAPI/ClearQueue"
	// AkustikAPISubPlayerUpdatesProcedure is the fully-qualified name of the AkustikAPI's
	// SubPlayerUpdates RPC.
	AkustikAPISubPlayerUpdatesProcedure = "/akustik.AkustikAPI/SubPlayerUpdates"
)

These constants are the fully-qualified names of the RPCs defined in this package. They're exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route.

Note that these are different from the fully-qualified method names used by google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to reflection-formatted method names, remove the leading slash and convert the remaining slash to a period.

View Source
const (
	// AkustikAPIName is the fully-qualified name of the AkustikAPI service.
	AkustikAPIName = "akustik.AkustikAPI"
)

Variables

View Source
var (
	PlaybackStatus_name = map[int32]string{
		0: "PLAYBACK_STATUS_UNSPECIFIED",
		1: "PLAYBACK_STATUS_STOPPED",
		2: "PLAYBACK_STATUS_END_REACHED",
		3: "PLAYBACK_STATUS_PAUSED",
		4: "PLAYBACK_STATUS_PLAYING",
	}
	PlaybackStatus_value = map[string]int32{
		"PLAYBACK_STATUS_UNSPECIFIED": 0,
		"PLAYBACK_STATUS_STOPPED":     1,
		"PLAYBACK_STATUS_END_REACHED": 2,
		"PLAYBACK_STATUS_PAUSED":      3,
		"PLAYBACK_STATUS_PLAYING":     4,
	}
)

Enum value maps for PlaybackStatus.

View Source
var (
	SortOrder_name = map[int32]string{
		0: "SORT_ORDER_UNSPECIFIED",
		1: "SORT_ORDER_ASC",
		2: "SORT_ORDER_DESC",
	}
	SortOrder_value = map[string]int32{
		"SORT_ORDER_UNSPECIFIED": 0,
		"SORT_ORDER_ASC":         1,
		"SORT_ORDER_DESC":        2,
	}
)

Enum value maps for SortOrder.

View Source
var File_akustik_akustik_proto protoreflect.FileDescriptor

Functions

func NewAkustikAPIHandler

func NewAkustikAPIHandler(svc AkustikAPIHandler, opts ...connect.HandlerOption) (string, http.Handler)

NewAkustikAPIHandler builds an HTTP handler from the service implementation. It returns the path on which to mount the handler and the handler itself.

By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf and JSON codecs. They also support gzip compression.

Types

type API

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

func Init

func Init(logger *slog.Logger, opts Opts) *API

func (*API) AddPlaylist

func (*API) AddStreamingAlbum

func (a *API) AddStreamingAlbum(ctx context.Context, r *connect.Request[StreamingId]) (*connect.Response[emptypb.Empty], error)

func (*API) AddStreamingArtist

func (a *API) AddStreamingArtist(ctx context.Context, r *connect.Request[StreamingId]) (*connect.Response[emptypb.Empty], error)

func (*API) ClearQueue added in v0.3.2

func (a *API) ClearQueue(ctx context.Context, r *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)

func (*API) Enqueue

func (*API) GetStreamingPage

func (a *API) GetStreamingPage(ctx context.Context, r *connect.Request[emptypb.Empty]) (*connect.Response[Page], error)

func (*API) ImportPlaylist added in v0.4.1

func (a *API) ImportPlaylist(ctx context.Context, r *connect.Request[ImportParams]) (*connect.Response[emptypb.Empty], error)

func (*API) ListLibraryAlbums

func (a *API) ListLibraryAlbums(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Albums], error)

func (*API) ListLibraryArtists

func (a *API) ListLibraryArtists(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Artists], error)

func (*API) ListLibraryPlaylists

func (a *API) ListLibraryPlaylists(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Playlists], error)

func (*API) ListPlayedAlbums

func (a *API) ListPlayedAlbums(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Albums], error)

func (*API) ListStreamingAlbums

func (a *API) ListStreamingAlbums(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Albums], error)

func (*API) ListStreamingArtists

func (a *API) ListStreamingArtists(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Artists], error)

func (*API) ListStreamingPlaylists

func (a *API) ListStreamingPlaylists(ctx context.Context, r *connect.Request[ListParams]) (*connect.Response[Playlists], error)

func (*API) LookupAlbum

func (a *API) LookupAlbum(ctx context.Context, r *connect.Request[Id]) (*connect.Response[AlbumFull], error)

func (*API) LookupAlbumImage added in v0.4.1

func (a *API) LookupAlbumImage(ctx context.Context, r *connect.Request[ImageId], s *connect.ServerStream[ImageChunk]) error

func (*API) LookupArtist

func (a *API) LookupArtist(ctx context.Context, r *connect.Request[Id]) (*connect.Response[ArtistFull], error)

func (*API) LookupArtistImage added in v0.4.1

func (a *API) LookupArtistImage(ctx context.Context, r *connect.Request[ImageId], s *connect.ServerStream[ImageChunk]) error

func (*API) LookupPlayedAlbumImage added in v0.4.1

func (a *API) LookupPlayedAlbumImage(ctx context.Context, r *connect.Request[ImageId], s *connect.ServerStream[ImageChunk]) error

func (*API) LookupPlaylist

func (a *API) LookupPlaylist(ctx context.Context, r *connect.Request[Id]) (*connect.Response[PlaylistFull], error)

func (*API) LookupPlaylistImage added in v0.4.1

func (a *API) LookupPlaylistImage(ctx context.Context, r *connect.Request[ImageId], s *connect.ServerStream[ImageChunk]) error

func (*API) OnPlaybackUpdates

func (a *API) OnPlaybackUpdates(id uuid.UUID, state *playback.PlayerState)

func (*API) Pause

func (*API) Play added in v0.4.4

func (*API) Run

func (a *API) Run(ctx context.Context) error

func (*API) Search

func (*API) SearchLibrary

func (a *API) SearchLibrary(ctx context.Context, r *connect.Request[SearchQuery]) (*connect.Response[LibSearchRes], error)

func (*API) Seek

func (*API) SetVolume

func (*API) SkipBackward

func (a *API) SkipBackward(ctx context.Context, r *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)

func (*API) SkipForward

func (a *API) SkipForward(ctx context.Context, r *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)

func (*API) SubPlayerUpdates

func (a *API) SubPlayerUpdates(ctx context.Context, r *connect.Request[emptypb.Empty], s *connect.ServerStream[PlayerUpdate]) error

type AddPlaylistParams

type AddPlaylistParams struct {
	Title       string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	// contains filtered or unexported fields
}

func (*AddPlaylistParams) Descriptor deprecated

func (*AddPlaylistParams) Descriptor() ([]byte, []int)

Deprecated: Use AddPlaylistParams.ProtoReflect.Descriptor instead.

func (*AddPlaylistParams) GetDescription

func (x *AddPlaylistParams) GetDescription() string

func (*AddPlaylistParams) GetTitle

func (x *AddPlaylistParams) GetTitle() string

func (*AddPlaylistParams) ProtoMessage

func (*AddPlaylistParams) ProtoMessage()

func (*AddPlaylistParams) ProtoReflect

func (x *AddPlaylistParams) ProtoReflect() protoreflect.Message

func (*AddPlaylistParams) Reset

func (x *AddPlaylistParams) Reset()

func (*AddPlaylistParams) String

func (x *AddPlaylistParams) String() string

type AddTrackToPlaylistParams

type AddTrackToPlaylistParams struct {
	PlaylistId string `protobuf:"bytes,1,opt,name=playlist_id,json=playlistId,proto3" json:"playlist_id,omitempty"`
	TrackId    *Id    `protobuf:"bytes,2,opt,name=track_id,json=trackId,proto3" json:"track_id,omitempty"`
	// contains filtered or unexported fields
}

func (*AddTrackToPlaylistParams) Descriptor deprecated

func (*AddTrackToPlaylistParams) Descriptor() ([]byte, []int)

Deprecated: Use AddTrackToPlaylistParams.ProtoReflect.Descriptor instead.

func (*AddTrackToPlaylistParams) GetPlaylistId

func (x *AddTrackToPlaylistParams) GetPlaylistId() string

func (*AddTrackToPlaylistParams) GetTrackId

func (x *AddTrackToPlaylistParams) GetTrackId() *Id

func (*AddTrackToPlaylistParams) ProtoMessage

func (*AddTrackToPlaylistParams) ProtoMessage()

func (*AddTrackToPlaylistParams) ProtoReflect

func (x *AddTrackToPlaylistParams) ProtoReflect() protoreflect.Message

func (*AddTrackToPlaylistParams) Reset

func (x *AddTrackToPlaylistParams) Reset()

func (*AddTrackToPlaylistParams) String

func (x *AddTrackToPlaylistParams) String() string

type AkustikAPIClient

type AkustikAPIClient interface {
	LookupArtist(context.Context, *connect.Request[Id]) (*connect.Response[ArtistFull], error)
	LookupAlbum(context.Context, *connect.Request[Id]) (*connect.Response[AlbumFull], error)
	LookupPlaylist(context.Context, *connect.Request[Id]) (*connect.Response[PlaylistFull], error)
	LookupAlbumImage(context.Context, *connect.Request[ImageId]) (*connect.ServerStreamForClient[ImageChunk], error)
	LookupArtistImage(context.Context, *connect.Request[ImageId]) (*connect.ServerStreamForClient[ImageChunk], error)
	LookupPlaylistImage(context.Context, *connect.Request[ImageId]) (*connect.ServerStreamForClient[ImageChunk], error)
	LookupPlayedAlbumImage(context.Context, *connect.Request[ImageId]) (*connect.ServerStreamForClient[ImageChunk], error)
	GetStreamingPage(context.Context, *connect.Request[emptypb.Empty]) (*connect.Response[Page], error)
	ListStreamingPlaylists(context.Context, *connect.Request[ListParams]) (*connect.Response[Playlists], error)
	ListStreamingAlbums(context.Context, *connect.Request[ListParams]) (*connect.Response[Albums], error)
	ListStreamingArtists(context.Context, *connect.Request[ListParams]) (*connect.Response[Artists], error)
	Search(context.Context, *connect.Request[SearchQuery]) (*connect.Response[SearchRes], error)
	SearchLibrary(context.Context, *connect.Request[SearchQuery]) (*connect.Response[LibSearchRes], error)
	ListLibraryArtists(context.Context, *connect.Request[ListParams]) (*connect.Response[Artists], error)
	AddStreamingArtist(context.Context, *connect.Request[StreamingId]) (*connect.Response[emptypb.Empty], error)
	ListLibraryAlbums(context.Context, *connect.Request[ListParams]) (*connect.Response[Albums], error)
	ListPlayedAlbums(context.Context, *connect.Request[ListParams]) (*connect.Response[Albums], error)
	AddStreamingAlbum(context.Context, *connect.Request[StreamingId]) (*connect.Response[emptypb.Empty], error)
	ListLibraryPlaylists(context.Context, *connect.Request[ListParams]) (*connect.Response[Playlists], error)
	AddPlaylist(context.Context, *connect.Request[AddPlaylistParams]) (*connect.Response[emptypb.Empty], error)
	AddTrackToPlaylist(context.Context, *connect.Request[AddTrackToPlaylistParams]) (*connect.Response[emptypb.Empty], error)
	ImportPlaylist(context.Context, *connect.Request[ImportParams]) (*connect.Response[emptypb.Empty], error)
	Play(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	Pause(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	Seek(context.Context, *connect.Request[SeekParams]) (*connect.Response[emptypb.Empty], error)
	SkipForward(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	SkipBackward(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	SetVolume(context.Context, *connect.Request[SetVolParams]) (*connect.Response[emptypb.Empty], error)
	Enqueue(context.Context, *connect.Request[EnqueueParams]) (*connect.Response[emptypb.Empty], error)
	ClearQueue(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	SubPlayerUpdates(context.Context, *connect.Request[emptypb.Empty]) (*connect.ServerStreamForClient[PlayerUpdate], error)
}

AkustikAPIClient is a client for the akustik.AkustikAPI service.

func NewAkustikAPIClient

func NewAkustikAPIClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) AkustikAPIClient

NewAkustikAPIClient constructs a client for the akustik.AkustikAPI service. By default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or connect.WithGRPCWeb() options.

The URL supplied here should be the base URL for the Connect or gRPC server (for example, http://api.acme.com or https://acme.com/grpc).

type AkustikAPIHandler

type AkustikAPIHandler interface {
	LookupArtist(context.Context, *connect.Request[Id]) (*connect.Response[ArtistFull], error)
	LookupAlbum(context.Context, *connect.Request[Id]) (*connect.Response[AlbumFull], error)
	LookupPlaylist(context.Context, *connect.Request[Id]) (*connect.Response[PlaylistFull], error)
	LookupAlbumImage(context.Context, *connect.Request[ImageId], *connect.ServerStream[ImageChunk]) error
	LookupArtistImage(context.Context, *connect.Request[ImageId], *connect.ServerStream[ImageChunk]) error
	LookupPlaylistImage(context.Context, *connect.Request[ImageId], *connect.ServerStream[ImageChunk]) error
	LookupPlayedAlbumImage(context.Context, *connect.Request[ImageId], *connect.ServerStream[ImageChunk]) error
	GetStreamingPage(context.Context, *connect.Request[emptypb.Empty]) (*connect.Response[Page], error)
	ListStreamingPlaylists(context.Context, *connect.Request[ListParams]) (*connect.Response[Playlists], error)
	ListStreamingAlbums(context.Context, *connect.Request[ListParams]) (*connect.Response[Albums], error)
	ListStreamingArtists(context.Context, *connect.Request[ListParams]) (*connect.Response[Artists], error)
	Search(context.Context, *connect.Request[SearchQuery]) (*connect.Response[SearchRes], error)
	SearchLibrary(context.Context, *connect.Request[SearchQuery]) (*connect.Response[LibSearchRes], error)
	ListLibraryArtists(context.Context, *connect.Request[ListParams]) (*connect.Response[Artists], error)
	AddStreamingArtist(context.Context, *connect.Request[StreamingId]) (*connect.Response[emptypb.Empty], error)
	ListLibraryAlbums(context.Context, *connect.Request[ListParams]) (*connect.Response[Albums], error)
	ListPlayedAlbums(context.Context, *connect.Request[ListParams]) (*connect.Response[Albums], error)
	AddStreamingAlbum(context.Context, *connect.Request[StreamingId]) (*connect.Response[emptypb.Empty], error)
	ListLibraryPlaylists(context.Context, *connect.Request[ListParams]) (*connect.Response[Playlists], error)
	AddPlaylist(context.Context, *connect.Request[AddPlaylistParams]) (*connect.Response[emptypb.Empty], error)
	AddTrackToPlaylist(context.Context, *connect.Request[AddTrackToPlaylistParams]) (*connect.Response[emptypb.Empty], error)
	ImportPlaylist(context.Context, *connect.Request[ImportParams]) (*connect.Response[emptypb.Empty], error)
	Play(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	Pause(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	Seek(context.Context, *connect.Request[SeekParams]) (*connect.Response[emptypb.Empty], error)
	SkipForward(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	SkipBackward(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	SetVolume(context.Context, *connect.Request[SetVolParams]) (*connect.Response[emptypb.Empty], error)
	Enqueue(context.Context, *connect.Request[EnqueueParams]) (*connect.Response[emptypb.Empty], error)
	ClearQueue(context.Context, *connect.Request[PlayerId]) (*connect.Response[emptypb.Empty], error)
	SubPlayerUpdates(context.Context, *connect.Request[emptypb.Empty], *connect.ServerStream[PlayerUpdate]) error
}

AkustikAPIHandler is an implementation of the akustik.AkustikAPI service.

type Album

type Album struct {
	Id      *Id                    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title   string                 `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	Release *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=release,proto3,oneof" json:"release,omitempty"`
	Added   *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=added,proto3,oneof" json:"added,omitempty"`
	ImageId *ImageId               `protobuf:"bytes,5,opt,name=image_id,json=imageId,proto3,oneof" json:"image_id,omitempty"`
	Artists []*Artist              `protobuf:"bytes,6,rep,name=artists,proto3" json:"artists,omitempty"`
	// contains filtered or unexported fields
}

func (*Album) Descriptor deprecated

func (*Album) Descriptor() ([]byte, []int)

Deprecated: Use Album.ProtoReflect.Descriptor instead.

func (*Album) GetAdded

func (x *Album) GetAdded() *timestamppb.Timestamp

func (*Album) GetArtists

func (x *Album) GetArtists() []*Artist

func (*Album) GetId

func (x *Album) GetId() *Id

func (*Album) GetImageId added in v0.3.0

func (x *Album) GetImageId() *ImageId

func (*Album) GetRelease

func (x *Album) GetRelease() *timestamppb.Timestamp

func (*Album) GetTitle

func (x *Album) GetTitle() string

func (*Album) ProtoMessage

func (*Album) ProtoMessage()

func (*Album) ProtoReflect

func (x *Album) ProtoReflect() protoreflect.Message

func (*Album) Reset

func (x *Album) Reset()

func (*Album) String

func (x *Album) String() string

type AlbumFull

type AlbumFull struct {
	Album *Album  `protobuf:"bytes,1,opt,name=album,proto3" json:"album,omitempty"`
	Discs []*Disc `protobuf:"bytes,2,rep,name=discs,proto3" json:"discs,omitempty"`
	// contains filtered or unexported fields
}

func (*AlbumFull) Descriptor deprecated

func (*AlbumFull) Descriptor() ([]byte, []int)

Deprecated: Use AlbumFull.ProtoReflect.Descriptor instead.

func (*AlbumFull) GetAlbum

func (x *AlbumFull) GetAlbum() *Album

func (*AlbumFull) GetDiscs

func (x *AlbumFull) GetDiscs() []*Disc

func (*AlbumFull) ProtoMessage

func (*AlbumFull) ProtoMessage()

func (*AlbumFull) ProtoReflect

func (x *AlbumFull) ProtoReflect() protoreflect.Message

func (*AlbumFull) Reset

func (x *AlbumFull) Reset()

func (*AlbumFull) String

func (x *AlbumFull) String() string

type AlbumSource

type AlbumSource struct {
	Id   *Id   `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Disc int32 `protobuf:"varint,2,opt,name=disc,proto3" json:"disc,omitempty"`
	// contains filtered or unexported fields
}

func (*AlbumSource) Descriptor deprecated

func (*AlbumSource) Descriptor() ([]byte, []int)

Deprecated: Use AlbumSource.ProtoReflect.Descriptor instead.

func (*AlbumSource) GetDisc

func (x *AlbumSource) GetDisc() int32

func (*AlbumSource) GetId

func (x *AlbumSource) GetId() *Id

func (*AlbumSource) ProtoMessage

func (*AlbumSource) ProtoMessage()

func (*AlbumSource) ProtoReflect

func (x *AlbumSource) ProtoReflect() protoreflect.Message

func (*AlbumSource) Reset

func (x *AlbumSource) Reset()

func (*AlbumSource) String

func (x *AlbumSource) String() string

type Albums

type Albums struct {
	List []*Album `protobuf:"bytes,1,rep,name=list,proto3" json:"list,omitempty"`
	// contains filtered or unexported fields
}

func (*Albums) Descriptor deprecated

func (*Albums) Descriptor() ([]byte, []int)

Deprecated: Use Albums.ProtoReflect.Descriptor instead.

func (*Albums) GetList

func (x *Albums) GetList() []*Album

func (*Albums) ProtoMessage

func (*Albums) ProtoMessage()

func (*Albums) ProtoReflect

func (x *Albums) ProtoReflect() protoreflect.Message

func (*Albums) Reset

func (x *Albums) Reset()

func (*Albums) String

func (x *Albums) String() string

type Artist

type Artist struct {
	Id      *Id                    `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title   string                 `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	ImageId *ImageId               `protobuf:"bytes,3,opt,name=image_id,json=imageId,proto3,oneof" json:"image_id,omitempty"`
	Added   *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=added,proto3,oneof" json:"added,omitempty"`
	// contains filtered or unexported fields
}

func (*Artist) Descriptor deprecated

func (*Artist) Descriptor() ([]byte, []int)

Deprecated: Use Artist.ProtoReflect.Descriptor instead.

func (*Artist) GetAdded

func (x *Artist) GetAdded() *timestamppb.Timestamp

func (*Artist) GetId

func (x *Artist) GetId() *Id

func (*Artist) GetImageId added in v0.3.0

func (x *Artist) GetImageId() *ImageId

func (*Artist) GetTitle

func (x *Artist) GetTitle() string

func (*Artist) ProtoMessage

func (*Artist) ProtoMessage()

func (*Artist) ProtoReflect

func (x *Artist) ProtoReflect() protoreflect.Message

func (*Artist) Reset

func (x *Artist) Reset()

func (*Artist) String

func (x *Artist) String() string

type ArtistFull

type ArtistFull struct {
	Artist        *Artist  `protobuf:"bytes,1,opt,name=artist,proto3" json:"artist,omitempty"`
	PopularTracks []*Track `protobuf:"bytes,2,rep,name=popular_tracks,json=popularTracks,proto3" json:"popular_tracks,omitempty"`
	InLibrary     []*Album `protobuf:"bytes,3,rep,name=in_library,json=inLibrary,proto3" json:"in_library,omitempty"`
	Albums        []*Album `protobuf:"bytes,4,rep,name=albums,proto3" json:"albums,omitempty"`
	SinglesAndEps []*Album `protobuf:"bytes,5,rep,name=singles_and_eps,json=singlesAndEps,proto3" json:"singles_and_eps,omitempty"`
	Appearances   []*Album `protobuf:"bytes,6,rep,name=appearances,proto3" json:"appearances,omitempty"`
	// contains filtered or unexported fields
}

func (*ArtistFull) Descriptor deprecated

func (*ArtistFull) Descriptor() ([]byte, []int)

Deprecated: Use ArtistFull.ProtoReflect.Descriptor instead.

func (*ArtistFull) GetAlbums

func (x *ArtistFull) GetAlbums() []*Album

func (*ArtistFull) GetAppearances

func (x *ArtistFull) GetAppearances() []*Album

func (*ArtistFull) GetArtist

func (x *ArtistFull) GetArtist() *Artist

func (*ArtistFull) GetInLibrary

func (x *ArtistFull) GetInLibrary() []*Album

func (*ArtistFull) GetPopularTracks

func (x *ArtistFull) GetPopularTracks() []*Track

func (*ArtistFull) GetSinglesAndEps

func (x *ArtistFull) GetSinglesAndEps() []*Album

func (*ArtistFull) ProtoMessage

func (*ArtistFull) ProtoMessage()

func (*ArtistFull) ProtoReflect

func (x *ArtistFull) ProtoReflect() protoreflect.Message

func (*ArtistFull) Reset

func (x *ArtistFull) Reset()

func (*ArtistFull) String

func (x *ArtistFull) String() string

type Artists

type Artists struct {
	List []*Artist `protobuf:"bytes,1,rep,name=list,proto3" json:"list,omitempty"`
	// contains filtered or unexported fields
}

func (*Artists) Descriptor deprecated

func (*Artists) Descriptor() ([]byte, []int)

Deprecated: Use Artists.ProtoReflect.Descriptor instead.

func (*Artists) GetList

func (x *Artists) GetList() []*Artist

func (*Artists) ProtoMessage

func (*Artists) ProtoMessage()

func (*Artists) ProtoReflect

func (x *Artists) ProtoReflect() protoreflect.Message

func (*Artists) Reset

func (x *Artists) Reset()

func (*Artists) String

func (x *Artists) String() string

type Disc

type Disc struct {
	Tracks []*Track `protobuf:"bytes,1,rep,name=tracks,proto3" json:"tracks,omitempty"`
	// contains filtered or unexported fields
}

func (*Disc) Descriptor deprecated

func (*Disc) Descriptor() ([]byte, []int)

Deprecated: Use Disc.ProtoReflect.Descriptor instead.

func (*Disc) GetTracks

func (x *Disc) GetTracks() []*Track

func (*Disc) ProtoMessage

func (*Disc) ProtoMessage()

func (*Disc) ProtoReflect

func (x *Disc) ProtoReflect() protoreflect.Message

func (*Disc) Reset

func (x *Disc) Reset()

func (*Disc) String

func (x *Disc) String() string

type EnqueueParams

type EnqueueParams struct {
	Player *PlayerId `protobuf:"bytes,1,opt,name=player,proto3" json:"player,omitempty"`
	Clear  bool      `protobuf:"varint,2,opt,name=clear,proto3" json:"clear,omitempty"`
	From   int32     `protobuf:"varint,3,opt,name=from,proto3" json:"from,omitempty"`
	Limit  int32     `protobuf:"varint,4,opt,name=limit,proto3" json:"limit,omitempty"`
	Next   bool      `protobuf:"varint,5,opt,name=next,proto3" json:"next,omitempty"`
	// Types that are valid to be assigned to Source:
	//
	//	*EnqueueParams_Album
	//	*EnqueueParams_Playlist
	//	*EnqueueParams_Popular
	//	*EnqueueParams_PageEntry
	Source isEnqueueParams_Source `protobuf_oneof:"source"`
	// contains filtered or unexported fields
}

func (*EnqueueParams) Descriptor deprecated

func (*EnqueueParams) Descriptor() ([]byte, []int)

Deprecated: Use EnqueueParams.ProtoReflect.Descriptor instead.

func (*EnqueueParams) GetAlbum

func (x *EnqueueParams) GetAlbum() *AlbumSource

func (*EnqueueParams) GetClear

func (x *EnqueueParams) GetClear() bool

func (*EnqueueParams) GetFrom

func (x *EnqueueParams) GetFrom() int32

func (*EnqueueParams) GetLimit

func (x *EnqueueParams) GetLimit() int32

func (*EnqueueParams) GetNext

func (x *EnqueueParams) GetNext() bool

func (*EnqueueParams) GetPageEntry

func (x *EnqueueParams) GetPageEntry() *PageEntrySource

func (*EnqueueParams) GetPlayer

func (x *EnqueueParams) GetPlayer() *PlayerId

func (*EnqueueParams) GetPlaylist

func (x *EnqueueParams) GetPlaylist() *PlaylistSource

func (*EnqueueParams) GetPopular

func (x *EnqueueParams) GetPopular() *PopularSource

func (*EnqueueParams) GetSource

func (x *EnqueueParams) GetSource() isEnqueueParams_Source

func (*EnqueueParams) ProtoMessage

func (*EnqueueParams) ProtoMessage()

func (*EnqueueParams) ProtoReflect

func (x *EnqueueParams) ProtoReflect() protoreflect.Message

func (*EnqueueParams) Reset

func (x *EnqueueParams) Reset()

func (*EnqueueParams) String

func (x *EnqueueParams) String() string

type EnqueueParams_Album

type EnqueueParams_Album struct {
	Album *AlbumSource `protobuf:"bytes,6,opt,name=album,proto3,oneof"`
}

type EnqueueParams_PageEntry

type EnqueueParams_PageEntry struct {
	PageEntry *PageEntrySource `protobuf:"bytes,9,opt,name=page_entry,json=pageEntry,proto3,oneof"`
}

type EnqueueParams_Playlist

type EnqueueParams_Playlist struct {
	Playlist *PlaylistSource `protobuf:"bytes,7,opt,name=playlist,proto3,oneof"`
}
type EnqueueParams_Popular struct {
	Popular *PopularSource `protobuf:"bytes,8,opt,name=popular,proto3,oneof"`
}

type IDType added in v0.3.0

type IDType string
const (
	LibraryID   IDType = "library"
	StreamingID IDType = "streaming"
)

type Id

type Id struct {
	LibId       *string `protobuf:"bytes,2,opt,name=lib_id,json=libId,proto3,oneof" json:"lib_id,omitempty"`
	StreamingId *string `protobuf:"bytes,3,opt,name=streaming_id,json=streamingId,proto3,oneof" json:"streaming_id,omitempty"`
	// contains filtered or unexported fields
}

func (*Id) Descriptor deprecated

func (*Id) Descriptor() ([]byte, []int)

Deprecated: Use Id.ProtoReflect.Descriptor instead.

func (*Id) GetLibId

func (x *Id) GetLibId() string

func (*Id) GetStreamingId

func (x *Id) GetStreamingId() string

func (*Id) ProtoMessage

func (*Id) ProtoMessage()

func (*Id) ProtoReflect

func (x *Id) ProtoReflect() protoreflect.Message

func (*Id) Reset

func (x *Id) Reset()

func (*Id) String

func (x *Id) String() string

type ImageChunk added in v0.3.0

type ImageChunk struct {
	Chunk []byte `protobuf:"bytes,1,opt,name=chunk,proto3" json:"chunk,omitempty"`
	// contains filtered or unexported fields
}

func (*ImageChunk) Descriptor deprecated added in v0.3.0

func (*ImageChunk) Descriptor() ([]byte, []int)

Deprecated: Use ImageChunk.ProtoReflect.Descriptor instead.

func (*ImageChunk) GetChunk added in v0.3.0

func (x *ImageChunk) GetChunk() []byte

func (*ImageChunk) ProtoMessage added in v0.3.0

func (*ImageChunk) ProtoMessage()

func (*ImageChunk) ProtoReflect added in v0.3.0

func (x *ImageChunk) ProtoReflect() protoreflect.Message

func (*ImageChunk) Reset added in v0.3.0

func (x *ImageChunk) Reset()

func (*ImageChunk) String added in v0.3.0

func (x *ImageChunk) String() string

type ImageIDType added in v0.3.0

type ImageIDType string
const (
	LibraryImageID ImageIDType = "library"
	URLImageID     ImageIDType = "url"
)

type ImageId added in v0.3.0

type ImageId struct {
	LibId *string `protobuf:"bytes,1,opt,name=lib_id,json=libId,proto3,oneof" json:"lib_id,omitempty"`
	Url   *string `protobuf:"bytes,2,opt,name=url,proto3,oneof" json:"url,omitempty"`
	// contains filtered or unexported fields
}

func (*ImageId) Descriptor deprecated added in v0.3.0

func (*ImageId) Descriptor() ([]byte, []int)

Deprecated: Use ImageId.ProtoReflect.Descriptor instead.

func (*ImageId) GetLibId added in v0.3.0

func (x *ImageId) GetLibId() string

func (*ImageId) GetUrl added in v0.3.0

func (x *ImageId) GetUrl() string

func (*ImageId) ProtoMessage added in v0.3.0

func (*ImageId) ProtoMessage()

func (*ImageId) ProtoReflect added in v0.3.0

func (x *ImageId) ProtoReflect() protoreflect.Message

func (*ImageId) Reset added in v0.3.0

func (x *ImageId) Reset()

func (*ImageId) String added in v0.3.0

func (x *ImageId) String() string

type ImportParams added in v0.4.1

type ImportParams struct {
	Id    string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	// contains filtered or unexported fields
}

func (*ImportParams) Descriptor deprecated added in v0.4.1

func (*ImportParams) Descriptor() ([]byte, []int)

Deprecated: Use ImportParams.ProtoReflect.Descriptor instead.

func (*ImportParams) GetId added in v0.4.1

func (x *ImportParams) GetId() string

func (*ImportParams) GetTitle added in v0.4.1

func (x *ImportParams) GetTitle() string

func (*ImportParams) ProtoMessage added in v0.4.1

func (*ImportParams) ProtoMessage()

func (*ImportParams) ProtoReflect added in v0.4.1

func (x *ImportParams) ProtoReflect() protoreflect.Message

func (*ImportParams) Reset added in v0.4.1

func (x *ImportParams) Reset()

func (*ImportParams) String added in v0.4.1

func (x *ImportParams) String() string

type LibSearchEntry

type LibSearchEntry struct {
	Id       *Id      `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title    string   `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	SubTitle *string  `protobuf:"bytes,3,opt,name=sub_title,json=subTitle,proto3,oneof" json:"sub_title,omitempty"`
	ImageId  *ImageId `protobuf:"bytes,4,opt,name=image_id,json=imageId,proto3,oneof" json:"image_id,omitempty"`
	// contains filtered or unexported fields
}

func (*LibSearchEntry) Descriptor deprecated

func (*LibSearchEntry) Descriptor() ([]byte, []int)

Deprecated: Use LibSearchEntry.ProtoReflect.Descriptor instead.

func (*LibSearchEntry) GetId

func (x *LibSearchEntry) GetId() *Id

func (*LibSearchEntry) GetImageId added in v0.3.0

func (x *LibSearchEntry) GetImageId() *ImageId

func (*LibSearchEntry) GetSubTitle

func (x *LibSearchEntry) GetSubTitle() string

func (*LibSearchEntry) GetTitle

func (x *LibSearchEntry) GetTitle() string

func (*LibSearchEntry) ProtoMessage

func (*LibSearchEntry) ProtoMessage()

func (*LibSearchEntry) ProtoReflect

func (x *LibSearchEntry) ProtoReflect() protoreflect.Message

func (*LibSearchEntry) Reset

func (x *LibSearchEntry) Reset()

func (*LibSearchEntry) String

func (x *LibSearchEntry) String() string

type LibSearchRes

type LibSearchRes struct {
	Results int32             `protobuf:"varint,1,opt,name=results,proto3" json:"results,omitempty"`
	Albums  []*LibSearchEntry `protobuf:"bytes,2,rep,name=albums,proto3" json:"albums,omitempty"`
	Tracks  []*LibSearchEntry `protobuf:"bytes,3,rep,name=tracks,proto3" json:"tracks,omitempty"`
	Artists []*LibSearchEntry `protobuf:"bytes,4,rep,name=artists,proto3" json:"artists,omitempty"`
	// contains filtered or unexported fields
}

func (*LibSearchRes) Descriptor deprecated

func (*LibSearchRes) Descriptor() ([]byte, []int)

Deprecated: Use LibSearchRes.ProtoReflect.Descriptor instead.

func (*LibSearchRes) GetAlbums

func (x *LibSearchRes) GetAlbums() []*LibSearchEntry

func (*LibSearchRes) GetArtists

func (x *LibSearchRes) GetArtists() []*LibSearchEntry

func (*LibSearchRes) GetResults

func (x *LibSearchRes) GetResults() int32

func (*LibSearchRes) GetTracks

func (x *LibSearchRes) GetTracks() []*LibSearchEntry

func (*LibSearchRes) ProtoMessage

func (*LibSearchRes) ProtoMessage()

func (*LibSearchRes) ProtoReflect

func (x *LibSearchRes) ProtoReflect() protoreflect.Message

func (*LibSearchRes) Reset

func (x *LibSearchRes) Reset()

func (*LibSearchRes) String

func (x *LibSearchRes) String() string

type Library

type Library interface {
	ListAlbums(ctx context.Context, opt library.ListOpt) ([]library.AlbumWithArtists, error)
	ListPlayedAlbums(ctx context.Context, opt library.ListOpt) ([]library.PlayedAlbum, error)

	ListArtists(ctx context.Context, opt library.ListOpt) ([]library.Artist, error)

	ListPlaylists(ctx context.Context, opt library.ListOpt) ([]library.Playlist, error)
	AddPlaylist(ctx context.Context, title, description string) error
	AddTrackToPlaylist(ctx context.Context, playlistID, trackID uuid.UUID) error

	Search(ctx context.Context, query string, limit int) (library.SearchRes, error)
}

type ListParams

type ListParams struct {
	SortBy    string    `protobuf:"bytes,1,opt,name=sort_by,json=sortBy,proto3" json:"sort_by,omitempty"`
	SortOrder SortOrder `protobuf:"varint,2,opt,name=sort_order,json=sortOrder,proto3,enum=akustik.SortOrder" json:"sort_order,omitempty"`
	Offset    *int32    `protobuf:"varint,3,opt,name=offset,proto3,oneof" json:"offset,omitempty"`
	Limit     *int32    `protobuf:"varint,4,opt,name=limit,proto3,oneof" json:"limit,omitempty"`
	Search    *string   `protobuf:"bytes,5,opt,name=search,proto3,oneof" json:"search,omitempty"`
	// contains filtered or unexported fields
}

func (*ListParams) Descriptor deprecated

func (*ListParams) Descriptor() ([]byte, []int)

Deprecated: Use ListParams.ProtoReflect.Descriptor instead.

func (*ListParams) GetLimit

func (x *ListParams) GetLimit() int32

func (*ListParams) GetOffset

func (x *ListParams) GetOffset() int32

func (*ListParams) GetSearch

func (x *ListParams) GetSearch() string

func (*ListParams) GetSortBy

func (x *ListParams) GetSortBy() string

func (*ListParams) GetSortOrder

func (x *ListParams) GetSortOrder() SortOrder

func (*ListParams) ProtoMessage

func (*ListParams) ProtoMessage()

func (*ListParams) ProtoReflect

func (x *ListParams) ProtoReflect() protoreflect.Message

func (*ListParams) Reset

func (x *ListParams) Reset()

func (*ListParams) String

func (x *ListParams) String() string

type Opts

type Opts struct {
	Listen string
	Port   int

	Lib       Library
	Streaming *streaming.Client

	LookupService   *lookup.Service
	LibService      *library.Service
	SearchService   *search.Service
	PlaybackService *playback.Service
}

type Page

type Page struct {
	Entries []*PageEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	// contains filtered or unexported fields
}

func (*Page) Descriptor deprecated

func (*Page) Descriptor() ([]byte, []int)

Deprecated: Use Page.ProtoReflect.Descriptor instead.

func (*Page) GetEntries

func (x *Page) GetEntries() []*PageEntry

func (*Page) ProtoMessage

func (*Page) ProtoMessage()

func (*Page) ProtoReflect

func (x *Page) ProtoReflect() protoreflect.Message

func (*Page) Reset

func (x *Page) Reset()

func (*Page) String

func (x *Page) String() string

type PageEntry

type PageEntry struct {
	Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	// Types that are valid to be assigned to Content:
	//
	//	*PageEntry_Albums
	//	*PageEntry_Playlists
	//	*PageEntry_Tracks
	Content isPageEntry_Content `protobuf_oneof:"content"`
	// contains filtered or unexported fields
}

func (*PageEntry) Descriptor deprecated

func (*PageEntry) Descriptor() ([]byte, []int)

Deprecated: Use PageEntry.ProtoReflect.Descriptor instead.

func (*PageEntry) GetAlbums

func (x *PageEntry) GetAlbums() *Albums

func (*PageEntry) GetContent

func (x *PageEntry) GetContent() isPageEntry_Content

func (*PageEntry) GetPlaylists

func (x *PageEntry) GetPlaylists() *Playlists

func (*PageEntry) GetTitle

func (x *PageEntry) GetTitle() string

func (*PageEntry) GetTracks

func (x *PageEntry) GetTracks() *Tracks

func (*PageEntry) ProtoMessage

func (*PageEntry) ProtoMessage()

func (*PageEntry) ProtoReflect

func (x *PageEntry) ProtoReflect() protoreflect.Message

func (*PageEntry) Reset

func (x *PageEntry) Reset()

func (*PageEntry) String

func (x *PageEntry) String() string

type PageEntrySource

type PageEntrySource struct {
	Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	// contains filtered or unexported fields
}

func (*PageEntrySource) Descriptor deprecated

func (*PageEntrySource) Descriptor() ([]byte, []int)

Deprecated: Use PageEntrySource.ProtoReflect.Descriptor instead.

func (*PageEntrySource) GetTitle

func (x *PageEntrySource) GetTitle() string

func (*PageEntrySource) ProtoMessage

func (*PageEntrySource) ProtoMessage()

func (*PageEntrySource) ProtoReflect

func (x *PageEntrySource) ProtoReflect() protoreflect.Message

func (*PageEntrySource) Reset

func (x *PageEntrySource) Reset()

func (*PageEntrySource) String

func (x *PageEntrySource) String() string

type PageEntry_Albums

type PageEntry_Albums struct {
	Albums *Albums `protobuf:"bytes,2,opt,name=albums,proto3,oneof"`
}

type PageEntry_Playlists

type PageEntry_Playlists struct {
	Playlists *Playlists `protobuf:"bytes,3,opt,name=playlists,proto3,oneof"`
}

type PageEntry_Tracks

type PageEntry_Tracks struct {
	Tracks *Tracks `protobuf:"bytes,4,opt,name=tracks,proto3,oneof"`
}

type PlaybackState

type PlaybackState struct {
	Name     string                 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	Volume   int32                  `protobuf:"varint,2,opt,name=volume,proto3" json:"volume,omitempty"`
	Status   PlaybackStatus         `protobuf:"varint,3,opt,name=status,proto3,enum=akustik.PlaybackStatus" json:"status,omitempty"`
	Elapsed  *durationpb.Duration   `protobuf:"bytes,4,opt,name=elapsed,proto3" json:"elapsed,omitempty"`
	Duration *durationpb.Duration   `protobuf:"bytes,5,opt,name=duration,proto3" json:"duration,omitempty"`
	Since    *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=since,proto3" json:"since,omitempty"`
	// contains filtered or unexported fields
}

func (*PlaybackState) Descriptor deprecated

func (*PlaybackState) Descriptor() ([]byte, []int)

Deprecated: Use PlaybackState.ProtoReflect.Descriptor instead.

func (*PlaybackState) GetDuration

func (x *PlaybackState) GetDuration() *durationpb.Duration

func (*PlaybackState) GetElapsed

func (x *PlaybackState) GetElapsed() *durationpb.Duration

func (*PlaybackState) GetName

func (x *PlaybackState) GetName() string

func (*PlaybackState) GetSince

func (x *PlaybackState) GetSince() *timestamppb.Timestamp

func (*PlaybackState) GetStatus

func (x *PlaybackState) GetStatus() PlaybackStatus

func (*PlaybackState) GetVolume

func (x *PlaybackState) GetVolume() int32

func (*PlaybackState) ProtoMessage

func (*PlaybackState) ProtoMessage()

func (*PlaybackState) ProtoReflect

func (x *PlaybackState) ProtoReflect() protoreflect.Message

func (*PlaybackState) Reset

func (x *PlaybackState) Reset()

func (*PlaybackState) String

func (x *PlaybackState) String() string

type PlaybackStatus

type PlaybackStatus int32
const (
	PlaybackStatus_PLAYBACK_STATUS_UNSPECIFIED PlaybackStatus = 0
	PlaybackStatus_PLAYBACK_STATUS_STOPPED     PlaybackStatus = 1
	PlaybackStatus_PLAYBACK_STATUS_END_REACHED PlaybackStatus = 2
	PlaybackStatus_PLAYBACK_STATUS_PAUSED      PlaybackStatus = 3
	PlaybackStatus_PLAYBACK_STATUS_PLAYING     PlaybackStatus = 4
)

func (PlaybackStatus) Descriptor

func (PlaybackStatus) Enum

func (x PlaybackStatus) Enum() *PlaybackStatus

func (PlaybackStatus) EnumDescriptor deprecated

func (PlaybackStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use PlaybackStatus.Descriptor instead.

func (PlaybackStatus) Number

func (PlaybackStatus) String

func (x PlaybackStatus) String() string

func (PlaybackStatus) Type

type PlayerId

type PlayerId struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*PlayerId) Descriptor deprecated

func (*PlayerId) Descriptor() ([]byte, []int)

Deprecated: Use PlayerId.ProtoReflect.Descriptor instead.

func (*PlayerId) GetId

func (x *PlayerId) GetId() string

func (*PlayerId) ProtoMessage

func (*PlayerId) ProtoMessage()

func (*PlayerId) ProtoReflect

func (x *PlayerId) ProtoReflect() protoreflect.Message

func (*PlayerId) Reset

func (x *PlayerId) Reset()

func (*PlayerId) String

func (x *PlayerId) String() string

type PlayerState

type PlayerState struct {
	Playback *PlaybackState `protobuf:"bytes,1,opt,name=playback,proto3" json:"playback,omitempty"`
	Queue    *Queue         `protobuf:"bytes,2,opt,name=queue,proto3" json:"queue,omitempty"`
	// contains filtered or unexported fields
}

func (*PlayerState) Descriptor deprecated

func (*PlayerState) Descriptor() ([]byte, []int)

Deprecated: Use PlayerState.ProtoReflect.Descriptor instead.

func (*PlayerState) GetPlayback

func (x *PlayerState) GetPlayback() *PlaybackState

func (*PlayerState) GetQueue

func (x *PlayerState) GetQueue() *Queue

func (*PlayerState) ProtoMessage

func (*PlayerState) ProtoMessage()

func (*PlayerState) ProtoReflect

func (x *PlayerState) ProtoReflect() protoreflect.Message

func (*PlayerState) Reset

func (x *PlayerState) Reset()

func (*PlayerState) String

func (x *PlayerState) String() string

type PlayerUpdate

type PlayerUpdate struct {
	Player  *PlayerId    `protobuf:"bytes,1,opt,name=player,proto3" json:"player,omitempty"`
	State   *PlayerState `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	Deleted bool         `protobuf:"varint,3,opt,name=deleted,proto3" json:"deleted,omitempty"`
	// contains filtered or unexported fields
}

func (*PlayerUpdate) Descriptor deprecated

func (*PlayerUpdate) Descriptor() ([]byte, []int)

Deprecated: Use PlayerUpdate.ProtoReflect.Descriptor instead.

func (*PlayerUpdate) GetDeleted

func (x *PlayerUpdate) GetDeleted() bool

func (*PlayerUpdate) GetPlayer

func (x *PlayerUpdate) GetPlayer() *PlayerId

func (*PlayerUpdate) GetState

func (x *PlayerUpdate) GetState() *PlayerState

func (*PlayerUpdate) ProtoMessage

func (*PlayerUpdate) ProtoMessage()

func (*PlayerUpdate) ProtoReflect

func (x *PlayerUpdate) ProtoReflect() protoreflect.Message

func (*PlayerUpdate) Reset

func (x *PlayerUpdate) Reset()

func (*PlayerUpdate) String

func (x *PlayerUpdate) String() string

type Playlist

type Playlist struct {
	Id          *Id      `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title       string   `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	Description *string  `protobuf:"bytes,3,opt,name=description,proto3,oneof" json:"description,omitempty"`
	ImageId     *ImageId `protobuf:"bytes,4,opt,name=image_id,json=imageId,proto3,oneof" json:"image_id,omitempty"`
	// contains filtered or unexported fields
}

func (*Playlist) Descriptor deprecated

func (*Playlist) Descriptor() ([]byte, []int)

Deprecated: Use Playlist.ProtoReflect.Descriptor instead.

func (*Playlist) GetDescription

func (x *Playlist) GetDescription() string

func (*Playlist) GetId

func (x *Playlist) GetId() *Id

func (*Playlist) GetImageId added in v0.3.0

func (x *Playlist) GetImageId() *ImageId

func (*Playlist) GetTitle

func (x *Playlist) GetTitle() string

func (*Playlist) ProtoMessage

func (*Playlist) ProtoMessage()

func (*Playlist) ProtoReflect

func (x *Playlist) ProtoReflect() protoreflect.Message

func (*Playlist) Reset

func (x *Playlist) Reset()

func (*Playlist) String

func (x *Playlist) String() string

type PlaylistFull

type PlaylistFull struct {
	Playlist *Playlist `protobuf:"bytes,1,opt,name=playlist,proto3" json:"playlist,omitempty"`
	Tracks   []*Track  `protobuf:"bytes,2,rep,name=tracks,proto3" json:"tracks,omitempty"`
	// contains filtered or unexported fields
}

func (*PlaylistFull) Descriptor deprecated

func (*PlaylistFull) Descriptor() ([]byte, []int)

Deprecated: Use PlaylistFull.ProtoReflect.Descriptor instead.

func (*PlaylistFull) GetPlaylist

func (x *PlaylistFull) GetPlaylist() *Playlist

func (*PlaylistFull) GetTracks

func (x *PlaylistFull) GetTracks() []*Track

func (*PlaylistFull) ProtoMessage

func (*PlaylistFull) ProtoMessage()

func (*PlaylistFull) ProtoReflect

func (x *PlaylistFull) ProtoReflect() protoreflect.Message

func (*PlaylistFull) Reset

func (x *PlaylistFull) Reset()

func (*PlaylistFull) String

func (x *PlaylistFull) String() string

type PlaylistSource

type PlaylistSource struct {
	Id *Id `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*PlaylistSource) Descriptor deprecated

func (*PlaylistSource) Descriptor() ([]byte, []int)

Deprecated: Use PlaylistSource.ProtoReflect.Descriptor instead.

func (*PlaylistSource) GetId

func (x *PlaylistSource) GetId() *Id

func (*PlaylistSource) ProtoMessage

func (*PlaylistSource) ProtoMessage()

func (*PlaylistSource) ProtoReflect

func (x *PlaylistSource) ProtoReflect() protoreflect.Message

func (*PlaylistSource) Reset

func (x *PlaylistSource) Reset()

func (*PlaylistSource) String

func (x *PlaylistSource) String() string

type Playlists

type Playlists struct {
	List []*Playlist `protobuf:"bytes,1,rep,name=list,proto3" json:"list,omitempty"`
	// contains filtered or unexported fields
}

func (*Playlists) Descriptor deprecated

func (*Playlists) Descriptor() ([]byte, []int)

Deprecated: Use Playlists.ProtoReflect.Descriptor instead.

func (*Playlists) GetList

func (x *Playlists) GetList() []*Playlist

func (*Playlists) ProtoMessage

func (*Playlists) ProtoMessage()

func (*Playlists) ProtoReflect

func (x *Playlists) ProtoReflect() protoreflect.Message

func (*Playlists) Reset

func (x *Playlists) Reset()

func (*Playlists) String

func (x *Playlists) String() string

type PopularSource

type PopularSource struct {
	ArtistId *Id `protobuf:"bytes,1,opt,name=artist_id,json=artistId,proto3" json:"artist_id,omitempty"`
	// contains filtered or unexported fields
}

func (*PopularSource) Descriptor deprecated

func (*PopularSource) Descriptor() ([]byte, []int)

Deprecated: Use PopularSource.ProtoReflect.Descriptor instead.

func (*PopularSource) GetArtistId

func (x *PopularSource) GetArtistId() *Id

func (*PopularSource) ProtoMessage

func (*PopularSource) ProtoMessage()

func (*PopularSource) ProtoReflect

func (x *PopularSource) ProtoReflect() protoreflect.Message

func (*PopularSource) Reset

func (x *PopularSource) Reset()

func (*PopularSource) String

func (x *PopularSource) String() string

type Queue

type Queue struct {
	Tracks  []*Track `protobuf:"bytes,1,rep,name=tracks,proto3" json:"tracks,omitempty"`
	Current int32    `protobuf:"varint,2,opt,name=current,proto3" json:"current,omitempty"`
	// contains filtered or unexported fields
}

func (*Queue) Descriptor deprecated

func (*Queue) Descriptor() ([]byte, []int)

Deprecated: Use Queue.ProtoReflect.Descriptor instead.

func (*Queue) GetCurrent

func (x *Queue) GetCurrent() int32

func (*Queue) GetTracks

func (x *Queue) GetTracks() []*Track

func (*Queue) ProtoMessage

func (*Queue) ProtoMessage()

func (*Queue) ProtoReflect

func (x *Queue) ProtoReflect() protoreflect.Message

func (*Queue) Reset

func (x *Queue) Reset()

func (*Queue) String

func (x *Queue) String() string

type SearchQuery

type SearchQuery struct {
	Query          string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
	ResultsPerType int32  `protobuf:"varint,2,opt,name=results_per_type,json=resultsPerType,proto3" json:"results_per_type,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchQuery) Descriptor deprecated

func (*SearchQuery) Descriptor() ([]byte, []int)

Deprecated: Use SearchQuery.ProtoReflect.Descriptor instead.

func (*SearchQuery) GetQuery

func (x *SearchQuery) GetQuery() string

func (*SearchQuery) GetResultsPerType

func (x *SearchQuery) GetResultsPerType() int32

func (*SearchQuery) ProtoMessage

func (*SearchQuery) ProtoMessage()

func (*SearchQuery) ProtoReflect

func (x *SearchQuery) ProtoReflect() protoreflect.Message

func (*SearchQuery) Reset

func (x *SearchQuery) Reset()

func (*SearchQuery) String

func (x *SearchQuery) String() string

type SearchRes

type SearchRes struct {
	Library   *SourceRes `protobuf:"bytes,1,opt,name=library,proto3" json:"library,omitempty"`
	Streaming *SourceRes `protobuf:"bytes,2,opt,name=streaming,proto3" json:"streaming,omitempty"`
	// contains filtered or unexported fields
}

func (*SearchRes) Descriptor deprecated

func (*SearchRes) Descriptor() ([]byte, []int)

Deprecated: Use SearchRes.ProtoReflect.Descriptor instead.

func (*SearchRes) GetLibrary

func (x *SearchRes) GetLibrary() *SourceRes

func (*SearchRes) GetStreaming

func (x *SearchRes) GetStreaming() *SourceRes

func (*SearchRes) ProtoMessage

func (*SearchRes) ProtoMessage()

func (*SearchRes) ProtoReflect

func (x *SearchRes) ProtoReflect() protoreflect.Message

func (*SearchRes) Reset

func (x *SearchRes) Reset()

func (*SearchRes) String

func (x *SearchRes) String() string

type SeekParams

type SeekParams struct {
	Player   *PlayerId            `protobuf:"bytes,1,opt,name=player,proto3" json:"player,omitempty"`
	Position *durationpb.Duration `protobuf:"bytes,2,opt,name=position,proto3" json:"position,omitempty"`
	// contains filtered or unexported fields
}

func (*SeekParams) Descriptor deprecated

func (*SeekParams) Descriptor() ([]byte, []int)

Deprecated: Use SeekParams.ProtoReflect.Descriptor instead.

func (*SeekParams) GetPlayer

func (x *SeekParams) GetPlayer() *PlayerId

func (*SeekParams) GetPosition

func (x *SeekParams) GetPosition() *durationpb.Duration

func (*SeekParams) ProtoMessage

func (*SeekParams) ProtoMessage()

func (*SeekParams) ProtoReflect

func (x *SeekParams) ProtoReflect() protoreflect.Message

func (*SeekParams) Reset

func (x *SeekParams) Reset()

func (*SeekParams) String

func (x *SeekParams) String() string

type SetVolParams

type SetVolParams struct {
	Player *PlayerId `protobuf:"bytes,1,opt,name=player,proto3" json:"player,omitempty"`
	Volume int32     `protobuf:"varint,2,opt,name=volume,proto3" json:"volume,omitempty"`
	// contains filtered or unexported fields
}

func (*SetVolParams) Descriptor deprecated

func (*SetVolParams) Descriptor() ([]byte, []int)

Deprecated: Use SetVolParams.ProtoReflect.Descriptor instead.

func (*SetVolParams) GetPlayer

func (x *SetVolParams) GetPlayer() *PlayerId

func (*SetVolParams) GetVolume

func (x *SetVolParams) GetVolume() int32

func (*SetVolParams) ProtoMessage

func (*SetVolParams) ProtoMessage()

func (*SetVolParams) ProtoReflect

func (x *SetVolParams) ProtoReflect() protoreflect.Message

func (*SetVolParams) Reset

func (x *SetVolParams) Reset()

func (*SetVolParams) String

func (x *SetVolParams) String() string

type SortOrder

type SortOrder int32
const (
	SortOrder_SORT_ORDER_UNSPECIFIED SortOrder = 0
	SortOrder_SORT_ORDER_ASC         SortOrder = 1
	SortOrder_SORT_ORDER_DESC        SortOrder = 2
)

func (SortOrder) Descriptor

func (SortOrder) Descriptor() protoreflect.EnumDescriptor

func (SortOrder) Enum

func (x SortOrder) Enum() *SortOrder

func (SortOrder) EnumDescriptor deprecated

func (SortOrder) EnumDescriptor() ([]byte, []int)

Deprecated: Use SortOrder.Descriptor instead.

func (SortOrder) Number

func (x SortOrder) Number() protoreflect.EnumNumber

func (SortOrder) String

func (x SortOrder) String() string

func (SortOrder) Type

type SourceRes

type SourceRes struct {
	Artists []*Artist `protobuf:"bytes,1,rep,name=artists,proto3" json:"artists,omitempty"`
	Albums  []*Album  `protobuf:"bytes,2,rep,name=albums,proto3" json:"albums,omitempty"`
	Tracks  []*Track  `protobuf:"bytes,3,rep,name=tracks,proto3" json:"tracks,omitempty"`
	// contains filtered or unexported fields
}

func (*SourceRes) Descriptor deprecated

func (*SourceRes) Descriptor() ([]byte, []int)

Deprecated: Use SourceRes.ProtoReflect.Descriptor instead.

func (*SourceRes) GetAlbums

func (x *SourceRes) GetAlbums() []*Album

func (*SourceRes) GetArtists

func (x *SourceRes) GetArtists() []*Artist

func (*SourceRes) GetTracks

func (x *SourceRes) GetTracks() []*Track

func (*SourceRes) ProtoMessage

func (*SourceRes) ProtoMessage()

func (*SourceRes) ProtoReflect

func (x *SourceRes) ProtoReflect() protoreflect.Message

func (*SourceRes) Reset

func (x *SourceRes) Reset()

func (*SourceRes) String

func (x *SourceRes) String() string

type StreamingId

type StreamingId struct {
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// contains filtered or unexported fields
}

func (*StreamingId) Descriptor deprecated

func (*StreamingId) Descriptor() ([]byte, []int)

Deprecated: Use StreamingId.ProtoReflect.Descriptor instead.

func (*StreamingId) GetId

func (x *StreamingId) GetId() string

func (*StreamingId) ProtoMessage

func (*StreamingId) ProtoMessage()

func (*StreamingId) ProtoReflect

func (x *StreamingId) ProtoReflect() protoreflect.Message

func (*StreamingId) Reset

func (x *StreamingId) Reset()

func (*StreamingId) String

func (x *StreamingId) String() string

type Track

type Track struct {
	Id       *Id                  `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Title    string               `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
	Duration *durationpb.Duration `protobuf:"bytes,4,opt,name=duration,proto3" json:"duration,omitempty"`
	Num      int32                `protobuf:"varint,6,opt,name=num,proto3" json:"num,omitempty"`
	Album    *Album               `protobuf:"bytes,7,opt,name=album,proto3" json:"album,omitempty"`
	Artists  []*Artist            `protobuf:"bytes,8,rep,name=artists,proto3" json:"artists,omitempty"`
	// contains filtered or unexported fields
}

func (*Track) Descriptor deprecated

func (*Track) Descriptor() ([]byte, []int)

Deprecated: Use Track.ProtoReflect.Descriptor instead.

func (*Track) GetAlbum

func (x *Track) GetAlbum() *Album

func (*Track) GetArtists

func (x *Track) GetArtists() []*Artist

func (*Track) GetDuration

func (x *Track) GetDuration() *durationpb.Duration

func (*Track) GetId

func (x *Track) GetId() *Id

func (*Track) GetNum

func (x *Track) GetNum() int32

func (*Track) GetTitle

func (x *Track) GetTitle() string

func (*Track) ProtoMessage

func (*Track) ProtoMessage()

func (*Track) ProtoReflect

func (x *Track) ProtoReflect() protoreflect.Message

func (*Track) Reset

func (x *Track) Reset()

func (*Track) String

func (x *Track) String() string

type Tracks

type Tracks struct {
	List []*Track `protobuf:"bytes,1,rep,name=list,proto3" json:"list,omitempty"`
	// contains filtered or unexported fields
}

func (*Tracks) Descriptor deprecated

func (*Tracks) Descriptor() ([]byte, []int)

Deprecated: Use Tracks.ProtoReflect.Descriptor instead.

func (*Tracks) GetList

func (x *Tracks) GetList() []*Track

func (*Tracks) ProtoMessage

func (*Tracks) ProtoMessage()

func (*Tracks) ProtoReflect

func (x *Tracks) ProtoReflect() protoreflect.Message

func (*Tracks) Reset

func (x *Tracks) Reset()

func (*Tracks) String

func (x *Tracks) String() string

type UnimplementedAkustikAPIHandler

type UnimplementedAkustikAPIHandler struct{}

UnimplementedAkustikAPIHandler returns CodeUnimplemented from all methods.

func (UnimplementedAkustikAPIHandler) AddPlaylist

func (UnimplementedAkustikAPIHandler) AddStreamingAlbum

func (UnimplementedAkustikAPIHandler) AddStreamingArtist

func (UnimplementedAkustikAPIHandler) ClearQueue added in v0.3.2

func (UnimplementedAkustikAPIHandler) Enqueue

func (UnimplementedAkustikAPIHandler) GetStreamingPage

func (UnimplementedAkustikAPIHandler) ImportPlaylist added in v0.4.1

func (UnimplementedAkustikAPIHandler) ListLibraryAlbums

func (UnimplementedAkustikAPIHandler) ListLibraryArtists

func (UnimplementedAkustikAPIHandler) ListLibraryPlaylists

func (UnimplementedAkustikAPIHandler) ListPlayedAlbums

func (UnimplementedAkustikAPIHandler) ListStreamingAlbums

func (UnimplementedAkustikAPIHandler) ListStreamingArtists

func (UnimplementedAkustikAPIHandler) ListStreamingPlaylists

func (UnimplementedAkustikAPIHandler) LookupAlbum

func (UnimplementedAkustikAPIHandler) LookupAlbumImage added in v0.4.1

func (UnimplementedAkustikAPIHandler) LookupArtist

func (UnimplementedAkustikAPIHandler) LookupArtistImage added in v0.4.1

func (UnimplementedAkustikAPIHandler) LookupPlayedAlbumImage added in v0.4.1

func (UnimplementedAkustikAPIHandler) LookupPlaylist

func (UnimplementedAkustikAPIHandler) LookupPlaylistImage added in v0.4.1

func (UnimplementedAkustikAPIHandler) Pause

func (UnimplementedAkustikAPIHandler) Play added in v0.4.4

func (UnimplementedAkustikAPIHandler) Search

func (UnimplementedAkustikAPIHandler) SearchLibrary

func (UnimplementedAkustikAPIHandler) Seek

func (UnimplementedAkustikAPIHandler) SetVolume

func (UnimplementedAkustikAPIHandler) SkipBackward

func (UnimplementedAkustikAPIHandler) SkipForward

func (UnimplementedAkustikAPIHandler) SubPlayerUpdates

Jump to

Keyboard shortcuts

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