gecko-dev/dom/mobilemessage/ipc/PSms.ipdl

150 строки
2.9 KiB
C++

/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set sw=2 ts=8 et ft=cpp : */
/* 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 protocol PContent;
include protocol PSmsRequest;
include protocol PMobileMessageCursor;
include protocol PBlob;
include SmsTypes;
namespace mozilla {
namespace dom {
namespace mobilemessage {
struct SendMmsMessageRequest
{
uint32_t serviceId;
nsString[] receivers;
nsString subject;
nsString smil;
MmsAttachmentData[] attachments;
};
struct SendSmsMessageRequest
{
uint32_t serviceId;
nsString number;
nsString message;
bool silent;
};
union SendMessageRequest
{
SendMmsMessageRequest;
SendSmsMessageRequest;
};
struct RetrieveMessageRequest
{
int32_t messageId;
};
struct GetMessageRequest
{
int32_t messageId;
};
struct DeleteMessageRequest
{
int32_t[] messageIds;
};
struct CreateMessageCursorRequest
{
SmsFilterData filter;
bool reverse;
};
struct MarkMessageReadRequest
{
int32_t messageId;
bool value;
bool sendReadReport;
};
struct GetSegmentInfoForTextRequest
{
nsString text;
};
struct CreateThreadCursorRequest
{
};
struct GetSmscAddressRequest
{
uint32_t serviceId;
};
union IPCSmsRequest
{
SendMessageRequest;
RetrieveMessageRequest;
GetMessageRequest;
DeleteMessageRequest;
MarkMessageReadRequest;
GetSegmentInfoForTextRequest;
GetSmscAddressRequest;
};
union IPCMobileMessageCursor
{
CreateMessageCursorRequest;
CreateThreadCursorRequest;
};
sync protocol PSms {
manager PContent;
manages PSmsRequest;
manages PMobileMessageCursor;
child:
NotifyReceivedMessage(MobileMessageData aMessageData);
NotifyRetrievingMessage(MobileMessageData aMessageData);
NotifySendingMessage(MobileMessageData aMessageData);
NotifySentMessage(MobileMessageData aMessageData);
NotifyFailedMessage(MobileMessageData aMessageData);
NotifyDeliverySuccessMessage(MobileMessageData aMessageData);
NotifyDeliveryErrorMessage(MobileMessageData aMessageData);
NotifyReceivedSilentMessage(MobileMessageData aMessageData);
NotifyReadSuccessMessage(MobileMessageData aMessageData);
NotifyReadErrorMessage(MobileMessageData aMessageData);
NotifyDeletedMessageInfo(DeletedMessageInfoData aDeletedInfo);
parent:
/**
* Sent when the child no longer needs to use sms.
*/
__delete__();
/**
* Sent when the child makes an asynchronous request to the parent.
*/
PSmsRequest(IPCSmsRequest request);
/**
* Sent when the child makes an asynchronous cursor to the parent.
*/
PMobileMessageCursor(IPCMobileMessageCursor request);
AddSilentNumber(nsString aNumber);
RemoveSilentNumber(nsString aNumber);
};
} // namespace mobilemessage
} // namespace dom
} // namespace mozilla