На этой странице описывается, как продвигать надстройку среди пользователей при совместном использовании вкладки с помощью Google Meet, размещая небольшой объем кода на другой веб-странице.
Метод MeetAddonScreenshare.exposeToMeetWhenScreensharing
позволяет сайту отправлять информацию в Meet, когда его вкладка открыта для совместного использования экрана. Эта информация используется при работе надстройки с Meet, когда пользователь нажимает «Начать действие» на баннере презентации, если надстройка у него установлена. Если у пользователя не установлена надстройка, когда он показывает вкладку на экране, ему будет предложено установить надстройку.
Объект AddonScreenshareInfo
содержит пять полей, которые можно добавить в зависимости от варианта использования:
AddonScreenshareInfo.additionalData
: информация, которую надстройка может использовать для своей инициализации. Может быть установлен только в том случае, еслиAddonScreenshareInfo.startActivityOnOpen
имеет значение true и доступен с помощьюCollaborationStartingState
. Дополнительные сведения см. в разделе Использование начального состояния сотрудничества .AddonScreenshareInfo.cloudProjectNumber
: обязательно. Номер проекта Google Cloud надстройки.AddonScreenshareInfo.mainStageUrl
: URL-адрес, который открывается основной сцене после запуска надстройки, напримерhttps://www.example.com
. URL-адрес должен принадлежать тому же источнику , что и URL-адреса, указанные в манифесте надстройки.AddonScreenshareInfo.sidePanelUrl
: URL-адрес, который открывается боковой панели после запуска надстройки, напримерhttps://www.example.com
. URL-адрес должен принадлежать тому же источнику , что и URL-адреса, указанные в манифесте надстройки.AddonScreenshareInfo.startActivityOnOpen
: обязательно. Следует ли запускать надстройку для совместной работы в Meet сразу, когда пользователь запускает надстройку из баннера презентации. Должно быть истинно, если используетсяAddonScreenshareInfo.mainStageUrl
.
Пример: Загрузка в основной сцене
В следующем примере кода пользователю, который поделился веб-страницей в Meet, содержащей следующий код, предлагается запустить надстройку:
<script src="https://www.gstatic.com/meetjs/addons/0.9.1/meet.addons.screenshare.js"></script>
<script>
meet.addon.screensharing.exposeToMeetWhenScreensharing(
{
cloudProjectNumber: CLOUD_PROJECT_NUMBER,
startActivityOnOpen: true,
mainStageUrl: MAIN_STAGE_URL,
additionalData: "{\"selected_item\": \"42\"}",
}
);
</script>
Замените следующее:
- CLOUD_PROJECT_NUMBER : строка. Номер вашего облачного проекта.
- MAIN_STAGE_URL : строка. URL-адрес основной сцены.
Когда пользователь на экране вызова Meet делится страницей, он видит баннер презентации в Meet. При нажатии кнопки на баннере на главной стадии открывается надстройка для данного номера облачного проекта. AddonScreenshareInfo.mainStageUrl
загружается, а AddonScreenshareInfo.additionalData
используется для установки начального состояния совместной работы надстройки. Другим участвующим в звонке пользователям сразу же будет предложено установить или запустить надстройку.
Пример: Загрузка в боковую панель
В следующем примере кода пользовательский экран использует общую страницу с надстройкой, которая хочет запускаться на боковой панели, а не на основной сцене:
<script src="https://www.gstatic.com/meetjs/addons/0.9.1/meet.addons.screenshare.js"></script>
<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. Нажатие кнопки на баннере открывает дополнение для данного номера облачного проекта на боковой панели. AddonScreenshareInfo.sidePanelUrl
загружается, а AddonScreenshareInfo.additionalData
используется для установки начального состояния совместной работы надстройки. Другим участвующим в звонке пользователям сразу же будет предложено установить или запустить надстройку.
Пример: загрузка боковой панели без начала совместной работы
В следующем примере кода экран пользователя использует общую страницу с надстройкой, которая должна настроить разрешения на ресурсы, прежде чем можно будет начать совместную работу. В связи с этим требованием надстройка должна запускаться в боковой панели, без запуска совместной работы у всех.
<script src="https://www.gstatic.com/meetjs/addons/0.9.1/meet.addons.screenshare.js"></script>
<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. Нажатие кнопки на баннере открывает дополнение для данного номера облачного проекта на боковой панели. Поскольку AddonScreenshareInfo.startActivityOnOpen
установлено значение false, кнопка начала действия отключена до тех пор, пока не будет установлен CollaborationStartingState
. Дополнительные сведения см. в разделе Использование начального состояния сотрудничества .
После запуска действия другим пользователям, участвующим в вызове, будет предложено либо запустить, либо установить надстройку.
Сопоставление происхождения
Источники , указанные в AddonScreenshareInfo.mainStageUrl
и AddonScreenshareInfo.sidePanelUrl
сравниваются с источниками в манифесте надстройки предоставленного номера облачного проекта. Если все совпадает, пользователю разрешено запустить надстройку.
Кроме того, происхождение сайта, инициирующего демонстрацию экрана, должно быть указано в поле addOnOrigins
манифеста надстройки .
Дополнительную информацию см. в разделе Дополнительная безопасность .