Revision control

Copy as Markdown

Other Tools

/* 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"
interface calIItipItem;
interface calIAttendee;
interface calIDateTime;
/**
* calIItipTransport is a generic transport interface that is implemented
* by transports (eg: email, XMPP, etc.) wishing to send calIItipItems
*/
[scriptable, uuid(caedabb9-d886-4814-ada5-a5636d2fb939)]
interface calIItipTransport : nsISupports
{
/**
* Scheme to be used to prefix attendees. For example, the Email transport
* should return "mailto".
*/
readonly attribute AUTF8String scheme;
/**
* Sending identity. This can be set to change the "sender" identity from
* defaultIdentity above.
*/
attribute AUTF8String senderAddress;
/**
* Type of the transport: email, xmpp, etc.
*/
readonly attribute AUTF8String type;
/**
* Sends a calIItipItem to the recipients using the specified title and
* alternative representation. If a calIItipItem is attached, then an ICS
* representation of those objects are generated and attached to the email.
* If the calIItipItem is null, then the item(s) is sent without any
* text/calendar mime part.
* @param recipientArray array of recipients
* @param calIItipItem set of calIItems encapsulated as calIItipItems
* @param sender the attendee the calIItipItem is coming from.
*/
boolean sendItems(in Array<calIAttendee> recipientArray,
in calIItipItem item,
in calIAttendee sender);
};