michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this file, michael@0: * You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsISupports.idl" michael@0: michael@0: interface nsIDOMMozCellBroadcastMessage; michael@0: michael@0: [scriptable, uuid(4c6fb794-31bd-4ed7-b21a-34b82aa3efbe)] michael@0: interface nsICellBroadcastListener : nsISupports michael@0: { michael@0: /** michael@0: * Called when a Cell Broadcast message has been received by the network. michael@0: * michael@0: * @param message michael@0: * The received Cell Broadcast Message. michael@0: */ michael@0: void notifyMessageReceived(in nsIDOMMozCellBroadcastMessage message); michael@0: }; michael@0: michael@0: /** michael@0: * XPCOM component (in the content process) that provides the cell broadcast michael@0: * information. michael@0: */ michael@0: [scriptable, uuid(e6c01d18-829e-4d5a-9611-60fca36e6b46)] michael@0: interface nsICellBroadcastProvider : nsISupports michael@0: { michael@0: /** michael@0: * Called when a content process registers receiving unsolicited messages from michael@0: * RadioInterfaceLayer in the chrome process. Only a content process that has michael@0: * the 'cellbroadcast' permission is allowed to register. michael@0: */ michael@0: void registerCellBroadcastMsg(in nsICellBroadcastListener listener); michael@0: void unregisterCellBroadcastMsg(in nsICellBroadcastListener listener); michael@0: };