/* 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. * @param url The URL requested to open by remote device. * @param presentationId The Id for representing this session. * @returns The control channel for this session. * @throws NS_ERROR_FAILURE if the establishment fails */ nsIPresentationControlChannel establishControlChannel(in DOMString url, in DOMString presentationId); };