Package plex (v1.11.5) [up] [repository]

Index

Functions

func AcquireWidevineLicense(mediaData *Media, userData *User, body []byte) ([]byte, error)
func ParsePath(rawUrl string) (string, error)

https://watch.plex.tv/embed/movie/memento-2000 https://watch.plex.tv/movie/memento-2000 https://watch.plex.tv/watch/movie/memento-2000

Types

type MatchContainer

type MatchContainer struct {
	Metadata []MatchItem `json:"Metadata"`
}

Functions

func GetMetadataMatches(urlPath string, userData *User) (*MatchContainer, error)

type MatchItem

type MatchItem struct {
	Key       string `json:"key"`
	RatingKey string `json:"ratingKey"`
	Title     string `json:"title"`
	Type      string `json:"type"`
}

type Media

type Media struct {
	Id       string    `json:"id"`
	Protocol string    `json:"protocol"`
	Part     []VodPart `json:"Part"`
}

Methods

func (*Media) CachePath() string
func (m *Media) GetManifest(userData *User) *url.URL

type MetadataItem

type MetadataItem struct {
	Title string  `json:"title"`
	Media []Media `json:"Media"`
}

type User

type User struct {
	Id        int    `json:"id"`
	Uuid      string `json:"uuid"`
	AuthToken string `json:"authToken"`
}

Functions

func CreateUser() (*User, error)

Methods

func (*User) CachePath() string

type VodMetadata

type VodMetadata struct {
	Metadata []MetadataItem `json:"Metadata"`
}

Functions

func GetVodMetadata(match *MatchItem, userData *User) (*VodMetadata, error)

Methods

func (vod *VodMetadata) GetDash() (*Media, error)

type VodPart

type VodPart struct {
	Id      string `json:"id"`
	Key     string `json:"key"`
	License string `json:"license"`
}