Расширение Outlook и Office с помощью SharePoint Framework

В выпуске SharePoint Framework (SPFx) версии 1.16 добавлена поддержка клиентского пакета SDK JavaScript для Microsoft Teams версии 2. Клиентский пакет SDK JavaScript для Microsoft Teams версии 2 предоставляет возможность запуска приложений Teams в Outlook в Office в дополнение к Microsoft Teams.

Благодаря этому улучшению в SPFx версии 1.16 разработчики теперь могут использовать SPFx для создания приложений для Outlook и Office, используя существующую поддержку создания приложений для Microsoft Teams.

Важно!

Возможность запуска приложений Microsoft Teams в Outlook и Office в настоящее время находится в бета-версии с ожидаемой доступностью в первой половине календарного года 2023 года.

Важно!

Необходимые сведения, необходимые для успешного выполнения пользователем

Чтобы протестировать приложения Microsoft Teams в Outlook и Office, включая приложения, созданные с помощью SPFx, необходимо настроить параметры выпуска клиента Microsoft 365 для целевого выпуска. Дополнительные сведения об изменении параметров выпуска в организации см . в разделе Настройка параметров стандартного или целевого выпуска.

Настройка выпуска клиента вступает в силу в течение 5 рабочих дней. Иными словами, измените клиент со стандартной дорожки выпуска на целевую версию 5-го числа месяца. Вы не сможете тестировать приложения Microsoft Teams, созданные с помощью SPFx в Outlook или Office, до 11 числа месяца.

Создание приложений Microsoft Teams для Outlook и Office

Чтобы создать новое приложение Microsoft Teams с SPFx для Outlook и Office, сначала создайте проект SPFx с помощью генератора Yeoman для SharePoint версии 1.16 или более поздней версии так же, как и новая веб-часть. Дополнительные сведения см. в статье Создание первой клиентской веб-части SharePoint.

Генератор Yeoman для SharePoint предложит вам ответить на ряд вопросов. При ответе на эти вопросы следуйте тем же рекомендациям по созданию новой веб-части SPFx.

После создания проекта обновите свойство веб-части supportedHosts , чтобы указать, где его можно использовать. Например, добавьте TeamsTab и/или TeamsPersonalApp в свойство te supportedHosts в файле ./config/package-solution.json . Дополнительные сведения см. в статье Создание вкладок Microsoft Teams с помощью SharePoint Framework.

Определение текущего узла среды выполнения для приложения

Приложению может потребоваться определить, где оно работает в настоящее время по разным причинам. Например, должны ли пользователи видеть один интерфейс, если он работает в SharePoint, Microsoft Teams, Outlook или другом клиенте Office?

Используйте свойство SPFx context в классе веб-части и клиенте JavaScript Microsoft Teams для определения клиента размещения. Свойство app.host.name в клиенте Teams JavaScript содержит имя узла, если это Microsoft Teams, Outlook или Office. Если объект контекста Microsoft Teams — undefined, веб-часть выполняется в SharePoint.

// if running in Microsoft Teams, Outlook, or Office...
if (!!this.context.sdks.microsoftTeams) {
  const teamsContext = await this.context.sdks.microsoftTeams.teamsJs.app.getContext();
  switch (teamsContext.app.host.name.toLowerCase()) {
    case 'teams': // this is the host name for the "classic" Teams client
    case 'teamsmodern': // this is the host name for the "new" Teams client
      // RUNNING IN MICROSOFT TEAMS
    case 'office':
      // RUNNING IN OFFICE / OFFICE.COM
    case 'outlook':
      // RUNNING IN OUTLOOK
    default:
      throw new Error('Unknown host');
  }
} else {
  // RUNNING IN SHAREPOINT
}

Создание пакета манифеста & приложения Microsoft Teams

Хотя кнопка Синхронизировать каталог приложений SharePoint Online с Teams может автоматически создать манифест приложения Microsoft Teams, пакет приложения и установить его в магазине Microsoft Teams, в настоящее время это не поддерживает требуемый формат файла манифеста приложения Microsoft Teams. Файл манифеста приложения Teams должен иметь версию 1.13 или более позднюю.

