Compartir a través de


Obtener y establecer categorías

En Outlook, un usuario puede aplicar categorías a mensajes y citas como medio para organizar sus datos de buzón de correo. El usuario define la lista maestra de categorías codificadas por colores para su buzón de correo y, a continuación, puede aplicar una o varias de esas categorías a cualquier mensaje o elemento de cita. Cada categoría de la lista maestra se representa por el nombre y el color especificados por el usuario. Puede usar la API de JavaScript de Office para administrar la lista maestra de categorías en el buzón y las categorías aplicadas a un elemento.

Nota:

La compatibilidad con esta característica se introdujo en el conjunto de requisitos 1.8. Vea clientes y plataformas compatibles con este conjunto de requisitos.

Administrar categorías en la lista maestra

Solo las categorías de la lista maestra del buzón de correo están disponibles para que se apliquen a un mensaje o una cita. Puede usar la API para agregar, obtener y quitar categorías maestras.

Importante

Para que el complemento administre la lista maestra de categorías, debe solicitar el permiso de buzón de lectura y escritura en el manifiesto. El marcado varía en función del tipo de manifiesto.

  • Manifiesto de solo complemento: establezca el <elemento Permissions> en ReadWriteMailbox.
  • Manifiesto unificado para Microsoft 365: establezca la "name" propiedad de un objeto de la "authorization.permissions.resourceSpecific" matriz "Mailbox.ReadWrite.User"en .

Agregar categorías maestras

En el ejemplo siguiente se muestra cómo agregar una categoría denominada "Urgente" a la lista maestra llamando a addAsync en mailbox.masterCategories.

const masterCategoriesToAdd = [
    {
        "displayName": "Urgent!",
        "color": Office.MailboxEnums.CategoryColor.Preset0
    }
];

Office.context.mailbox.masterCategories.addAsync(masterCategoriesToAdd, function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
        console.log("Successfully added categories to master list");
    } else {
        console.log("masterCategories.addAsync call failed with error: " + asyncResult.error.message);
    }
});

Obtener categorías maestras

En el ejemplo siguiente se muestra cómo obtener la lista de categorías llamando a getAsync en mailbox.masterCategories.

Office.context.mailbox.masterCategories.getAsync(function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
        console.log("Action failed with error: " + asyncResult.error.message);
    } else {
        const masterCategories = asyncResult.value;
        console.log("Master categories:");
        masterCategories.forEach(function (item) {
            console.log("-- " + JSON.stringify(item));
        });
    }
});

Eliminación de categorías maestras

En el ejemplo siguiente se muestra cómo quitar la categoría denominada "Urgente" de la lista maestra llamando a removeAsync en mailbox.masterCategories.

const masterCategoriesToRemove = ["Urgent!"];

Office.context.mailbox.masterCategories.removeAsync(masterCategoriesToRemove, function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
        console.log("Successfully removed categories from master list");
    } else {
        console.log("masterCategories.removeAsync call failed with error: " + asyncResult.error.message);
    }
});

Administrar categorías en un mensaje o cita

Puede usar la API para agregar, obtener y quitar categorías de un elemento de mensaje o cita.

Importante

Solo las categorías de la lista maestra del buzón de correo están disponibles para que se apliquen a un mensaje o una cita. Consulte la sección anterior Administrar categorías en la lista maestra para obtener más información.

En Outlook en la Web o nuevo Outlook en Windows, no puede usar la API para administrar categorías en un mensaje en Compose modo.

Agregar categorías a un elemento

En el ejemplo siguiente se muestra cómo aplicar la categoría denominada "Urgente" al elemento actual llamando a addAsync en item.categories.

const categoriesToAdd = ["Urgent!"];

Office.context.mailbox.item.categories.addAsync(categoriesToAdd, function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
        console.log("Successfully added categories");
    } else {
        console.log("categories.addAsync call failed with error: " + asyncResult.error.message);
    }
});

Obtener las categorías de un elemento

En el ejemplo siguiente se muestra cómo obtener las categorías aplicadas al elemento actual llamando a getAsync en item.categories.

Office.context.mailbox.item.categories.getAsync(function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Failed) {
        console.log("Action failed with error: " + asyncResult.error.message);
    } else {
        const categories = asyncResult.value;
        console.log("Categories:");
        categories.forEach(function (item) {
            console.log("-- " + JSON.stringify(item));
        });
    }
});

Quitar categorías de un elemento

En el ejemplo siguiente se muestra cómo quitar la categoría denominada "Urgente" del elemento actual mediante una llamada a removeAsync en item.categories.

const categoriesToRemove = ["Urgent!"];

Office.context.mailbox.item.categories.removeAsync(categoriesToRemove, function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
        console.log("Successfully removed categories");
    } else {
        console.log("categories.removeAsync call failed with error: " + asyncResult.error.message);
    }
});

Vea también