На этой странице описано, как продвигать надстройку среди пользователей при совместном использовании вкладки с помощью Google Meet, размещая небольшой объем кода на другой веб-странице.
Метод exposeToMeetWhenScreensharing()
позволяет сайту отправлять информацию в Meet, когда его вкладка открыта для общего доступа к экрану. Эта информация используется при работе надстройки с Meet, когда пользователь нажимает «Начать действие» на баннере презентации, если надстройка у него установлена. Если у пользователя не установлена надстройка, когда он демонстрирует вкладку на экране, ему будет предложено установить надстройку.
Объект AddonScreenshareInfo
содержит пять свойств, которые можно добавить в зависимости от варианта использования:
additionalData
: информация, которую надстройка может использовать для своей инициализации. Может быть установлен только в том случае, если свойствоstartActivityOnOpen
имеет значение true и доступно с помощьюActivityStartingState
. Дополнительные сведения см. в разделе Получение начального состояния действия .cloudProjectNumber
: обязательный. Номер вашего проекта Google Cloud.mainStageUrl
: URL-адрес, который открывается основной сцене после запуска надстройки, напримерhttps://www.example.com
. URL-адрес должен принадлежать тому же источнику , что и URL-адреса, указанные в манифесте надстройки.sidePanelUrl
: URL-адрес, который открывается боковой панели после запуска надстройки, напримерhttps://www.example.com
. URL-адрес должен принадлежать тому же источнику , что и URL-адреса, указанные в манифесте надстройки.startActivityOnOpen
: Обязательно. Следует ли запускать надстройку активности в Meet сразу, когда пользователь запускает надстройку из баннера презентации. Должно иметь значение true, если используется свойствоmainStageUrl
.
Установите и импортируйте SDK
Вы можете получить доступ к SDK с помощью npm или gstatic.
НПМ (рекомендуется)
Если в вашем проекте используется npm, вы можете следовать инструкциям для пакета npm Meet Add-ons SDK .
Сначала установите пакет npm:
npm install @googleworkspace/meet-addons
После этого SDK дополнений Meet станет доступен путем импорта интерфейса MeetAddonScreenshareExport
:
import {meet} from '@googleworkspace/meet-addons/meet.addons.screenshare';
Для пользователей TypeScript определения TypeScript поставляются вместе с модулем.
gstatic
SDK надстроек Google Meet доступен в виде пакета JavaScript из gstatic
— домена, который предоставляет статический контент.
Чтобы использовать SDK дополнений Meet, добавьте в свое приложение следующий тег сценария:
<script src="https://www.gstatic.com/meetjs/addons/1.1.0/meet.addons.screenshare.js"></script>
SDK Meet Add-ons доступен через интерфейс MeetAddon
по адресу window.meet.addon
.
Пример: загрузка боковой панели без запуска действия.
В следующем примере кода экран пользователя использует общую страницу с надстройкой, которая должна настроить права доступа к ресурсам, прежде чем можно будет запустить действие. В связи с этим требованием надстройка должна запускаться в боковой панели, без запуска активности для всех.
<script>
meet.addon.screensharing.exposeToMeetWhenScreensharing(
{
cloudProjectNumber: CLOUD_PROJECT_NUMBER,
startActivityOnOpen: false,
sidePanelUrl: SIDE_PANEL_URL,
}
);
</script>
Замените следующее:
- CLOUD_PROJECT_NUMBER : строка. Номер вашего облачного проекта.
- SIDE_PANEL_URL : строка. URL-адрес боковой панели.
Когда пользователь на экране вызова Meet делится страницей, он видит баннер презентации в Meet. Нажатие кнопки на баннере открывает дополнение для данного номера облачного проекта на боковой панели. Поскольку для свойства startActivityOnOpen
установлено значение false, кнопка запуска действия отключена до тех пор, пока не будет установлено ActivityStartingState
. Дополнительные сведения см. в разделе Использование начального состояния действия .
После запуска действия другим пользователям, участвующим в вызове, будет предложено либо запустить, либо установить надстройку.
Образец дополнения «Анимация» на GitHub включает этот пример как часть полноценного дополнения. Когда отображается индексная страница веб-приложения, связанного с надстройкой, представляющему пользователю предлагается либо установить, либо настроить надстройку.
Пример: Загрузка в основной сцене
В следующем примере кода пользователю, который поделился веб-страницей в Meet, содержащей следующий код, предлагается запустить надстройку:
<script>
meet.addon.screensharing.exposeToMeetWhenScreensharing(
{
cloudProjectNumber: CLOUD_PROJECT_NUMBER,
startActivityOnOpen: true,
mainStageUrl: MAIN_STAGE_URL,
additionalData: "{\"selected_item\": \"42\"}",
}
);
</script>
Замените следующее:
- CLOUD_PROJECT_NUMBER : строка. Номер вашего проекта Google Cloud.
- MAIN_STAGE_URL : строка. URL-адрес основной сцены.
Когда пользователь на экране вызова Meet делится страницей, он видит баннер презентации в Meet. При нажатии кнопки на баннере на главной стадии открывается надстройка для данного номера облачного проекта. Свойство mainStageUrl
загружается, а свойство additionalData
используется для установки начального состояния активности надстройки. Другим участвующим в звонке пользователям сразу будет предложено установить или запустить надстройку.
Пример: Загрузка в боковую панель
В следующем примере кода пользовательский экран использует общую страницу с надстройкой, которая хочет запускаться на боковой панели, а не на основной сцене:
<script>
meet.addon.screensharing.exposeToMeetWhenScreensharing(
{
cloudProjectNumber: CLOUD_PROJECT_NUMBER,
startActivityOnOpen: true,
sidePanelUrl: SIDE_PANEL_URL,
additionalData: "{\"selected_item\": \"42\"}",
}
);
</script>
Замените следующее:
- CLOUD_PROJECT_NUMBER : строка. Номер вашего облачного проекта.
- SIDE_PANEL_URL : строка. URL-адрес боковой панели.
Когда пользователь на экране вызова Meet делится страницей, он видит баннер презентации в Meet. Нажатие кнопки на баннере открывает дополнение для данного номера облачного проекта на боковой панели. sidePanelUrl
загружается, а свойство additionalData
используется для установки начального состояния активности надстройки. Другим участвующим в звонке пользователям сразу будет предложено установить или запустить надстройку.
Сопоставление происхождения
Источники, указанные в свойстве mainStageUrl
и sidePanelUrl
сравниваются с источниками в манифесте надстройки предоставленного номера облачного проекта. Если все совпадает, пользователю разрешено запустить надстройку.
Кроме того, происхождение сайта, инициирующего демонстрацию экрана, должно быть указано в поле addOnOrigins
манифеста надстройки .
Дополнительную информацию см. в разделе Дополнительная безопасность .