The watchAvailability() method of the RemotePlayback interface watches the list of available remote playback devices and returns a Promise that resolves with the callbackId of a remote playback device.
watchAvailability(RemotePlaybackAvailabilityCallback)RemotePlaybackAvailabilityCallback(boolean)A callback that allows the page to obtain the remote playback device availability for the corresponding media element. It is passed a boolean which, if true, indicates that remote playback is available.
A Promise that resolves with an integer. This is the callbackId for the identified remote playback device.
InvalidStateError DOMExceptionThrown if disableRemotePlayback is true for the media element.
NotSupportedError DOMExceptionThrown if the user agent is unable to continuously monitor the list of available remote playback devices.
In the following example, after checking that there is no currently connected device, watchAvailability() is used to watch for remote devices becoming available. See the working example (Requires a supported device and a connected remote playback device).
if (video.remote.state === "disconnected") {
video.remote.watchAvailability(handleAvailabilityChange).then((id) => {
log(`> Started watching remote device availability: ${id}`);
callbackId = id;
});
}