Расширение 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.
- Создайте следующий файл в проекте SPFx: ./teams/manifest.json.
- Следуйте инструкциям в статье Microsoft Teams: схема манифеста приложения для Teams и SharePoint Framework: параметры развертывания для SharePoint Framework решений для Microsoft Teams, чтобы создать файл манифеста приложения.
- Обратите особое внимание на следующие свойства в файле 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.
- Сжать содержимое папки ./teams в проекте.
- Переименуйте 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. После входа в систему выберите пункт Приложения в области вертикальной навигации слева.
Обратите внимание, что ваши приложения перечислены в разделе Сборка для организации :
После установки приложения оно появится в левой вертикальной навигации в виде закрепленного приложения:
Для установки приложения в Outlook можно выполнить тот же процесс, что и в Microsoft Teams.
Совет
Дополнительные сведения см. в примере панели мониторинга потенциальных пользователей React Teams, в котором используется SPFx для создания приложения Microsoft Teams для Outlook и Office.