ProRemoteClient class
the ProRemoteClient represents the Remote Control Websocket API.
The following data streams are exposed:
- clockStream
- messageStream
- slideUpdates
- updates (from the parent class)
The following events are emitted:
clock
, message
, slide
, presentation
, update
, action sent
, action completed
Additionally, an event is emitted for every ProPresenter "action"
(i.e. authenticate
, presentationSlideIndex
, etc.)
- Inheritance
-
- Object
- ProConnectedComponent
- ProRemoteClient
Constructors
- ProRemoteClient(ProLegacyClient parent, ProSettings settings)
Properties
- audioIsPlaying → bool
-
no setter
-
audioPlaylistItemsByName
→ Map<
String, ProPlaylistItem> -
no setter
-
audioPlaylists
→ List<
ProPlaylist> -
no setter
-
basename2fullpath
↔ Map<
String, String> -
Pro6 sometimes sends the path as a "basename" but Pro7 always sends full pathname
we make sure we always use the full pathname because it is more reliable
getter/setter pair
-
callbacks
↔ Map<
String, List< void Function(ProEvent< >Object> event)> -
getter/setter pairinherited
-
clocks
→ List<
ProClock> -
no setter
- clockStream → Stream
-
no setter
-
completers
↔ Map<
String, Completer> -
getter/setter pair
- connected → bool
-
no setterinherited
- connecting → bool
-
no setterinherited
-
connectionStatus
→ Stream<
ProConnectionStatus> -
no setterinherited
- controlling ↔ bool
-
true when connected and authenticated
getter/setter pair
- currentAudioPath → String?
-
no setter
- currentPresentation → ProPresentation?
-
no setter
- currentPresentationPath → String?
-
no setter
- currentSlide → ProSlide?
-
no setter
- currentSlideIndex → int?
-
no setter
- destroyed ↔ bool
-
getter/setter pairinherited
- disconnected → bool
-
no setterinherited
-
eventStream
↔ StreamController<
ProEvent< Object> > -
getter/setter pairinherited
- failed → bool
-
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- ip → String
-
no setter
-
library
→ List<
ProLibraryItem> -
no setter
- loading ↔ bool
-
getter/setter pair
- makeRequestedCurrent ↔ bool
-
getter/setter pair
-
messages
→ List<
ProMessage> -
no setter
-
messageStream
→ Stream<
bool> -
no setter
- nextSlide → ProSlide?
-
no setter
- parent ↔ ProLegacyClient
-
this class might be managed by a parent combined class
by keeping a reference to it here, we can access data
available from the Stage Display Protocol too
getter/setter pair
- password → String?
-
no setter
-
playlistItemsByName
→ Map<
String, ProPlaylistItem> -
no setter
-
playlists
→ List<
ProPlaylist> -
no setter
- port → int
-
no setter
-
presentationsByPath
→ Map<
String, ProPresentation> -
no setter
- requestedPresentationPath ↔ String?
-
getter/setter pair
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- settings ↔ ProSettings
-
getter/setter pair
- showingFirstSlide → bool
-
no setter
- showingLastSlide → bool
-
no setter
-
slideUpdates
→ Stream<
bool> -
no setter
- socketConnectionListener ↔ StreamSubscription?
-
getter/setter pair
- socketListener ↔ StreamSubscription?
-
getter/setter pair
- stageMessage → String?
-
no setter
- state ↔ ProState
-
getter/setter pair
- status ↔ ProConnectionStatus
-
getter/setter pairinherited
- statusMap → Map
-
no setter
-
updates
→ Stream<
String> -
no setterinherited
- version → ProVersion
-
no setter
- ws ↔ WS
-
getter/setter pair
Methods
-
act(
String action, {Map< String, dynamic> args = const {}, String? responseAction}) → Future - wrapper to send an 'action' to ProPresenter along with arguments set response action to '' to ignore responses or when no response is expected
-
audioPlayPause(
) → Future -
audioStartCue(
String playlistLocation) → Future -
buildPlaylistItemLocationMap(
List playlists) → Map< String, ProPlaylistItem> -
clear(
) → void -
inherited
-
clearAll(
) → Future -
clearAnnouncements(
) → Future -
clearAudio(
) → Future -
clearBackground(
) → Future -
clearForeground(
) → Future -
clearMessages(
) → Future -
clearProps(
) → Future -
clearTelestrator(
) → Future -
clockReset(
int id) → Future -
clockStart(
int id) → Future -
clockStop(
int id) → Future -
clockToggle(
int id) → Future -
clockUpdate(
ProClock clock) → Future -
completeAction(
String action, [dynamic value]) → void - The way this system works is that everytime a message is sent to proPresenter a "completer" is created with the name of the relevant "action" Then, whenever we get a message from ProPresenter, we "complete" that completer which allows us to specify "callbacks" for propresenter requests
-
connect(
) → Future< ProConnectionStatus> -
delayedConnectionCheck(
) → Future< ProConnectionStatus> -
returns a future that completes after two seconds
with the connection status
inherited
-
destroy(
) → void -
disconnect(
) → Future -
dispose(
) → void -
inherited
-
emit(
String event, [Object? data]) → void -
emit will always emit twice... first, by the name of the event
submitted, and secondly, by the name of the special event 'all'
inherited
-
getAudioPlaylists(
) → Future - get audio library items
-
getClocks(
) → Future -
getCurrentAudio(
) → Future -
getCurrentPresentation(
{int quality = SLIDE_HIGHQ, bool doubleLoad = true}) → Future - for better user experience, we implement a doubleload feature that will first load the presentation using a low quality and then queue a request for a higher quality version
-
getCurrentSlideIndex(
) → Future -
getLibrary(
) → Future -
getMessages(
) → Future -
getPlaylists(
) → Future -
handleAudioCurrentSong(
Map data) → void -
handleAudioPlayPause(
Map data) → void -
handleAudioRequest(
Map data) → void -
handleAuthenticate(
Map data) → void -
handleClockCurrentTimes(
Map data) → void -
handleClockRequest(
Map data) → void -
handleClockStartStop(
Map data) → void -
handleLibraryRequest(
Map data) → void -
handleMessageHide(
Map data) → void -
handleMessageRequest(
Map data) → void -
handleMessageSend(
Map data) → void -
handlePlaylistRequestAll(
Map data) → void -
handlePresentationCurrent(
Map data) → void -
handlePresentationSlideIndex(
Map data) → void -
handlePresentationTriggerIndex(
Map data) → void -
handleResponse(
WSMessage message) → void -
loadNextPresentation(
) → Future< bool> -
loadPresentation(
{String? path, int quality = SLIDE_HIGHQ, bool doubleLoad = true}) → Future -
loadPreviousPresentation(
) → Future< bool> -
loadStatus(
) → void - requests all the data we need to get started and waits for the most important data to arrive
-
messageHide(
int id) → Future -
messageSend(
int id) → Future -
messageToggle(
int id) → Future -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
notify(
[String eventName = 'update']) → void -
inherited
-
on(
String event, void callback(ProEvent< Object> event)) → ProEventObserver -
set a callback for events of this type.
inherited
-
stageDisplayHideMessage(
) → Future -
stageDisplaySelectLayout(
int layoutId) → Future -
stageDisplaySendMessage(
[String? s]) → Future -
startSendingClockTimes(
) → Future -
stopSendingClockTimes(
) → Future -
stream(
String event) → Stream< ProEvent< Object> > -
listen to an event on this ProEventEmitter as a stream. An
ProEvent
will be emitted whenever the event by this name is emitted.inherited -
toString(
) → String -
A string representation of this object.
inherited
-
triggerNext(
) → Future -
triggerPrev(
) → Future -
triggerSlide(
{ProPresentation? presentation, int index = 0}) → Future - for immediate user feedback, we also update the current presentation in this function and don't wait for the response from ProPresenter
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited