/* 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" #include "nsINetworkManager.idl" interface nsIDOMMozIccInfo; interface nsIDOMMozMobileConnectionInfo; interface nsIMobileMessageCallback; [scriptable, uuid(6e0f45b8-410e-11e3-8c8e-b715b2cd0128)] interface nsIRilNetworkInterface : nsINetworkInterface { readonly attribute unsigned long serviceId; readonly attribute DOMString iccId; /* The following attributes are for MMS proxy settings. */ readonly attribute DOMString mmsc; // Empty string if not set. readonly attribute DOMString mmsProxy; // Empty string if not set. readonly attribute long mmsPort; // -1 if not set. }; [scriptable, uuid(c0c5cb9f-6372-4b5a-b74c-baacc2da5e4f)] interface nsIVoicemailInfo : nsISupports { readonly attribute DOMString number; readonly attribute DOMString displayName; }; [scriptable, uuid(95e1be50-c912-11e2-8b8b-0800200c9a66)] interface nsIRilContext : nsISupports { readonly attribute DOMString radioState; readonly attribute DOMString cardState; readonly attribute long retryCount; readonly attribute DOMString imsi; readonly attribute DOMString networkSelectionMode; readonly attribute nsIDOMMozIccInfo iccInfo; readonly attribute nsIDOMMozMobileConnectionInfo voice; readonly attribute nsIDOMMozMobileConnectionInfo data; }; [scriptable, function, uuid(3bc96351-53b0-47a1-a888-c74c64b60f25)] interface nsIRilSendWorkerMessageCallback : nsISupports { boolean handleResponse(in jsval response); }; [scriptable, uuid(181d460e-220e-4274-8ba4-43f122eb518d)] interface nsIRadioInterface : nsISupports { readonly attribute nsIRilContext rilContext; /** * PDP APIs */ void setupDataCallByType(in DOMString apntype); void deactivateDataCallByType(in DOMString apntype); long getDataCallStateByType(in DOMString apntype); void updateRILNetworkInterface(); /** * SMS-related functionality. */ void getSegmentInfoForText(in DOMString text, in nsIMobileMessageCallback request); void sendSMS(in DOMString number, in DOMString message, in boolean silent, in nsIMobileMessageCallback request); void sendWorkerMessage(in DOMString type, [optional] in jsval message, [optional] in nsIRilSendWorkerMessageCallback callback); void getSmscAddress(in nsIMobileMessageCallback request); }; [scriptable, uuid(d035c32e-b491-11e3-9f9d-c716fab88bd6)] interface nsIRadioInterfaceLayer : nsISupports { readonly attribute unsigned long numRadioInterfaces; nsIRadioInterface getRadioInterface(in unsigned long clientId); void setMicrophoneMuted(in boolean muted); };