Merge m-c to b2g-inbound.
[gecko.git] / dom / webidl / Telephony.webidl
blob2d4ae7b7d9513b24244e0121c0d0911429f4a813
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this
4  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5  */
7 [Pref="dom.telephony.enabled"]
8 interface Telephony : EventTarget {
9   /**
10    * There are multiple telephony services in multi-sim architecture. We use
11    * |serviceId| to indicate the target telephony service. If not specified,
12    * the implementation MUST use the default service.
13    *
14    * Possible values of |serviceId| are 0 ~ (number of services - 1), which is
15    * simply the index of a service. Get number of services by acquiring
16    * |navigator.mozMobileConnections.length|.
17    */
19   [Throws]
20   TelephonyCall dial(DOMString number, optional unsigned long serviceId);
22   [Throws]
23   TelephonyCall dialEmergency(DOMString number, optional unsigned long serviceId);
25   [Throws]
26   void startTone(DOMString tone, optional unsigned long serviceId);
28   [Throws]
29   void stopTone(optional unsigned long serviceId);
31   [Throws]
32   attribute boolean muted;
34   [Throws]
35   attribute boolean speakerEnabled;
37   readonly attribute (TelephonyCall or TelephonyCallGroup)? active;
39   // A call is contained either in Telephony or in TelephonyCallGroup.
40   readonly attribute CallsList calls;
41   readonly attribute TelephonyCallGroup conferenceGroup;
43   attribute EventHandler onincoming;
44   attribute EventHandler oncallschanged;
45   attribute EventHandler onremoteheld;
46   attribute EventHandler onremoteresumed;