Поделиться через


Office.SharedProperties interface

Представляет свойства встречи или сообщения в общей папке или общем почтовом ящике.

Дополнительные сведения об использовании этого объекта см. в статье Включение общих папок и сценариев общих почтовых ящиков в надстройке Outlook.

Комментарии

[ Набор API: Почтовый ящик 1.8 для поддержки общих папок, Почтовый ящик 1.13 для поддержки общих почтовых ящиков ]

Минимальный уровень разрешений: чтение элемента

Применимый режим Outlook: Compose или чтение

Примеры

function performOperation() {
  Office.context.mailbox.getCallbackTokenAsync({
      isRest: true
    },
    function (asyncResult) {
      if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value !== "") {
        Office.context.mailbox.item.getSharedPropertiesAsync({
            // Pass auth token along.
            asyncContext: asyncResult.value
          },
          function (asyncResult1) {
            let sharedProperties = asyncResult1.value;
            let delegatePermissions = sharedProperties.delegatePermissions;

            // Determine if user can do the expected operation.
            // E.g., do they have Write permission?
            if ((delegatePermissions & Office.MailboxEnums.DelegatePermissions.Write) != 0) {
              // Construct REST URL for your operation.
              // Update <version> placeholder with actual Outlook REST API version e.g. "v2.0".
              // Update <operation> placeholder with actual operation.
              let rest_url = sharedProperties.targetRestUrl + "/<version>/users/" + sharedProperties.targetMailbox + "/<operation>";
  
              $.ajax({
                  url: rest_url,
                  dataType: 'json',
                  headers:
                  {
                    "Authorization": "Bearer " + asyncResult1.asyncContext
                  }
                }
              ).done(
                function (response) {
                  console.log("success");
                }
              ).fail(
                function (error) {
                  console.log("error message");
                }
              );
            }
          }
        );
      }
    }
  );
}

Свойства

delegatePermissions

Разрешения, имеющиеся у делегата в общей папке или у пользователя в общем почтовом ящике.

owner

Адрес электронной почты владельца общего элемента.

targetMailbox

Расположение почтового ящика владельца для доступа делегата. Это расположение может отличаться в зависимости от клиента Outlook.

Используйте с targetRestUrl , чтобы создать URL-адрес операции REST.

Пример использования: targetRestUrl + "/{api_version}/users/" + targetMailbox + "/{REST_operation}"

targetRestUrl

Базовый URL-адрес REST API (в настоящее время https://outlook.office.com/api).

Используйте с targetMailbox , чтобы создать URL-адрес операции REST.

Пример использования: targetRestUrl + "/{api_version}/users/" + targetMailbox + "/{REST_operation}"

Сведения о свойстве

delegatePermissions

Разрешения, имеющиеся у делегата в общей папке или у пользователя в общем почтовом ящике.

delegatePermissions: MailboxEnums.DelegatePermissions;

Значение свойства

Примеры

function performOperation() {
  Office.context.mailbox.getCallbackTokenAsync({
      isRest: true
    },
    function (asyncResult) {
      if (asyncResult.status === Office.AsyncResultStatus.Succeeded && asyncResult.value !== "") {
        Office.context.mailbox.item.getSharedPropertiesAsync({
            // Pass auth token along.
            asyncContext: asyncResult.value
          },
          function (asyncResult1) {
            let sharedProperties = asyncResult1.value;
            let delegatePermissions = sharedProperties.delegatePermissions;

            // Determine if user can do the expected operation.
            // E.g., do they have Write permission?
            if ((delegatePermissions & Office.MailboxEnums.DelegatePermissions.Write) != 0) {
              // Construct REST URL for your operation.
              // Update <version> placeholder with actual Outlook REST API version e.g. "v2.0".
              // Update <operation> placeholder with actual operation.
              let rest_url = sharedProperties.targetRestUrl + "/<version>/users/" + sharedProperties.targetMailbox + "/<operation>";
  
              $.ajax({
                  url: rest_url,
                  dataType: 'json',
                  headers:
                  {
                    "Authorization": "Bearer " + asyncResult1.asyncContext
                  }
                }
              ).done(
                function (response) {
                  console.log("success");
                }
              ).fail(
                function (error) {
                  console.log("error message");
                }
              );
            }
          }
        );
      }
    }
  );
}

owner

Адрес электронной почты владельца общего элемента.

owner: string;

Значение свойства

string

targetMailbox

Расположение почтового ящика владельца для доступа делегата. Это расположение может отличаться в зависимости от клиента Outlook.

Используйте с targetRestUrl , чтобы создать URL-адрес операции REST.

Пример использования: targetRestUrl + "/{api_version}/users/" + targetMailbox + "/{REST_operation}"

targetMailbox: string;

Значение свойства

string

targetRestUrl

Базовый URL-адрес REST API (в настоящее время https://outlook.office.com/api).

Используйте с targetMailbox , чтобы создать URL-адрес операции REST.

Пример использования: targetRestUrl + "/{api_version}/users/" + targetMailbox + "/{REST_operation}"

targetRestUrl: string;

Значение свойства

string