Skip to content

Releases: aspose-email-cloud/aspose-email-cloud-node

21.9.0

21 Sep 18:41
94aa873
Compare
Choose a tag to compare

21.4.0

13 Apr 19:48
cad27bb
Compare
Choose a tag to compare

20.12.0

30 Dec 15:08
72ffe69
Compare
Choose a tag to compare

20.10.0

29 Oct 11:32
Compare
Choose a tag to compare

20.9.1

11 Sep 08:52
6ee3e3e
Compare
Choose a tag to compare

20.7.0

23 Jul 11:07
968ee98
Compare
Choose a tag to compare

20.5.0

27 May 14:21
08254ea
Compare
Choose a tag to compare

20.3.0

16 Mar 09:29
cf1c99e
Compare
Choose a tag to compare

20.2.0

26 Feb 12:48
Compare
Choose a tag to compare

20.1 - Model API

28 Jan 11:34
Compare
Choose a tag to compare

The page contains release notes for Aspose.Email Cloud 20.1 – API Reference

New features

Introducing new Model API for VCard, iCalendar and Email message

iCalendar is a MIME type which allows users to exchange and store calendaring and scheduling information such as journal entries, events, free/busy information and to-dos.
In the previous version were only property sets based API. For example, to create iCalendar file using .Net SDK you had to use the following code:

await api.createCalendar(new requests.CreateCalendarRequest(
    fileName,
    new models.HierarchicalObjectRequest(
        new models.HierarchicalObject(
            'CALENDAR',
            undefined, [
                new models.PrimitiveObject("LOCATION", undefined, "location"),
                new models.PrimitiveObject("STARTDATE", undefined, startDate.toUTCString()),
                new models.PrimitiveObject("ENDDATE", undefined, endDate.toUTCString()),
                new models.HierarchicalObject("ORGANIZER", undefined, [
                        new models.PrimitiveObject("ADDRESS", undefined, "organizer@aspose.com"),
                        new models.PrimitiveObject("DISPLAYNAME", undefined, "Organizer Name")
                    ]),
                new models.HierarchicalObject("ATTENDEES", undefined, [
                    new models.IndexedHierarchicalObject("ATTENDEE", undefined, 0, [
                        new models.PrimitiveObject("ADDRESS", undefined, "attendee@aspose.com"),
                        new models.PrimitiveObject("DISPLAYNAME", undefined, "Attendee Name")
                    ])
                ])
            ]),
        new models.StorageFolderLocation(storage, folder))));

In the current version, we simplified the work with iCalendar files. Now the same object can be represented by using new CalendarDto model:

var calendar = new models.CalendarDto();
calendar.attendees = [
    new models.MailAddress('Attendee Name', 'attendee@aspose.com', 'Accepted')
];
calendar.description = 'Some description';
calendar.summary = 'Some summary';
calendar.organizer = new models.MailAddress('Organizer Name', 'organizer@aspose.com');
calendar.startDate = getDate(undefined, 1);
calendar.endDate = getDate(calendar.startDate, 1);
calendar.location = 'Some location';

You can use both ways to work with iCalendar files.

Model API does not have separate methods to operate with attachments. Attachments can be operated directly by transforming files to Base64 strings:

var data= fs.readFileSync(filePath).toString('base64');
var attachment = new models.Attachment();
attachment.base64Data = data;
attachment.name = 'attachment-name.txt';
calendar.attachments = [attachment];

More examples available on SDK wiki pages: .Net, Java, Python, Ruby, Typescript, PHP

Files conversion

Aspose.Email Cloud supports MSG, MHTM, HTML and EML file formats to store emails. Now new methods to convert such files are available. For example, to convert EML to MSG, you can use the following code:

var convertedFile = await api.convertEmail(
    new requests.ConvertEmailRequest(
        'Msg', fs.readFileSync('file/on/disk')));

More details on SDK wiki pages: .Net, Java, Python, Ruby, Typescript, PHP
Also, we added iCalendar to AlternateView converter. Now it can be properly attached to an email message:

var alternate = await api.convertCalendarModelToAlternate(
    new requests.ConvertCalendarModelToAlternateRequest(
        new models.CalendarDtoAlternateRq(calendar, 'Create')));

SDK changes