Documentation ¶
Index ¶
- type ActivityEpisode
- type ActivityMovie
- type ActivityPlaylist
- type ActivityRelease
- type ActivityTrack
- type Artist
- type ArtistBackground
- type ArtistImage
- type ArtistTag
- type Cast
- type Collection
- type Crew
- type Episode
- type EpisodeEvent
- type Events
- type Genre
- type Keyword
- type Media
- type Movie
- type MovieEvent
- type Offset
- type Offsets
- type Person
- type Playlist
- type Popular
- type Recommend
- type Release
- type ReleaseEvent
- type Scrobble
- type Series
- type Similar
- type Station
- type Subscription
- type TVEpisode
- type TVShow
- type Track
- type TrackEvent
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActivityEpisode ¶
type ActivityMovie ¶
type ActivityPlaylist ¶
type ActivityPlaylist struct { gorm.Model User string `gorm:"index:idx_playlist_user" json:"-"` Title string // Album title, Station name, etc. Creator string // Artist name, Podcast author Image string // Ref string // Date time.Time `gorm:"uniqueIndex:idx_playlist_date"` }
album, playlist or podcast listening event.
type ActivityRelease ¶
type ActivityTrack ¶
type Artist ¶
type Artist struct { gorm.Model Name string `gorm:"uniqueIndex:idx_artist_name"` SortName string ARID string `gorm:"uniqueIndex:idx_artist_arid"` Disambiguation string Country string Area string Date time.Time EndDate time.Time Genre string }
Artist info from MusicBrainz.
type ArtistBackground ¶
type ArtistImage ¶
type ArtistTag ¶
type ArtistTag struct { gorm.Model Artist string `gorm:"uniqueIndex:idx_tag"` Tag string `gorm:"uniqueIndex:idx_tag"` Count int }
Artist tags from MusicBrainz.
type Cast ¶
type Crew ¶
type EpisodeEvent ¶
type EpisodeEvent struct { gorm.Model User string `gorm:"index:idx_episode_user" json:"-"` Date time.Time `gorm:"uniqueIndex:idx_episode_date"` EID string }
func (*EpisodeEvent) IsValid ¶ added in v0.19.4
func (e *EpisodeEvent) IsValid() bool
type Events ¶
type Events struct { MovieEvents []MovieEvent ReleaseEvents []ReleaseEvent EpisodeEvents []EpisodeEvent TrackEvents []TrackEvent }
type Media ¶
type Media struct { gorm.Model REID string `gorm:"uniqueIndex:idx_media"` Name string `gorm:"uniqueIndex:idx_media"` Position int `gorm:"uniqueIndex:idx_media"` Format string TrackCount int }
Release Media from MusicBrainz.
type Movie ¶
type Movie struct { gorm.Model UUID string `gorm:"index:idx_movie_uuid" json:"-"` TMID int64 `gorm:"uniqueIndex:idx_movie_tmid"` IMID string Title string Date time.Time Rating string Tagline string OriginalTitle string OriginalLanguage string Overview string Budget int64 Revenue int64 Runtime int VoteAverage float32 VoteCount int BackdropPath string PosterPath string SortTitle string Key string Size int64 ETag string LastModified time.Time }
type MovieEvent ¶
type MovieEvent struct { gorm.Model User string `gorm:"index:idx_movie_user" json:"-"` Date time.Time `gorm:"uniqueIndex:idx_movie_date"` TMID string IMID string ETag string `gorm:"-"` }
func (*MovieEvent) IsValid ¶ added in v0.19.4
func (m *MovieEvent) IsValid() bool
type Offset ¶
type Person ¶
type Popular ¶
type Popular struct { gorm.Model Artist string `gorm:"uniqueIndex:idx_popular"` Title string `gorm:"uniqueIndex:idx_popular"` Rank int }
Popular tracks for an artist from Last.fm.
type Release ¶
type Release struct { gorm.Model Artist string `gorm:"uniqueIndex:idx_release;index:idx_release_artist"` Name string `gorm:"uniqueIndex:idx_release;index:idx_release_name" sql:"collate:nocase"` RGID string `gorm:"index:idx_release_rgid"` REID string `gorm:"uniqueIndex:idx_release;index:idx_release_reid"` Disambiguation string Asin string Country string Type string `gorm:"index:idx_release_type"` SecondaryType string Date time.Time `gorm:"index:idx_release_rgdate"` // rg first release ReleaseDate time.Time `gorm:"index:idx_release_redate"` // re release date Status string TrackCount int DiscCount int Artwork bool FrontArtwork bool BackArtwork bool OtherArtwork string GroupArtwork bool Media []Media `gorm:"-"` SingleName string `gorm:"index:idx_release_single_name"` GroupName string `gorm:"index:idx_release_group_name"` }
Release info from MusicBrainz.
type ReleaseEvent ¶
type ReleaseEvent struct { gorm.Model User string `gorm:"index:idx_release_user" json:"-"` Date time.Time `gorm:"uniqueIndex:idx_release_date"` RGID string REID string }
func (*ReleaseEvent) IsValid ¶ added in v0.19.4
func (r *ReleaseEvent) IsValid() bool
type Scrobble ¶
type Scrobble struct { Artist string `json:""` // Required Track string `json:""` // Required Timestamp time.Time `json:""` // Required Album string `json:""` // Optional AlbumArtist string `json:""` // Optional TrackNumber int `json:""` // Optional Duration int `json:""` // Optional - Length of track in seconds MBID string `json:""` // Optional - recording (or track?) MBID }
Scrobble is a track listening event.
Spec location: https://www.last.fm/api/show/track.scrobble not using: context, streamId, chosenByUser
func (Scrobble) PreferredArtist ¶
type Series ¶
type Similar ¶
type Similar struct { gorm.Model Artist string `gorm:"uniqueIndex:idx_similar"` ARID string `gorm:"uniqueIndex:idx_similar"` Rank int }
Similar artist info from Last.fm
type Station ¶
type Subscription ¶ added in v0.11.8
type TVShow ¶
type TVShow struct { gorm.Model TVID int64 `gorm:"uniqueIndex:idx_tvshow_tvid"` Name string SortName string Date time.Time EndDate time.Time Tagline string OriginalName string OriginalLanguage string Overview string BackdropPath string PosterPath string SeasonCount int EpisodeCount int VoteAverage float32 VoteCount int }
type Track ¶
type Track struct { gorm.Model UUID string `gorm:"index:idx_track_uuid"` Artist string `spiff:"creator" gorm:"index:idx_track_artist"` Release string `gorm:"index:idx_track_release"` Date string `gorm:"index:idx_track_date"` TrackNum int `spiff:"tracknum"` DiscNum int Title string `spiff:"title" gorm:"index:idx_track_title"` Key string // TODO - unique constraint Size int64 ETag string LastModified time.Time TrackCount int DiscCount int REID string `gorm:"index:idx_track_reid"` RGID string `gorm:"index:idx_track_rgid"` RID string `gorm:"index:idx_track_rid"` // recording id ARID string `gorm:"index:idx_track_arid"` // TODO only for local right now MediaTitle string ReleaseTitle string `spiff:"album"` TrackArtist string // artist with featured artists ReleaseDate time.Time Artwork bool FrontArtwork bool BackArtwork bool OtherArtwork string GroupArtwork bool }
Tracks from S3 bucket object names. Naming is adjusted based on data from MusicBrainz.
func (Track) PreferredArtist ¶
Prefer A feat. B instead of just A.
type TrackEvent ¶
type TrackEvent struct { gorm.Model User string `gorm:"index:idx_track_user" json:"-"` Date time.Time `gorm:"uniqueIndex:idx_track_date"` // TODO dup index name w/ music RID string RGID string ETag string `gorm:"-"` }
func (*TrackEvent) IsValid ¶ added in v0.19.4
func (t *TrackEvent) IsValid() bool
Click to show internal directories.
Click to hide internal directories.