pytheos.models Package

pytheos.models.browse Module

class pytheos.models.browse.AddToQueueType(value)

Bases: enum.Enum

An enumeration.

PlayNow = 1
PlayNext = 2
AddToEnd = 3
ReplaceAndPlay = 4
class pytheos.models.browse.ServiceOption(value)

Bases: enum.Enum

An enumeration.

AddTrackToLibrary = 1
AddAlbumToLibrary = 2
AddStationToLibrary = 3
AddPlaylistToLibrary = 4
RemoveTrackFromLibrary = 5
RemoveAlbumFromLibrary = 6
RemoveStationFromLibrary = 7
RemovePlaylistFromLibrary = 8
ThumbsUp = 11
ThumbsDown = 12
CreateNewStation = 13
AddToFavorites = 19
RemoveFromFavorites = 20
class pytheos.models.browse.SearchCriteria(from_dict: Optional[dict] = None)

Bases: object

name: str = ''
search_criteria_id: str = ''
wildcard: bool = False
playable: bool = False
container_id: str = ''
class pytheos.models.browse.AlbumMetadata(from_dict=None)

Bases: object

album_id: str
images: list
class pytheos.models.browse.AlbumImage(from_dict=None)

Bases: object

image_url: str
width: int

pytheos.models.group Module

class pytheos.models.group.GroupRole(value)

Bases: enum.Enum

An enumeration.

Leader = 'leader'
Member = 'member'
class pytheos.models.group.Group(from_dict: dict = None)

Bases: object

name: str
group_id: int
players: list
class pytheos.models.group.GroupPlayer(from_dict: dict = None)

Bases: object

name: str
player_id: int
role: pytheos.models.group.GroupRole

pytheos.models.heos Module

class pytheos.models.heos.HEOSEvent(from_dict: Optional[dict] = None)

Bases: object

Represents a message received from the event channel that signifies a new event has occurred.

command: Optional[str] = None
message: Optional[str] = None
raw: Optional[str] = None
vars: dict
class pytheos.models.heos.HEOSHeader(from_dict=None)

Bases: object

Representation of the ‘heos’ block returned from HEOS command execution

command: Optional[str] = None
result: Optional[str] = None
message: Optional[str] = None
class pytheos.models.heos.HEOSPayload(source: Optional[Union[dict, list]] = None)

Bases: object

Base class for the payloads returned by some HEOS command execution

data: Optional[dict] = None
class pytheos.models.heos.HEOSListPayloadIterator(payload)

Bases: object

Iterator for the HEOSListPayload class

class pytheos.models.heos.HEOSListPayload(source: Optional[Union[dict, list]] = None)

Bases: pytheos.models.heos.HEOSPayload

Represents a list that is returned from some HEOS command execution

class pytheos.models.heos.HEOSDictPayload(from_dict=None)

Bases: pytheos.models.heos.HEOSPayload

Represents a dict that is returned from some HEOS command execution

get(name, default=None)
class pytheos.models.heos.HEOSResult(from_dict=None)

Bases: object

Represents the result of executing a HEOS command

static create_payload(payload_data)pytheos.models.heos.HEOSPayload

Factory for creating the proper payload type based on the data object passed

property succeeded
header: Optional[pytheos.models.heos.HEOSHeader]
payload: Optional[pytheos.models.heos.HEOSPayload]

pytheos.models.media Module

class pytheos.models.media.MediaItem(from_dict: Optional[dict] = None)

Bases: object

Represents a piece of media

property name
song: str
album: str
artist: str
image_url: str
queue_id: int
media_id: str
album_id: str
type: str
source_id: str = None
container_id: str = None

pytheos.models.player Module

Provides type declarations related to the PlayerAPI group

class pytheos.models.player.Lineout(value)

Bases: enum.Enum

An enumeration.

NoLineout = 0
Variable = 1
Fixed = 2
class pytheos.models.player.Control(value)

Bases: enum.Enum

An enumeration.

NoControl = 1
IR = 2
Trigger = 3
Network = 4
class pytheos.models.player.Network(value)

Bases: enum.Enum

An enumeration.

Wired = 'wired'
Wifi = 'wifi'
Unknown = 'unknown'
class pytheos.models.player.RepeatMode(value)

