Создание вкладок Microsoft Teams с помощью SharePoint Framework
Начиная с SharePoint Framework версии 1.8, вы можете создавать вкладки для Microsoft Teams с помощью средств SharePoint Framework и использовать SharePoint в качестве узла для своих решений. В рамках SharePoint Framework версии 1.10 вы также можете опубликовать решение как личное приложение Microsoft Teams.
Ниже перечислены преимущества использования SharePoint Framework в качестве платформы для вкладок Microsoft Teams.
- Модель разработки похожа на SharePoint Framework веб-частей
- Любая веб-часть может быть предоставлена как вкладка или личное приложение в Microsoft Teams
- Различные параметры области для предоставления пользовательской вкладки в качестве веб-части и вкладки в клиенте
- Ваша вкладка будет выполняться в контексте базового сайта SharePoint для определенной команды. Это означает, что вы сможете воспользоваться любыми конкретными наборами API SharePoint и функциональными возможностями в вашей веб-части.
Процесс разработки
Вы можете начать разработку вкладок Microsoft Teams просто с помощью пакетов SharePoint Framework 1.8 или более поздних версий. Ниже приведены общие шаги по началу работы.
Примечание.
Ознакомьтесь с подробными инструкциями, чтобы приступить к работе на вкладке Создание Microsoft Teams с помощью SharePoint Framework — руководство, содержащее дополнительные важные сведения, которые необходимо выполнить.
Создание решения SharePoint Framework с помощью клиентской веб-части
Добавьте
"TeamsTab"
вsupportedHosts
свойство манифеста веб-части, чтобы использовать его в качестве вкладки в канале:"supportedHosts": ["SharePointWebPart", "TeamsTab"],
Добавьте
"TeamsPersonalApp"
вsupportedHosts
свойство манифеста веб-части, чтобы использовать его в качестве личного приложения:"supportedHosts": ["SharePointWebPart", "TeamsPersonalApp"],
Развертывание веб-части с помощью параметра развертывания на уровне клиента в каталоге приложений SharePoint
Активируйте развернутое решение SharePoint Framework и нажмите кнопку Синхронизировать с Teams в каталоге приложений.
Параметры развертывания
Существует несколько вариантов развертывания вкладки Microsoft Teams или в качестве личного приложения. Как и SharePoint, Microsoft Teams имеет собственный каталог приложений, поэтому развертывание требует использования обоих сервисов. Видимость новых функциональных возможностей можно контролировать с помощью шагов развертывания.
Развертывание клиента
Вы можете использовать кнопку Синхронизация с Teams на ленте Каталога приложений, чтобы автоматически создать манифест приложения Microsoft Teams, пакет приложения и установить его в магазине Microsoft Teams. Это сделает решение доступным для всех пользователей в клиенте и командах Microsoft Teams.
Разработчики также могут определить содержимое манифеста приложения Microsoft Teams и пакета приложения. Варианты развертывания см. в разделе Варианты развертывания для SharePoint Framework решений для Microsoft Teams.
Альтернативные варианты развертывания
Существует альтернативный способ развертывания решения, который, например, позволяет сделать решение доступным только для одной конкретной команды в вашем клиенте.
Создайте решение SharePoint Framework обычным способом:
gulp bundle --ship gulp package-solution --ship
Найдите папку ./teams в папке проекта:
Добавьте пакет приложения Microsoft Teams, как описано в разделе Параметры развертывания для SharePoint Framework решений для Microsoft Teams в папку ./teams.
Добавьте решение в каталог приложений и убедитесь, что выберите параметр Сделать это решение доступным для всех сайтов в организации , прежде чем нажать кнопку Развернуть.
Боковая загрузка внешних приложений в Teams
Перейдите к экземпляру Microsoft Teams, выбрав Teams в окне запуска приложений:
Выберите команду, которую вы хотите использовать для тестирования возможностей, и выберите Управление командой в
...
меню:Перейдите на вкладку Приложения .
Выберите Отправить пользовательское приложение в правом нижнем углу.
Примечание.
Если этот параметр недоступен, сторонняя загрузка не активирована для клиента, который вы используете. Еще раз проверьте параметры в интерфейсе администратора клиента.
Отправьте созданный ранее файл манифеста приложения Microsoft Teams из папки ./teams в созданное решение и убедитесь, что он правильно отображается в списке приложений. Обратите внимание, что пользовательское изображение отображается вместе с описанием решения:
Перейдите к каналу в команде, куда вы отправили решение. На следующем рисунке обратите внимание, что мы активировали общий канал в Команде.
Выберите +, чтобы добавить новую вкладку в канал.
Выберите настраиваемую вкладку MyFirstTeamTab в списке:
Обратите внимание, как можно настроить экземпляр вкладки с помощью доступных свойств в веб-части. Нажмите кнопку Сохранить:
Определяем, находится ли веб-часть в контексте Teams
Контекст страницы в веб-части содержит ссылку на пакет SDK для JavaScript для Teams, что позволяет легко получить доступ к контексту Teams при отображении веб-части в виде вкладки.
this.context.sdks.microsoftTeams.teamsJs.app.getContext()
Примечание.
Дополнительные сведения о контексте вкладки Microsoft Teams см. в документации по разработке Microsoft Teams.
Важно!
Процесс получения контекста Microsoft Teams с помощью API SPFx несколько раз изменялся с течением времени. Например, вы можете быть знакомы со следующими свойствами, которые возвращают контекст Microsoft Teams:
- Свойство
this.context.microsoftTeams
было нерекомендуемо в выпуске SharePoint Framework версии 1.10. - Свойство
this.context.sdks.microsoftTeams
было нерекомендуемо в выпуске SharePoint Framework версии 1.16.
Какую версию пакета SDK для клиента JavaScript для Teams следует использовать?
SharePoint Framework предоставляет доступ к экземпляру и контексту клиентского пакета SDK для Teams JavaScript с помощью sdks.microsoftTeams.teamsJs.app.getContext()
метода в API контекста.
Использование этого API гарантирует загрузку и инициализацию поддерживаемой версии пакета SDK для клиента JavaScript для Teams.
Несколько деталей, которые следует иметь в виду:
- Установка и инициализация пользовательских версий клиентского пакета SDK для Teams JavaScript не поддерживается. Это применимо к любому компоненту SPFx, включая веб-части, расширения, адаптивные карточки и библиотеки.
- Хотя типы клиентских пакетов SDK Для Teams JavaScript привязаны к версии SPFx, используемой в решении, фактическая версия, загруженная в клиент, может отличаться. Мы гарантируем обратную совместимость. Например, решение, созданное с помощью SPFx 1.14, будет иметь типы из клиентского пакета SDK JavaScript для Teams версии 1.10.0, а SPFx версии 1.15.2 будет иметь типы из клиентского пакета SDK JavaScript для Teams версии 1.12.1, но фактически загруженной версией клиента Teams JavaScript может быть версия 2.1.0.