Mypal/dom/presentation/interfaces/nsIPresentationDevice.idl

44 lines
1.3 KiB
Plaintext

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "nsISupports.idl"
interface nsIPresentationControlChannel;
/*
* Remote device.
*/
[scriptable, uuid(b1e0a7af-5936-4066-8f2e-f789fb9a7e8f)]
interface nsIPresentationDevice : nsISupports
{
// The unique Id for the device. UUID is recommanded.
readonly attribute AUTF8String id;
// The human-readable name of this device.
readonly attribute AUTF8String name;
// TODO expose more info in order to fulfill UX spec
// The category of this device, could be "wifi", "bluetooth", "hdmi", etc.
readonly attribute AUTF8String type;
/*
* Establish a control channel to this device.
* @returns The control channel for this session.
* @throws NS_ERROR_FAILURE if the establishment fails
*/
nsIPresentationControlChannel establishControlChannel();
// Do something when presentation session is disconnected.
void disconnect();
/*
* Query if requested presentation URL is supported.
* @params requestedUrl the designated URL for a presentation request.
* @returns true if designated URL is supported.
*/
boolean isRequestedUrlSupported(in DOMString requestedUrl);
};