Другой вариант — вручную создать манифест приложения и пакет приложения и включить их в пакет SharePoint, отправленный в каталог приложений. При нажатии кнопки Синхронизировать с Teams в каталоге приложений SharePoint Online будет использовать пакет приложения Teams, который вы создали и включили в пакет SharePoint.

Примечание.

Дополнительные сведения о создании манифестов и пакетов приложений Microsoft Teams вручную см. в разделе Варианты развертывания SharePoint Framework решений для Microsoft Teams.

Создание манифеста приложения Microsoft Teams

Первым шагом является создание манифеста приложения Microsoft Teams.

  1. Создайте следующий файл в проекте SPFx: ./teams/manifest.json.
  2. Следуйте инструкциям в статье Microsoft Teams: схема манифеста приложения для Teams и SharePoint Framework: параметры развертывания для SharePoint Framework решений для Microsoft Teams, чтобы создать файл манифеста приложения.
  3. Обратите особое внимание на следующие свойства в файле manifest.json :
    • manifestVersion: должно быть установлено значение 1.13 или выше.

    • staticTabs и (или configurableTabs) : убедитесь, что это соответствует рекомендациям по использованию веб-части SPFx в качестве вкладки Microsoft Teams.

      Например, свойство и любое другое contentUrl свойство, ссылающееся на компоненты SPFx, должны использовать динамические маркеры {teamSiteDomain}, {teamSitePath}, &{locale}. Он также должен ссылаться на идентификатор компонента SPFx.

      Совет

      Дополнительные сведения об этих свойствах см. в разделе SharePoint Framework: Параметры развертывания для SharePoint Framework решений для Microsoft Teams, а именно в разделе Динамические ссылки на базовые URL-адреса сайтов SharePoint.

Примечание.

Дополнительные сведения о файле манифеста приложения Microsoft Teams см. в статье Microsoft Teams: схема манифеста приложения для Teams.

Создание пакета приложения Microsoft Teams

После создания манифеста приложения Microsoft Teams необходимо вручную создать пакет приложения. Он будет включен в файл пакета SharePoint (*.sppkg), который вы отправите в каталог приложений клиента SharePoint.

  1. Сжать содержимое папки ./teams в проекте.
  2. Переименуйте ZIP-пакет в TeamsSPFxApp.zip.

Важно!

Пакет приложения Microsoft Teams должен иметь имяTeamsSPFxApp.zip и сохранить его в папке ./teams , чтобы этот параметр работал с кнопкой Синхронизация с Teams в каталоге приложений клиента.

Развертывание приложения Microsoft Teams на основе SPFx

После создания пакета приложения следующим шагом является его развертывание и установка.

Разверните приложение в каталоге приложений клиента.

Затем выберите приложение, перейдите на вкладку Файлы на ленте и нажмите кнопку Синхронизировать с Teams , чтобы развернуть пакет приложения в магазине Microsoft Teams вашего клиента.

Примечание.

Дополнительные сведения об упаковке & пакетов SharePoint в App Store Microsoft Teams см. в разделе SharePoint Framework: Варианты развертывания SharePoint Framework решений для Microsoft Teams.

Теперь, когда вы развернули приложение в SharePoint, вы можете добавить его в качестве веб-части на страницу на сайтах SharePoint:

Панель мониторинга ведущего помощника Microsoft Teams в SharePoint

Приложение также можно установить в Microsoft Teams. После входа в систему выберите пункт Приложения в области вертикальной навигации слева.

Обратите внимание, что ваши приложения перечислены в разделе Сборка для организации :

Панель мониторинга ведущего помощника Microsoft Teams — добавление параметров приложения в Teams

После установки приложения оно появится в левой вертикальной навигации в виде закрепленного приложения:

Панель мониторинга microsoft Teams Lead Assistant — добавление установленного приложения Teams

Пример приложения Microsoft Teams — панель мониторинга поддержки потенциальных пользователей

Для установки приложения в Outlook можно выполнить тот же процесс, что и в Microsoft Teams.

Совет

Дополнительные сведения см. в примере панели мониторинга потенциальных пользователей React Teams, в котором используется SPFx для создания приложения Microsoft Teams для Outlook и Office.