Gestire elementi Outlook tramite Aspose.Email Graph Client

Gestisci eventi del calendario

Aspose.Email fornisce API per accedere, gestire e interagire con gli eventi del calendario. A tal fine, offre i seguenti metodi in IGraphClient interfaccia:

  • ListCalendars() - Recupera una collezione di informazioni sui calendari.
  • ListCalendarItems(string id) - Recupera una collezione di elementi calendario associati all’ID del calendario specificato.
  • FetchCalendarItem(string id) - Recupera un elemento calendario specifico in base all’ID fornito.
  • CreateCalendarItem(string calId, MapiCalendar mapiCalendar) - Crea un nuovo elemento calendario nel calendario specificato.
  • UpdateCalendarItem(MapiCalendar mapiCalendar) - Aggiorna un elemento calendario esistente.
  • UpdateCalendarItem(MapiCalendar mapiCalendar, UpdateSettings updateSettings) - Aggiorna un elemento calendario esistente con le impostazioni di aggiornamento specificate.

Il seguente esempio di codice dimostra come interagire con gli eventi del calendario in un client Microsoft Graph API usando i metodi forniti da Aspose.Email:


// List Calendars
CalendarInfoCollection calendars = graphClient.ListCalendars();

// List Calendar Items
MapiCalendarCollection calendarItems = graphClient.ListCalendarItems("calendarId");

// Fetch Calendar Item
MapiCalendar calendarItem = graphClient.FetchCalendarItem("calendarItemId");

// Create Calendar Item
MapiCalendar newCalendarItem = new MapiCalendar(
    location: "Conference Room",
    summary: "Team Meeting",
    description: "Discuss project status and updates.",
    startDate: startDate,
    endDate: endDate
);

MapiCalendar createdCalendarItem = graphClient.CreateCalendarItem("calendarId", newCalendarItem);

// Update Calendar Item
createdCalendarItem.Location = "Zoom Meeting";
MapiCalendar updatedCalendarItem = graphClient.UpdateCalendarItem(createdCalendarItem);

Gestisci categorie dei messaggi

Per gestire le categorie con MS Graph di Aspose.Email per .NET, utilizzare i seguenti metodi e provare l’esempio di codice qui sotto:

// create a custom category with Orange color
var category = client.CreateCategory("My custom category", CategoryPreset.Preset1);

// fetch a category
var fetchedCategory = client.FetchCategory(category.Id);

// update category (change color to brown)
fetchedCategory.Preset = CategoryPreset.Preset2;
var updatedCategory = client.UpdateCategory(fetchedCategory);

// list available categories
var categories = client.ListCategories();

foreach (var cat in categories)
{
    Console.WriteLine(cat.DisplayName);
}

// delete a category
client.Delete(fetchedCategory.Id);

Gestisci contatti

Aspose.Email fornisce API per accedere, gestire e interagire con gli elementi contatto. A tal fine, offre i seguenti metodi in IGraphClient interfaccia:

  • ListContacts(string id) - Recupera una collezione di contatti MAPI associati all’ID della cartella specificata.
  • FetchContact(string id) - Recupera un contatto specifico in base all’ID dell’elemento fornito.
  • CreateContact(string folderId, MapiContact contact) - Crea un nuovo contatto nella cartella specificata.
  • UpdateContact(MapiContact contact) - Aggiorna un contatto esistente.

Il seguente esempio di codice dimostra come interagire con i contatti in un client Microsoft Graph API utilizzando i metodi forniti da Aspose.Email:

// List Contacts
MapiContactCollection contacts = graphClient.ListContacts("contactFolderId");

// Fetch Contact
MapiContact contact = graphClient.FetchContact("contactId");

// Create Contact
MapiContact newContact = new MapiContact("Jane Smith", "jane.smith@example.com", "XYZ Corporation", "777-888-999");

MapiContact createdContact = graphClient.CreateContact("contactFolderId", newContact);