Bases: enum.Enum

An enumeration.

All = 'on_all'
One = 'on_one'
Off = 'off'
class pytheos.models.player.ShuffleMode(value)

Bases: enum.Enum

An enumeration.

On = 'on'
Off = 'off'
class pytheos.models.player.PlayState(value)

Bases: enum.Enum

An enumeration.

Stopped = 'stop'
Playing = 'play'
Paused = 'pause'
Unknown = 'unknown'
class pytheos.models.player.Mute(value)

Bases: enum.Enum

An enumeration.

On = 'on'
Off = 'off'
class pytheos.models.player.PlayMode(repeat: RepeatMode, shuffle: ShuffleMode)

Bases: object

repeat: pytheos.models.player.RepeatMode
shuffle: pytheos.models.player.ShuffleMode
class pytheos.models.player.QuickSelect(id: int, name: str)

Bases: object

id: int
name: str
class pytheos.models.player.Player(from_dict: Optional[dict] = None)

Bases: object

Player representation

name: str
player_id: str
group_id: str
model: str
version: str
network: pytheos.models.player.Network
ip: str
lineout: pytheos.models.player.Lineout
serial: str
control: pytheos.models.player.Control

pytheos.models.source Module

class pytheos.models.source.InputSource(value)

Bases: enum.Enum

An enumeration.

AuxIn1 = 'inputs/aux_in_1'
AuxIn2 = 'inputs/aux_in_2'
AuxIn3 = 'inputs/aux_in_3'
AuxIn4 = 'inputs/aux_in_4'
AuxSingle = 'inputs/aux_single'
Aux1 = 'inputs/aux1'
Aux2 = 'inputs/aux2'
Aux3 = 'inputs/aux3'
Aux4 = 'inputs/aux4'
Aux5 = 'inputs/aux5'
Aux6 = 'inputs/aux6'
Aux7 = 'inputs/aux7'
LineIn1 = 'inputs/line_in_1'
LineIn2 = 'inputs/line_in_2'
LineIn3 = 'inputs/line_in_3'
LineIn4 = 'inputs/line_in_4'
CoaxIn1 = 'inputs/coax_in_1'
CoaxIn2 = 'inputs/coax_in_2'
OpticalIn1 = 'inputs/optical_in_1'
OpticalIn2 = 'inputs/optical_in_2'
HdmiIn1 = 'inputs/hdmi_in_1'
HdmiIn2 = 'inputs/hdmi_in_2'
HdmiIn3 = 'inputs/hdmi_in_3'
HdmiIn4 = 'inputs/hdmi_in_4'
HdmiArc1 = 'inputs/hdmi_arc_1'
CableSat = 'inputs/cable_sat'
Dvd = 'inputs/dvd'
Bluray = 'inputs/bluray'
Game = 'inputs/game'
MediaPlayer = 'inputs/mediaplayer'
Cd = 'inputs/cd'
Tuner = 'inputs/tuner'
HdRadio = 'inputs/hdradio'
TvAudio = 'inputs/tvaudio'
Phono = 'inputs/phono'
UsbDac = 'inputs/usbdac'
AnalogIn1 = 'inputs/analog_in_1'
AnalogIn2 = 'inputs/analog_in_2'
RecorderIn1 = 'inputs/record_in_1'
class pytheos.models.source.SourceType(value)

Bases: enum.Enum

An enumeration.

MusicService = 'music_service'
HeosService = 'heos_service'
HeosServer = 'heos_server'
DLNAServer = 'dlna_server'
Artist = 'artist'
Album = 'album'
Song = 'song'
Container = 'container'
Station = 'station'
Playlist = 'playlist'
property is_container
class pytheos.models.source.Source(from_dict: Optional[dict] = None, parent_source_id=None, parent_container_id=None)

Bases: object

name: str = None
type: pytheos.models.source.SourceType = None
available: bool = False
playable: bool = False
container: bool = False
media_id: int = None
image_url: str = None
service_username: str = None
source_id: int = None
container_id: int = None

pytheos.models.system Module

class pytheos.models.system.AccountStatus(value)

Bases: enum.Enum

An enumeration.

SignedOut = 'signed_out'
SignedIn = 'signed_in'