Создание вкладок 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 — руководство, содержащее дополнительные важные сведения, которые необходимо выполнить.

  1. Создание решения SharePoint Framework с помощью клиентской веб-части

  2. Добавьте "TeamsTab" в supportedHosts свойство манифеста веб-части, чтобы использовать его в качестве вкладки в канале:

    "supportedHosts": ["SharePointWebPart", "TeamsTab"],
    
  3. Добавьте "TeamsPersonalApp" в supportedHosts свойство манифеста веб-части, чтобы использовать его в качестве личного приложения:

    "supportedHosts": ["SharePointWebPart", "TeamsPersonalApp"],
    
  4. Развертывание веб-части с помощью параметра развертывания на уровне клиента в каталоге приложений SharePoint

  5. Активируйте развернутое решение SharePoint Framework и нажмите кнопку Синхронизировать с Teams в каталоге приложений.

Параметры развертывания

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

Развертывание клиента

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

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

Альтернативные варианты развертывания

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

  1. Создайте решение SharePoint Framework обычным способом:

    gulp bundle --ship
    gulp package-solution --ship
    
  2. Найдите папку ./teams в папке проекта:

    Структура решения

  3. Добавьте пакет приложения Microsoft Teams, как описано в разделе Параметры развертывания для SharePoint Framework решений для Microsoft Teams в папку ./teams.

  4. Добавьте решение в каталог приложений и убедитесь, что выберите параметр Сделать это решение доступным для всех сайтов в организации , прежде чем нажать кнопку Развернуть.

Боковая загрузка внешних приложений в Teams

  1. Перейдите к экземпляру Microsoft Teams, выбрав Teams в окне запуска приложений:

    ZIP-архив в проводнике

  2. Выберите команду, которую вы хотите использовать для тестирования возможностей, и выберите Управление командой в ... меню:

    Управление командой

  3. Перейдите на вкладку Приложения .

  4. Выберите Отправить пользовательское приложение в правом нижнем углу.

    Примечание.

    Если этот параметр недоступен, сторонняя загрузка не активирована для клиента, который вы используете. Еще раз проверьте параметры в интерфейсе администратора клиента.

  5. Отправьте созданный ранее файл манифеста приложения Microsoft Teams из папки ./teams в созданное решение и убедитесь, что он правильно отображается в списке приложений. Обратите внимание, что пользовательское изображение отображается вместе с описанием решения:

    Отправка приложения

  6. Перейдите к каналу в команде, куда вы отправили решение. На следующем рисунке обратите внимание, что мы активировали общий канал в Команде.

    Активированный канал

  7. Выберите +, чтобы добавить новую вкладку в канал.

  8. Выберите настраиваемую вкладку MyFirstTeamTab в списке:

    Добавьте вкладку

  9. Обратите внимание, как можно настроить экземпляр вкладки с помощью доступных свойств в веб-части. Нажмите кнопку Сохранить:

    Вкладка

Определяем, находится ли веб-часть в контексте Teams

Контекст страницы в веб-части содержит ссылку на пакет SDK для JavaScript для Teams, что позволяет легко получить доступ к контексту Teams при отображении веб-части в виде вкладки.

this.context.sdks.microsoftTeams.teamsJs.app.getContext()

Примечание.

Дополнительные сведения о контексте вкладки Microsoft Teams см. в документации по разработке Microsoft Teams.

Важно!

Процесс получения контекста Microsoft Teams с помощью API SPFx несколько раз изменялся с течением времени. Например, вы можете быть знакомы со следующими свойствами, которые возвращают контекст Microsoft Teams:

Какую версию пакета 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.

Дополнительные ресурсы