зеркало из https://github.com/mozilla/gecko-dev.git
Bug 844431 - B2G MMS: provide nsIDOMMobileMessageManager interface (with sendMMS() first) (part 5, nsIDOMMobileMessageManager.send()). r=vicamo,mounir sr=sicking a=leo+
This commit is contained in:
Родитель
b6c241f1ba
Коммит
8a2fb9fe00
|
@ -6,6 +6,10 @@
|
|||
interface nsIMobileMessageCallback;
|
||||
interface nsIDOMBlob;
|
||||
|
||||
%{C++
|
||||
#define RIL_MMSSERVICE_CONTRACTID "@mozilla.org/mms/rilmmsservice;1"
|
||||
%}
|
||||
|
||||
[scriptable, uuid(3ec33286-8559-11e2-9f38-e76b58650568)]
|
||||
interface nsIMmsService : nsISupports
|
||||
{
|
||||
|
|
|
@ -8,6 +8,8 @@ interface nsIDOMEventListener;
|
|||
interface nsIDOMMozSmsRequest;
|
||||
interface nsIDOMMozSmsFilter;
|
||||
interface nsIDOMMozSmsSegmentInfo;
|
||||
interface nsIDOMDOMRequest;
|
||||
interface nsIDOMBlob;
|
||||
|
||||
dictionary MmsParameters
|
||||
{
|
||||
|
@ -17,7 +19,7 @@ dictionary MmsParameters
|
|||
jsval attachments; // MmsAttachment[]
|
||||
};
|
||||
|
||||
[scriptable, builtinclass, uuid(228508d0-7fe4-11e2-a028-83810f98f20b)]
|
||||
[scriptable, builtinclass, uuid(f020e48e-84c7-11e2-939e-53a3106dde16)]
|
||||
interface nsIDOMMozMobileMessageManager : nsIDOMEventTarget
|
||||
{
|
||||
nsIDOMMozSmsSegmentInfo getSegmentInfoForText(in DOMString text);
|
||||
|
@ -28,6 +30,8 @@ interface nsIDOMMozMobileMessageManager : nsIDOMEventTarget
|
|||
// An array of SmsRequest objects otherwise.
|
||||
jsval send(in jsval number, in DOMString message);
|
||||
|
||||
nsIDOMDOMRequest sendMMS(in jsval parameters /* MmsParameters */);
|
||||
|
||||
[binaryname(GetMessageMoz)]
|
||||
nsIDOMMozSmsRequest getMessage(in long id);
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
#include "MobileMessageManager.h"
|
||||
#include "nsIDOMClassInfo.h"
|
||||
#include "nsISmsService.h"
|
||||
#include "nsIMmsService.h"
|
||||
#include "nsIObserverService.h"
|
||||
#include "mozilla/Preferences.h"
|
||||
#include "mozilla/Services.h"
|
||||
|
@ -20,6 +21,9 @@
|
|||
#include "nsIXPConnect.h"
|
||||
#include "nsIPermissionManager.h"
|
||||
#include "GeneratedEvents.h"
|
||||
#include "DOMRequest.h"
|
||||
#include "nsIMobileMessageCallback.h"
|
||||
#include "MobileMessageCallback.h"
|
||||
|
||||
#define RECEIVED_EVENT_NAME NS_LITERAL_STRING("received")
|
||||
#define SENDING_EVENT_NAME NS_LITERAL_STRING("sending")
|
||||
|
@ -173,6 +177,21 @@ MobileMessageManager::Send(const jsval& aNumber, const nsAString& aMessage, jsva
|
|||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
MobileMessageManager::SendMMS(const JS::Value& aParams, nsIDOMDOMRequest** aRequest)
|
||||
{
|
||||
nsCOMPtr<nsIMmsService> mmsService = do_GetService(RIL_MMSSERVICE_CONTRACTID);
|
||||
NS_ENSURE_TRUE(mmsService, NS_ERROR_FAILURE);
|
||||
|
||||
nsRefPtr<DOMRequest> request = new DOMRequest(GetOwner());
|
||||
nsCOMPtr<nsIMobileMessageCallback> msgCallback = new MobileMessageCallback(request);
|
||||
nsresult rv = mmsService->Send(aParams, msgCallback);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
request.forget(aRequest);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
MobileMessageManager::GetMessageMoz(int32_t aId, nsIDOMMozSmsRequest** aRequest)
|
||||
{
|
||||
|
|
Загрузка…
Ссылка в новой задаче