Constructor
new CastSender(receiverAppId, onStatusChanged, onFirstCastStateUpdate, onRemoteEvent, onResumeLocal, onInitStateRequired, androidReceiverCompatible)
Parameters:
Name |
Type |
Description |
receiverAppId |
string
|
The ID of the cast receiver application. |
onStatusChanged |
function
|
A callback invoked when the cast status
changes. |
onFirstCastStateUpdate |
function
|
A callback invoked when an
"update" event has been received for the first time. |
onRemoteEvent |
function
|
A callback
invoked with target name and event when a remote event is received. |
onResumeLocal |
function
|
A callback invoked when the local player
should resume playback. Called before the cached remote state is wiped. |
onInitStateRequired |
function
|
A callback to get local player's.
state. Invoked when casting is initiated from Chrome's cast button. |
androidReceiverCompatible |
boolean
|
Indicates if the app is
compatible with an Android Receiver. |
- Implements:
- Source:
Members
hasReceivers_ :boolean
Type:
- Source:
A set of all living CastSender instances. The constructor and destroy
methods will add and remove instances from this set.
This is used to deal with delayed initialization of the Cast SDK. When the
SDK becomes available, instances will be reinitialized.
Type:
- Source:
session_ :chrome.cast.Session
Type:
- Source:
STATUS_DELAY :number
Type:
- Source:
androidReceiverCompatible_ :boolean
Type:
- Source:
apiReady_ :boolean
Type:
- Source:
appData_ :Object
Type:
- Source:
cachedProperties_ :Object
Type:
- Source:
hasJoinedExistingSession_ :boolean
Type:
- Source:
isCasting_ :boolean
Type:
- Source:
nextAsyncCallId_ :number
Type:
- Source:
onFirstCastStateUpdate_ :?function()
Type:
- Source:
onInitStateRequired_ :?function()
Type:
- Source:
onRemoteEvent_ :?function(string, !shaka.util.FakeEvent)
Type:
-
?function(string, !shaka.util.FakeEvent)
- Source:
onResumeLocal_ :?function()
Type:
- Source:
receiverAppId_ :string
Type:
- Source:
receiverName_ :string
Type:
- Source:
Methods
onExistingSessionJoined_(session)
A static version of onExistingSessionJoined_, that calls that method for
each known instance.
Parameters:
Name |
Type |
Description |
session |
chrome.cast.Session
|
|
- Source:
onReceiverStatusChanged_(availability)
A static version of onReceiverStatusChanged_, that calls that method for
each known instance.
Parameters:
Name |
Type |
Description |
availability |
string
|
|
- Source:
onSdkLoaded_(loaded)
If the cast SDK is not available yet, it will invoke this callback once it
becomes available.
Parameters:
Name |
Type |
Description |
loaded |
boolean
|
|
- Source:
apiReady() → {boolean}
- Source:
Returns:
True if the cast API is available.
-
Type
-
boolean
cast(initState) → {Promise}
Parameters:
- Source:
Returns:
Resolved when connected to a receiver. Rejected if the
connection fails or is canceled by the user.
-
Type
-
Promise
destroy() → {Promise}
Request that this object be destroyed, releasing all resources and shutting
down all operations. Returns a Promise which is resolved when destruction
is complete. This Promise should never be rejected.
- Implements:
- Source:
Returns:
-
Type
-
Promise
forceDisconnect()
Forces the receiver app to shut down by disconnecting. Does nothing if not
connected.
- Source:
get(targetName, property) → {?}
Getter for properties of remote objects.
Parameters:
Name |
Type |
Description |
targetName |
string
|
|
property |
string
|
|
- Source:
Returns:
-
Type
-
?
hasReceivers() → {boolean}
- Source:
Returns:
True if there are receivers.
-
Type
-
boolean
hasRemoteProperties() → {boolean}
- Source:
Returns:
True if we have a cache of remote properties from the
receiver.
-
Type
-
boolean
init()
Initialize the Cast API.
- Source:
isCasting() → {boolean}
- Source:
Returns:
True if we are currently casting.
-
Type
-
boolean
onConnectionError_(error)
Parameters:
Name |
Type |
Description |
error |
chrome.cast.Error
|
|
- Source:
onConnectionStatusChanged_()
- Source:
onConnectionStatusChangedBound_()
- Source:
onExistingSessionJoined_(session)
Parameters:
Name |
Type |
Description |
session |
chrome.cast.Session
|
|
- Source:
onMessageReceived_(namespace, serialized)
Parameters:
Name |
Type |
Description |
namespace |
string
|
|
serialized |
string
|
|
- Source:
onMessageReceivedBound_()
- Source:
onReceiverStatusChanged_(availability)
Parameters:
Name |
Type |
Description |
availability |
string
|
|
- Source:
onSessionCreated_(session)
Parameters:
Name |
Type |
Description |
session |
chrome.cast.Session
|
|
- Source:
onSessionInitiated_(initState, session)
Parameters:
- Source:
propertyGetter_(targetName, property) → {?}
Parameters:
Name |
Type |
Description |
targetName |
string
|
|
property |
string
|
|
- Source:
Returns:
-
Type
-
?
receiverName() → {string}
- Source:
Returns:
The name of the Cast receiver device, if isCasting().
-
Type
-
string
rejectAllPromises_()
Reject any async call promises that are still pending.
- Source:
remoteAsyncCall_(targetName, methodName, …varArgs) → {Promise}
Parameters:
Name |
Type |
Attributes |
Description |
targetName |
string
|
|
|
methodName |
string
|
|
|
varArgs |
*
|
<repeatable>
|
|
- Source:
Returns:
-
Type
-
Promise
remoteCall_(targetName, methodName, …varArgs)
Parameters:
Name |
Type |
Attributes |
Description |
targetName |
string
|
|
|
methodName |
string
|
|
|
varArgs |
*
|
<repeatable>
|
|
- Source:
removeListeners_()
- Source:
sendMessage_(messagenon-null)
Parameters:
Name |
Type |
Description |
message |
Object
|
|
- Source:
set(targetName, property, value)
Setter for properties of remote objects.
Parameters:
Name |
Type |
Description |
targetName |
string
|
|
property |
string
|
|
value |
?
|
|
- Source:
setAppData(appData)
Set application-specific data.
Parameters:
Name |
Type |
Description |
appData |
Object
|
Application-specific data to relay to the receiver. |
- Source:
showDisconnectDialog()
Shows user a cast dialog where they can choose to stop
casting. Relies on Chrome to perform disconnect if they do.
Doesn't do anything if not connected.
- Source: