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


Создание приложений для этапа собрания Teams

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

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

Общий доступ к содержимому на этапе и экран для собраний — это функции, которые расширяют возможности обмена данными в Teams. Общий доступ к сцене позволяет пользователям предоставлять общий доступ к приложению на этапе собрания из боковой панели собрания в текущем собрании. Демонстрация содержимого с экрана для собраний позволяет пользователям делиться содержимым на этапе собрания в Teams с помощью архитектуры совместного использования экрана.

В следующей таблице перечислены сценарии использования функций "Общий доступ к экрану" и "Общий доступ к сценарию".

Функция Общий доступ к сцене Демонстрация содержимого экрана для этапа
Уровень взаимодействия Позволяет участникам взаимодействовать с содержимым. Режим "Только просмотр" приложения или содержимого.
Scenarios Совместная работа, например доска. Сценарии совместного использования, такие как просмотр панелей мониторинга в собрании scrum.
Усилия разработчика Требуется больше усилий. Цель заключается в сокращении усилий разработчиков по переносу приложения или содержимого на этап собрания.
Логика реализации Подходит для небольших собраний. Подходит для собраний большего размера или если только один пользователь имеет лицензию premium.

Общий доступ к сцене

Совместное использование на этапе позволяет пользователям предоставлять общий доступ к приложению на этапе собрания с боковой панели собрания в текущем собрании. Этот общий доступ является интерактивным и совместным по сравнению с пассивным демонстрацией экрана.

Чтобы вызвать общий доступ к сцене, пользователи могут щелкнуть значок Поделиться на сцену в правом верхнем углу боковой панели собрания. Значок "Поделиться в стадию" является собственным для клиента Teams, и при его выборе все приложение предоставляется на этапе собрания.

Манифест приложения

Чтобы предоставить общий доступ к приложению этапу собрания, необходимо настроить разрешения контекста и разрешения на согласие для конкретных ресурсов (RSC) в манифесте приложения:

  1. Обновите context свойство в манифесте приложения следующим образом:

    "context": [
      "meetingSidePanel",
      "meetingStage"
    ]
    
  2. Получите разрешения RSC, настроив authorization свойство и name и type в resourceSpecific поле следующим образом:

    "authorization": {
      "permissions": {
        "resourceSpecific": [
          {
            "name": "MeetingStage.Write.Chat",
            "type": "Delegated"
          }
        ]
      }
    }
    

API-интерфейсы расширенного общего доступа для промежуточного использования

Существует множество сценариев, в которых общий доступ ко всему приложению на стадии собрания не так полезен, как предоставление общего доступа к определенным частям приложения:

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

  2. Для медицинского приложения, врач может захотеть поделиться только рентгеновским снимка на экране с пациентом, а не делиться всем приложением со всеми записями пациентов или результатами и т. д.

  3. Пользователю может потребоваться предоставить общий доступ к содержимому от одного поставщика содержимого за один раз (например, YouTube), а не предоставлять доступ ко всему каталогу видео на сцене.

Чтобы помочь пользователям в таких сценариях, API-интерфейсы в клиентской библиотеке JavaScript Microsoft Teams (TeamsJS) позволяют программно вызывать общий ресурс для этапа для определенных частей приложения с помощью кнопки на боковой панели собрания.

На следующем рисунке показан параметр "Поделиться на стадию" в классическом клиенте Teams:

Снимок экрана: представление stageview для общего доступа к собранию.

Используйте следующие API для предоставления общего доступа к определенной части приложения:

Метод Описание Source
Делитесь содержимым приложения на сцене Предоставление доступа к определенным частям приложения на стадии собрания с боковой панели собрания в собрании. Библиотека TeamsJS
Получить состояние обмена сцены содержимого приложения Получить информацию о состоянии общего доступа к приложению на сцене собрания. Библиотека TeamsJS
Получить возможности обмена сцены содержимого приложения Получите возможности приложения для совместного использования на сцене собрания. Библиотека TeamsJS

