Maestro Event Interface
Introduction
The Maestro Event Interface (MaestroEventInterface) defines a set of methods for interacting with the current event. These methods allow you to control panel and overlay visibility, manage playback, and access state information. The interface is returned from userDidStartWatchingEvent().
Key Responsibilities
The Maestro Event Interface creates a clear contract between your application and the SDK, enabling bidirectional communication for panel management, playback control, and state access. This interface is core to the SDK's functionality and is designed to work seamlessly with the Event Delegate implementation in your application.
Panel Management: Methods like
didShowPanel()anddidHidePanel()allow you to notify the SDK when the panel's visibility changes, enabling proper state management and analytics tracking.Overlay Management: Methods like
didShowOverlay()anddidHideOverlay()allow you to notify the SDK when an overlay's visibility changes.Playback Control: Methods like
didStartPlayingClip(),didStopPlayingClip(), anddidUpdatePlaybackProgressOfClip()enable you to inform the SDK about the state of clip playback, allowing the UI to update accordingly.State Access: Methods like
getCurrentEventID(),getCurrentlyPlayingClipIndex(), andgetKeyPlaysCount()provide access to the current state of the event, allowing your application to make informed decisions.Data Updates: The
updateKeyPlaysData()method allows you to update the key plays data displayed in the panel, either when new data becomes available or when the user explicitly requests a refresh.
Methods
Panel Management
These methods allow you to manage the visibility and behavior of the Maestro panel.
| Method | Description |
|---|---|
| currentEventDoesNotSupportKeyPlays() | Indicates that the current event does not support key plays functionality. |
| didHidePanel() | Indicates that the panel has been hidden from the user. |
| didShowPanel() | Indicates that the panel has been shown to the user. |
Overlay Management
These methods allow you to manage the visibility of overlays.
| Method | Description |
|---|---|
| didHideOverlay() | Indicates that an overlay has been hidden from the user. |
| didShowOverlay() | Indicates that an overlay has been shown to the user. |
Playback Controls
These methods allow you to control and provide feedback about clip playback to the SDK.
| Method | Description |
|---|---|
| didFailToPlayClip() | Indicates that a clip failed to play. |
| didStartPlayingClip() | Indicates that a clip has started playing. |
| didStopPlayingClip() | Indicates that a clip has stopped playing. |
| didUpdatePlaybackProgressOfClip() | Updates the playback progress of the currently playing clip. |
| updatePlayerTimeCode() | Updates the Player Time Code stored in the SDK. |
State Access
These methods allow you to access information about the current state of the event and key plays.
| Endpoint | Description |
|---|---|
| getCurrentClipPlaybackProgress() | Retrieves the playback progress of the currently playing clip. |
| getCurrentEventID() | Retrieves the ID of the current event. |
| getCurrentlyPlayingClipIndex() | Retrieves the index of the currently playing clip. |
| getKeyPlaysCount() | Retrieves the total number of key plays available. |
| getLastPlayedClipIndex() | Retrieves the index of the last played clip. |
| simulateUseCase() | Simulates a specific use case for testing purposes. |
| updateKeyPlaysData() | Updates the key plays data for the current event. |