PHP Класс duncan3dc\Sonos\Controller

Although sometimes a Controller is synonymous with a Speaker, when speakers are grouped together only the coordinator can receive events (play/pause/etc)
Наследование: extends duncan3dc\Sonos\Speaker
Показать файл Открыть проект Примеры использования класса

Защищенные свойства (Protected)

Свойство Тип Описание
$network Network The network instance this Controller is part of.

Открытые методы

Метод Описание
__construct ( duncan3dc\Sonos\Speaker $speaker, Network $network ) Create a Controller instance from a speaker.
addSpeaker ( duncan3dc\Sonos\Speaker $speaker ) : static Adds the specified speaker to the group of this Controller.
adjustVolume ( integer $adjust ) : static Adjust the volume of all the speakers controlled by this Controller.
exportState ( boolean $pause = true ) : duncan3dc\Sonos\ControllerState Grab the current state of the Controller (including it's queue and playing attributes).
getCrossfade ( ) : boolean Check if crossfade is currently active.
getMediaInfo ( ) : array Get the currently active media info.
getMode ( ) : array Get the current play mode settings.
getNetwork ( ) : Network Get the network instance used by this controller.
getQueue ( ) : Queue Get the queue for this controller.
getRepeat ( ) : boolean Check if repeat is currently active.
getShuffle ( ) : boolean Check if shuffle is currently active.
getSpeakers ( ) : duncan3dc\Sonos\Speaker[] Get the speakers that are in the group of this controller.
getState ( ) : integer Get the current state of the group of speakers.
getStateDetails ( ) : State Get attributes about the currently active track in the queue.
getStateName ( ) : string Get the current state of the group of speakers as the string reported by sonos: PLAYING, PAUSED_PLAYBACK, etc
interrupt ( duncan3dc\Sonos\Tracks\UriInterface $track, integer $volume = null ) : static Interrupt the current audio with a track.
isCoordinator ( ) : boolean Check if this speaker is the coordinator of it's current group.
isStreaming ( ) : boolean Check if this controller is currently playing a stream.
isUsingQueue ( ) : boolean Check if this controller is currently using its queue.
next ( ) : static Skip to the next track in the current queue.
pause ( ) : static Pause the group.
play ( ) : static Start playing the active music for this group.
previous ( ) : static Skip back to the previous track in the current queue.
removeSpeaker ( duncan3dc\Sonos\Speaker $speaker ) : static Removes the specified speaker from the group of this Controller.
restoreState ( duncan3dc\Sonos\ControllerState $state ) : static Restore the Controller to a previously exported state.
seek ( integer $seconds ) : static Seeks to a specific position within the current track.
selectTrack ( integer $position ) : static Skip to the specific track in the current queue.
setCrossfade ( boolean $crossfade ) : static Turn crossfade on or off.
setMode ( array $options ) : static Set the current play mode settings.
setRepeat ( boolean $repeat ) : static Turn repeat mode on or off.
setShuffle ( boolean $shuffle ) : static Turn shuffle mode on or off.
setState ( integer $state ) : static Set the state of the group.
setVolume ( integer $volume ) : static Set the current volume of all the speakers controlled by this Controller.
useLineIn ( duncan3dc\Sonos\Speaker $speaker = null ) : static Play a line-in from a speaker.
useQueue ( ) : static Set this controller to use its queue (rather than a stream).
useStream ( Stream $stream ) : static Play a stream on this controller.

Защищенные методы

Метод Описание
getPlayMode ( string $type ) : boolean Get a particular PlayMode.
setPlayMode ( string $type, boolean $value ) : static Set a particular PlayMode.

Описание методов

__construct() публичный Метод

The speaker must be a coordinator.
public __construct ( duncan3dc\Sonos\Speaker $speaker, Network $network )
$speaker duncan3dc\Sonos\Speaker
$network Network

addSpeaker() публичный Метод

Adds the specified speaker to the group of this Controller.
public addSpeaker ( duncan3dc\Sonos\Speaker $speaker ) : static
$speaker duncan3dc\Sonos\Speaker The speaker to add to the group
Результат static

adjustVolume() публичный Метод

Adjust the volume of all the speakers controlled by this Controller.
public adjustVolume ( integer $adjust ) : static
$adjust integer A relative amount between -100 and 100
Результат static

exportState() публичный Метод

Grab the current state of the Controller (including it's queue and playing attributes).
public exportState ( boolean $pause = true ) : duncan3dc\Sonos\ControllerState
$pause boolean Whether to pause the controller or not
Результат duncan3dc\Sonos\ControllerState

getCrossfade() публичный Метод

Check if crossfade is currently active.
public getCrossfade ( ) : boolean
Результат boolean

getMediaInfo() публичный Метод

Get the currently active media info.
public getMediaInfo ( ) : array
Результат array

getMode() публичный Метод

Get the current play mode settings.
public getMode ( ) : array
Результат array An array with 2 boolean elements (shuffle and repeat)

getNetwork() публичный Метод

Get the network instance used by this controller.
public getNetwork ( ) : Network
Результат Network

getPlayMode() защищенный Метод

Get a particular PlayMode.
protected getPlayMode ( string $type ) : boolean
$type string The play mode attribute to get
Результат boolean

getQueue() публичный Метод

Get the queue for this controller.
public getQueue ( ) : Queue
Результат Queue

getRepeat() публичный Метод

Check if repeat is currently active.
public getRepeat ( ) : boolean
Результат boolean

getShuffle() публичный Метод

Check if shuffle is currently active.
public getShuffle ( ) : boolean
Результат boolean

getSpeakers() публичный Метод

Get the speakers that are in the group of this controller.
public getSpeakers ( ) : duncan3dc\Sonos\Speaker[]
Результат duncan3dc\Sonos\Speaker[]

getState() публичный Метод

Get the current state of the group of speakers.
public getState ( ) : integer
Результат integer One of the class STATE_ constants

getStateDetails() публичный Метод

Get attributes about the currently active track in the queue.
public getStateDetails ( ) : State
Результат State Track data containing the following elements

getStateName() публичный Метод

Get the current state of the group of speakers as the string reported by sonos: PLAYING, PAUSED_PLAYBACK, etc
public getStateName ( ) : string
Результат string

interrupt() публичный Метод

The current state of the controller is stored, the passed track is played, and then when it has finished the previous state of the controller is restored. This is useful for making announcements over the Sonos network.
public interrupt ( duncan3dc\Sonos\Tracks\UriInterface $track, integer $volume = null ) : static
$track duncan3dc\Sonos\Tracks\UriInterface The track to play
$volume integer The volume to play the track at
Результат static

isCoordinator() публичный Метод

This method is only here to override the method from the Speaker class. A Controller instance is always the coordinator of it's group.
public isCoordinator ( ) : boolean
Результат boolean

isStreaming() публичный Метод

Check if this controller is currently playing a stream.
public isStreaming ( ) : boolean
Результат boolean

isUsingQueue() публичный Метод

Check if this controller is currently using its queue.
public isUsingQueue ( ) : boolean
Результат boolean

next() публичный Метод

Skip to the next track in the current queue.
public next ( ) : static
Результат static

pause() публичный Метод

Pause the group.
public pause ( ) : static
Результат static

play() публичный Метод

Start playing the active music for this group.
public play ( ) : static
Результат static

previous() публичный Метод

Skip back to the previous track in the current queue.
public previous ( ) : static
Результат static

removeSpeaker() публичный Метод

Removes the specified speaker from the group of this Controller.
public removeSpeaker ( duncan3dc\Sonos\Speaker $speaker ) : static
$speaker duncan3dc\Sonos\Speaker The speaker to remove from the group
Результат static

restoreState() публичный Метод

Restore the Controller to a previously exported state.
public restoreState ( duncan3dc\Sonos\ControllerState $state ) : static
$state duncan3dc\Sonos\ControllerState The state to be restored
Результат static

seek() публичный Метод

Seeks to a specific position within the current track.
public seek ( integer $seconds ) : static
$seconds integer The number of seconds to position to in the track
Результат static

selectTrack() публичный Метод

Skip to the specific track in the current queue.
public selectTrack ( integer $position ) : static
$position integer The zero-based position of the track to skip to
Результат static

setCrossfade() публичный Метод

Turn crossfade on or off.
public setCrossfade ( boolean $crossfade ) : static
$crossfade boolean Whether crossfade should be on or not
Результат static

setMode() публичный Метод

Set the current play mode settings.
public setMode ( array $options ) : static
$options array An array with 2 boolean elements (shuffle and repeat)
Результат static

setPlayMode() защищенный Метод

Set a particular PlayMode.
protected setPlayMode ( string $type, boolean $value ) : static
$type string The play mode attribute to update
$value boolean The value to set the attribute to
Результат static

setRepeat() публичный Метод

Turn repeat mode on or off.
public setRepeat ( boolean $repeat ) : static
$repeat boolean Whether repeat should be on or not
Результат static

setShuffle() публичный Метод

Turn shuffle mode on or off.
public setShuffle ( boolean $shuffle ) : static
$shuffle boolean Whether shuffle should be on or not
Результат static

setState() публичный Метод

Set the state of the group.
public setState ( integer $state ) : static
$state integer One of the class STATE_ constants
Результат static

setVolume() публичный Метод

Set the current volume of all the speakers controlled by this Controller.
public setVolume ( integer $volume ) : static
$volume integer An amount between 0 and 100
Результат static

useLineIn() публичный Метод

If no speaker is passed then the current controller's is used.
public useLineIn ( duncan3dc\Sonos\Speaker $speaker = null ) : static
$speaker duncan3dc\Sonos\Speaker The speaker to get the line-in from
Результат static

useQueue() публичный Метод

Set this controller to use its queue (rather than a stream).
public useQueue ( ) : static
Результат static

useStream() публичный Метод

Play a stream on this controller.
public useStream ( Stream $stream ) : static
$stream duncan3dc\Sonos\Tracks\Stream The Stream object to play
Результат static

Описание свойств

$network защищенное свойство

The network instance this Controller is part of.
protected Network,duncan3dc\Sonos $network
Результат Network