API shareAppContentToStage позволяет вам делиться определенными частями вашего приложения на сцене собрания. API доступен через библиотеку TeamsJS.

Массив validDomains должен разрешать внутренний appContentUrl manifest.json. В противном случае API возвращает ошибку 501.

Следующий код является примером shareAppContentToStage API:

const appContentUrl = "https://www.bing.com/";

microsoftTeams.meeting.shareAppContentToStage((err, result) => {
    if (result) {
        // handle success
    }
    if (err) {
        // handle error
    }
}, appContentUrl);

Параметр запроса

В следующей таблице приведены параметры запроса:

Значение Тип Обязательный Описание
callback String Да Обратный вызов содержит два параметра, ошибку и результат. Ошибка может содержать ошибку типа SdkError или null при успешном использовании общего доступа. Результат может содержать значение true, если общий ресурс успешно выполнен, или значение NULL при сбое общего ресурса.
appContentURL String Да URL-адрес, к которому предоставлен общий доступ к сцене.
shareOptions Объект Нет Определяет дополнительные параметры общего доступа.
shareOptions.sharingProtocol Перечисление Нет Протокол совместного использования экрана. Поддерживаемые значения: Collaborative и ScreenShare. Значение по умолчанию: Collaborative.

Демонстрация содержимого с экрана для собраний

Примечание.

  • Сеанс общего доступа могут инициировать только пользователи в клиенте, гостевые и внешние пользователи с ролью докладчика или организатора.
  • Общий доступ к сцене с помощью общего доступа к экрану не поддерживается в Mac, классической Teams, мобильных устройствах, веб-приложениях и VDI.

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

Снимок экрана: пример представления этапа собрания для докладчика слева и для аудитории справа.

Демонстрация содержимого с экрана на этапе собрания упрощает общий доступ к содержимому приложений во время собраний и обеспечивает простой просмотр в нескольких проигрывателях. Давайте рассмотрим варианты использования функции:

Для разработчиков Для пользователей
Скоординированная презентация содержимого. Теперь вы можете демонстрировать координированное содержимое нескольким участникам на более крупном этапе, переходя за пределы боковой панели фиксированной ширины. Эта расширенная видимость привлекает больше внимания и тесно интегрируется с жизненным циклом собрания. Контекстное использование инструментов. Пользователи могут легко использовать свои любимые инструменты в контексте текущего взаимодействия. Это сводит к минимуму переключение контекста и улучшает результаты собраний.
Стандартный общий доступ к приложениям. Базовый общий доступ ко всему приложению доступен из коробки, не требуя дополнительных инвестиций от вас. Такой упрощенный подход упрощает процесс совместного использования содержимого. Отображение встроенного содержимого. Содержимое отображается в окне собрания, обеспечивая удобный доступ для всех участников. Нет необходимости уходить из беседы.
Расширенные API-интерфейсы для общего доступа к конкретному содержимому. Существующие API-интерфейсы "Общий доступ к этапу" расширены, чтобы обеспечить общий доступ к определенному содержимому через протокол демонстрации экрана. Теперь вы можете настроить общий доступ к содержимому в соответствии с конкретными вариантами использования. Кнопка "Общий доступ" на боковых панелях собрания. Пользователи с этими ролями могут инициировать общий доступ к содержимому непосредственно на боковых панелях собрания. Это позволяет выступающим эффективно взаимодействовать с аудиторией.
Поддержка "Прямая ссылка" и кнопка "Поделиться на собрании". Используйте протокол общего доступа к экрану для предоставления общего доступа к содержимому с помощью глубоких ссылок или кнопки "Поделиться на собрании". Такая гибкость обеспечивает беспроблемную работу пользователей. Участники могут начать общий доступ к содержимому через прямую ссылку или с помощью кнопки "Поделиться на собрании". Вы предоставляете оба варианта, что обеспечивает беспроблемную работу.