// Update Contact
createdContact.Telephones.PrimaryTelephoneNumber = "888-888-999";

MapiContact updatedContact = graphClient.UpdateContact(createdContact);

Gestisci sovrascritture

Per gestire le sovrascritture con MS Graph di Aspose.Email per .NET, utilizzare i seguenti metodi:

// Create an user's override
var userOverride = client.CreateOrUpdateOverride
    (new MailAddress("JohnBrown@someorg.com", "JohnBrown"), ClassificationType.Focused);

// list the overrides
var overrides = client.ListOverrides();

// update override
userOverride.Sender.DisplayName = "John Brown";
var updatedOverride = client.UpdateOverride(userOverride);

// delete override
client.Delete(updatedOverride.Id);

Gestisci regole della posta in arrivo

Per gestire le regole con MS Graph di Aspose.Email per .NET, utilizzare i seguenti metodi:

// Create a rule
var rule = PrepareRule("user@someorg.com", "User");
var createdRule = client.CreateRule(rule);

// List all rules defined for Inbox
var rules = client.ListRules();

// Fetch a rule
var fetchedRule = client.FetchRule(createdRule.RuleId);

// Update a rule
fetchedRule.DisplayName = "Renamed rule";
fetchedRule.IsEnabled = false;
var updatedRule = client.UpdateRule(createdRule);

// Delete a rule
client.Delete(updatedRule.RuleId);
InboxRule PrepareRule(string email, string displayName)
{
    var rule = new InboxRule()
    {
        DisplayName = "My rule",
        Priority = 1,
        IsEnabled = true,
        Conditions = new RulePredicates(),
        Actions = new RuleActions()
    };

    rule.Conditions.ContainsSenderStrings = new StringCollection { displayName };
    rule.Actions.ForwardToRecipients = new MailAddressCollection
        { new MailAddress(email, displayName, true) };
    rule.Actions.StopProcessingRules = true;

    return rule;
}

Gestisci blocchi note OneNote

Per gestire i blocchi note con MS Graph di Aspose.Email per .NET, utilizzare i seguenti metodi:

// create a OneNote notebook
var newNotebook = new Notebook()
{
    DisplayName = "My Notebook"
};
var createdNotebook = client.CreateNotebook(newNotebook);

// fetch a notebook
var fetchedNotebook = client.FetchNotebook(createdNotebook.Id);

// list the notebooks
var notebooks = client.ListNotebooks();

Gestire attività in Microsoft Graph

Aspose.Email fornisce agli sviluppatori API per accedere, gestire e interagire con le attività e le liste di attività degli utenti usando i seguenti metodi di IGraphClient interfaccia:

Il seguente esempio di codice dimostra come gestire le liste di attività:

// List Task Lists
var taskLists = graphClient.ListTaskLists();

foreach (var tList in taskLists)
{
    Console.WriteLine($"Task List: {tList.DisplayName}");
}

// Get Task List
var taskList = graphClient.GetTaskList("taskListId");

// Delete Task List
graphClient.DeleteTaskList("taskListId");

Il seguente esempio di codice dimostra come gestire le attività:

// List Tasks in a Task List
MapiTaskCollection tasks = graphClient.ListTasks("taskListId");

// Fetch Task
MapiTask task = graphClient.FetchTask("taskId");

// Create Task
var newTask = new MapiTask
{
    Subject = "New Task",
    DueDate = new DateTime(2023, 12, 31),
    Status = MapiTaskStatus.NotStarted
};

MapiTask createdTask = graphClient.CreateTask(newTask, "taskListUri");

// Update Task
createdTask.Subject = "Updated Task Subject";
MapiTask updatedTask = graphClient.UpdateTask(createdTask);

// Update Task with UpdateSettings
var updateSettings = new UpdateSettings { SkipAttachments  = true };
MapiTask updatedTaskWithSettings = graphClient.UpdateTask(createdTask, updateSettings);