Interface
The master orchestration instance
The active audio/video settings being used
Is the current user muted?
Is audio broadcasting voice-activation enabled?
Is audio broadcasting always enabled?
Is audio broadcasting push-to-talk enabled?
Abstract
connectConnect to any servers or services needed in order to provide audio/video functionality. Any parameters needed in order to establish the connection should be drawn from the settings object. This function should return a boolean for whether the connection attempt was successful.
Was the connection attempt successful?
Abstract
disconnectDisconnect from any servers or services which are used to provide audio/video functionality. This function should return a boolean for whether a valid disconnection occurred.
Did a disconnection occur?
Provide an Object of available audio sources which can be used by this implementation. Each object key should be a device id and the key should be a human-readable label.
Provide an Object of available audio sources which can be used by this implementation. Each object key should be a device id and the key should be a human-readable label.
Abstract
getReturn an array of Foundry User IDs which are currently connected to A/V. The current user should also be included as a connected user in addition to all peers.
The connected User IDs
Abstract
getProvide a MediaStream for monitoring a given user's voice volume levels.
The User ID.
The MediaStream for the user, or null if the user does not have one.
Abstract
getProvide a MediaStream instance for a given user ID
The User id
The MediaStream for the user, or null if the user does not have one
Provide an Object of available video sources which can be used by this implementation. Each object key should be a device id and the key should be a human-readable label.
Abstract
initializeOne-time initialization actions that should be performed for this client implementation. This will be called only once when the Game object is first set-up.
Abstract
isIs outbound audio enabled for the current user?
Abstract
isIs outbound video enabled for the current user?
Handle changes to A/V configuration settings.
The settings which have changed
Abstract
setSet the Video Track for a given User ID to a provided VideoElement
The User ID to set to the element
The HTMLVideoElement to which the video should be set
Abstract
toggleSet whether the outbound audio feed for the current game user is enabled. This method should be used when the user marks themselves as muted or if the gamemaster globally mutes them.
Whether the outbound audio track should be enabled (true) or disabled (false)
Abstract
toggleSet whether the outbound audio feed for the current game user is actively broadcasting. This can only be true if audio is enabled, but may be false if using push-to-talk or voice activation modes.
Whether outbound audio should be sent to connected peers or not?
Abstract
toggleSet whether the outbound video feed for the current game user is enabled. This method should be used when the user marks themselves as hidden or if the gamemaster globally hides them.
Whether the outbound video track should be enabled (true) or disabled (false)
Abstract
updateReplace the local stream for each connected peer with a re-generated MediaStream.
An interface for an Audio/Video client which is extended to provide broadcasting functionality.
Param: master
The master orchestration instance
Param: settings
The audio/video settings being used