Пользователи могут экранировать общий доступ к содержимому на стадии собрания в следующих сценариях:

  • Общий доступ ко всему приложению. Когда вы предоставляете общий доступ к вкладке на стадии собрания в Собрании Teams, contentUrl связанная с вкладкой отображает новое окно для приложения и экранных общих папок, которое открывается всем остальным участникам собрания. Свойство page.frameContext в объекте getContext имеет значение meetingStage , чтобы сообщить приложению о том, что оно отображается на большой поверхности, что позволяет приложению соответствующим образом обновить свое содержимое.

    Примечание.

    Приложения, которые указывают MeetingStage в свойстве page.frameContextgetContext объекта в манифесте и объявляют MeetingStage.Write.Chat разрешения, поддерживают совместную инфраструктуру Share to Stage. Кнопка "Поделиться" инициирует существующий протокол совместной работы, а не протокол общего доступа к экрану.

  • Предоставление доступа к определенным частям приложения на этапе собрания. Укажите соответствующий протокол совместного appContentURLиспользования вместе с .

Следующий код является примером предоставления общего доступа к содержимому приложения в представлении этапа собрания и совместного использования содержимого в режиме просмотра только в режиме демонстрации экрана:

   // Share the content to meeting stage view.
    const shareSpecificAppContent = (partName) => {
        var appContentUrl = "";
        microsoftTeams.app.getContext().then((context) => {
            appContentUrl = partName == 'todo' ? `${window.location.origin}/todoView?meetingId=${context.meeting.id}` : partName == 'doing' ? `${window.location.origin}/doingView?meetingId=${context.meeting.id}` : `${window.location.origin}/doneView?meetingId=${context.meeting.id}`;
            microsoftTeams.meeting.shareAppContentToStage((err, result) => {
                if (result) {
                    // handle success
                    console.log(result);
                }

                if (err) {
                    // handle error
                    alert(JSON.stringify(err))
                }
            }, appContentUrl);
        });
    };
Значение Тип Обязательный Описание
callback String Да Обратный вызов содержит два параметра, ошибку и результат. Ошибка может содержать ошибку типа SdkError или null при успешном использовании общего доступа. Результат может содержать значение true, если общий ресурс успешно выполнен, или значение NULL при сбое общего ресурса.
appContentURL String Да URL-адрес, к которому предоставлен общий доступ к сцене.
shareOptions Объект Нет Определяет дополнительные параметры общего доступа.
shareOptions.sharingProtocol Перечисление Нет Протокол совместного использования экрана. Поддерживаемые значения: Collaborative и ScreenShare. Значение по умолчанию: Collaborative.

Дополнительные сведения о параметрах см. в статье shareAppContentToStage.

Примечание.

Если для свойства задано screenShareзначение sharingProtocol , указывать в объекте getContext манифеста не нужноMeetingStage. Разрешения Resource-Specific согласия (RSC) требуются в манифесте приложения для shareAppContentToStage API независимо от используемого sharingProtocol значения.

Сценарии

Сценарий Пример
Приложение для включения продаж Фиби( Phoebe), представитель компании Contoso, закрепляет приложение sales enablement для своей предстоящей встречи с Николетт, VP отдела кадров в NorthWest. Во время собрания Фиби открывает боковую панель приложения Sales enablement и видит список предварительно подготовленных содержимого, которым он может поделиться на собрании, чтобы помочь ему в продаже. Николетт может использовать содержимое в окне собрания Teams и задавать вопросы на основе показанного содержимого.
Contoso Cloud Board Demet, технический менеджер программ в Компании Contoso, помогает проводить ежедневные собрания различных команд в организации. Для каждой схватки он закрепляет соответствующую pod доску в качестве вкладки для собрания standup. Во время собрания он открывает боковую панель приложения Contoso и нажимает кнопку Поделиться, указанную на боковой панели. Это позволяет доске взять на себя этап собрания для всех участников таким образом, чтобы все просматривали одну доску. По мере того как каждый участник делится своими обновлениями, Demet вносит соответствующие изменения в доске спринта, которые затем отражаются для всех остальных участников.

Преимущества

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

Получение содержимого приложения на боковой панели собрания

sharing.history.getContent API позволяет получить содержимое, к которым предоставлен общий доступ на собрании, и отобразить его на боковой панели собрания.

Когда собрание начинается, приложение, в котором предоставляется общий доступ к содержимому, автоматически открывает боковую панель собрания для пользователя, который предоставил общий доступ к содержимому. Вы можете вызвать sharing.history.getContent API, чтобы получить список общего содержимого и отобразить его на боковой панели, что делает его доступным. Для предстоящего повторяющегося собрания, где приложение уже добавлено, разработчики могут вызвать API, чтобы получить последнее содержимое, которое будет отображаться на боковой панели приложения.

Следующий код является примером для получения общего содержимого на боковой панели собрания:

// Define an async function
async function fetchContentDetails() {
    // Fetches a list of content details that was shared in the meeting
    const contentDetails = await microsoftTeams.sharing.history.getContent();

    // Above content details can be used to hydrate the meeting side panel 
    // to share to meeting stage

}

Параметры полезных данных ответа

В следующей таблице приведены параметры полезных данных ответа:

Значение Тип Обязательный Описание
appId String Да Идентификатор приложения, к которым требуется предоставить доступ.
title String Да Заголовок общего содержимого.
contentReference String Да Ссылка на содержимое общего содержимого.
threadId String Да Идентификатор беседы, в которой был предоставлен общий доступ к содержимому.
author String Да Идентификатор пользователя, который предоставил общий доступ к содержимому.
contentType String Да Тип общего содержимого. Для предоставления общего доступа к сценическим сценариям Teams это значение должно иметь значение ShareToStage.

Коды ответа

В следующей таблице приведены коды ответов:

Код ответа Описание
200 Сведения о содержимом собрания успешно получены.
500 Внутренняя ошибка.
501 API не поддерживается в текущем контексте.

Дополнительные сведения см. в разделе sharing.history.getContent.

Создание приложения для подписывания документов на собрании

Вы можете создать приложение на собрании, позволяющее участникам собрания подписывать документы в режиме реального времени. Это упрощает проверку и подписывание документов в одном сеансе. Участники могут подписывать документы с помощью текущего удостоверения клиента.

Приложение для подписи на собрании можно использовать для:

  • Добавление документов для проверки во время собрания.
  • Предоставление общего доступа к документам для проверки на main этапе.
  • Подписывая документы, используя удостоверение подписывателя.

Участники могут просматривать и подписывать документы, такие как соглашения о покупке и заказы на покупку.

Снимок экрана: приложение для подписывания документов на собрании

Во время собрания могут быть задействованы следующие роли участников:

  • Создатель документа. Эта роль может добавлять собственные документы для проверки и подписания.
  • Подписыватель: эта роль может подписывать проверенные документы.
  • Читатель. Эта роль может просматривать документы, добавленные на собрание.

Пример кода

Название примера Описание .NET Node.js Манифест
Пример сцены собрания В этом примере приложения показана вкладка на этапе собрания для совместной работы. В этом примере также используется пакет SDK Live Share для совместной работы Stageview. Просмотр Просмотр Просмотр
Уведомление на собрании Демонстрирует реализацию уведомлений о собраниях с помощью бота. Просмотр Просмотр Просмотр
Подписывание документов на собрании В этом примере приложения показано, как реализовать приложение Teams для подписывания документов. Включает предоставление общего доступа к определенному содержимому приложения для stage, единого входа Teams и пользователя Stageview. Просмотр Недоступно Недоступно
Демонстрация содержимого экрана для этапа В этом примере приложения показано, как предоставить общий доступ к содержимому на этапе собрания в Teams с помощью архитектуры совместного использования экрана. Просмотр Недоступно Недоступно

Пошаговые инструкции

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

См. также