Con los complementos de Google Workspace, puedes proporcionar interfaces personalizadas en los editores, incluidas Documentos, Hojas de cálculo y Presentaciones de Google. Esto te permite proporcionar al usuario información relevante, automatizar tareas y conectar sistemas de terceros a la Editores.
Accede a la IU del complemento
Puedes abrir un complemento de Google Workspace en Editores. si el ícono aparece en el menú desplegable acceder al panel lateral derecho del usuario de Documentos, Hojas de cálculo y Presentaciones interfaces.
Un complemento de Google Workspace puede presentar las siguientes interfaces:
Interfaces de la página principal: Si el manifiesto del complemento incluye el activador
EDITOR_NAME.homepageTrigger
para el editor en el que el usuario abre el complemento el complemento se compila y muestra un tarjeta de la página principal específicamente para ese Editor. Si el manifiesto del complemento no incluye el elementoEDITOR_NAME.homepageTrigger
para el editor que abre el usuario se muestra una tarjeta genérica en la página principal.Interfaces de la API de REST: Si el complemento usa REST Puedes incluir activadores que soliciten acceso por archivo a un documento con el permiso
drive.file
. Una vez otorgado, otro activador llamado Se ejecutaEDITOR_NAME.onFileScopeGrantedTrigger
y muestra una interfaz específica del archivo.Interfaces de vista previa del vínculo: Si tu complemento se integra en un servicio de terceros, puedes crear tarjetas de vista previa contenido de las URLs de tu servicio.
Cómo compilar interfaces para complementos de Editor
Compila las interfaces del complemento del editor para los editores siguiendo estos pasos:
- Agrega las
addOns.common
:addOns.docs
:addOns.sheets
yaddOns.slides
campos al manifiesto del proyecto de secuencia de comandos del complemento. - Agrega los permisos de Editor necesarios para el manifiesto del proyecto de secuencia de comandos.
- Si proporcionas una página principal específica de un editor, sigue estos pasos:
implementar el
EDITOR_NAME.homepageTrigger
para compilar la interfaz. De lo contrario, utiliza elcommon.homepageTrigger
para crear una página de inicio común para tus apps host. - Si usas las APIs de REST, implementa el flujo de autorización del permiso
drive.file
. yEDITOR_NAME.onFileScopeGrantedTrigger
trigger para mostrar una interfaz específica del archivo abierto. Para ver más consulta Interfaces de la API de REST. - Si quieres configurar vistas previas de vínculos desde un servicio de terceros, implementa
el flujo de autorización de permisos
https://www.googleapis.com/auth/workspace.linkpreview
ylinkPreviewTriggers
. Para obtener más información, consulta Interfaces de vista previa de vínculos. - Implementa las funciones de devolución de llamada asociadas necesarias para responder al mensaje Las interacciones de la IU, como los clics en botones.
Páginas principales del editor
Debes proporcionar una función activadora de página principal en el proyecto de secuencia de comandos de tu complemento.
que compila y muestra un solo Card
o un array de objetos Card
que conforman la página principal del complemento.
Se pasa un objeto de evento a la función de activador de la página principal. como un parámetro que contiene información como la plataforma del cliente. Puedes usar los datos del objeto de evento para personalizar la construcción de la página principal
Puedes presentar una página principal común o una que sea específica para el Editor. el usuario abre el complemento.
Cómo mostrar la página principal común
Para mostrar la página principal común de tu complemento en los editores, incluye la página
Campos del editor, como addOns.docs
,
addOns.sheets
:
o addOns.slides
,
en el manifiesto del complemento.
En el siguiente ejemplo, se muestra la porción de addons
de un complemento de Google Workspace.
. El complemento extiende Documentos, Hojas de cálculo y Presentaciones, y muestra
en cada app host.
"addOns": { "common": { "name": "Translate", "logoUrl": "https://www.gstatic.com/images/branding/product/1x/translate_24dp.png", "layoutProperties": { "primaryColor": "#2772ed" }, "homepageTrigger": { "runFunction": "onHomepage" } }, "docs": {}, "sheets": {}, "slides": {} } }
Cómo mostrar una página principal específica de Editor
Para presentar una página principal específica a un editor, agrega EDITOR_NAME.homepageTrigger
al complemento.
.
En el siguiente ejemplo, se muestra la porción addons
de un manifiesto de complemento de Google Workspace.
El complemento está habilitado para Documentos, Hojas de cálculo y Presentaciones. Muestra las funciones comunes
la página principal de Documentos y Presentaciones, y una página principal única en Hojas de cálculo. La devolución de llamada
La función onSheetsHomepage
crea la tarjeta de la página principal específica de Hojas de cálculo.
"addOns": { "common": { "name": "Translate", "logoUrl": "https://www.gstatic.com/images/branding/product/1x/translate_24dp.png", "layoutProperties": { "primaryColor": "#2772ed" }, "homepageTrigger": { "runFunction": "onHomepage" } }, "docs": {}, "slides": {}, "sheets": { "homepageTrigger": { "runFunction": "onSheetsHomepage" }, } }
Interfaces de la API de REST
Si tu complemento usa APIs de REST, como la API de Hojas de cálculo de Google, haz lo siguiente:
puedes usar la función onFileScopeGrantedTrigger
para mostrar una nueva interfaz
específico para el archivo que se abre en la aplicación host Editor.
Debes incluir el flujo de autorización de permiso de drive.file
para usar la
Función onFileScopeGrantedTrigger
. Para obtener información sobre cómo solicitar drive.file
consulta Cómo solicitar acceso a los archivos para el documento actual.
Cuando un usuario otorga el permiso drive.file
, el
EDITOR_NAME.onFileScopeGrantedTrigger.runFunction
incendios. Cuando el activador se activa, ejecuta la función de activación contextual
especificadas por el campo EDITOR_NAME.onFileScopeGrantedTrigger.runFunction
en el
del complemento.
A fin de crear una interfaz de API de REST para uno de los editores, sigue los pasos que se indican a continuación.
Reemplaza EDITOR_NAME
por la app host de Editor que elijas.
usar, por ejemplo, sheets.onFileScopeGrantedTrigger
.
- Incluye
EDITOR_NAME.onFileScopeGrantedTrigger
. en la sección del editor correspondiente de tu manifiesto. Por ejemplo, si para crear esta interfaz en Hojas de cálculo de Google, agrega el activador la sección"sheets"
. - Implementa la función nombrada en
EDITOR_NAME.onFileScopeGrantedTrigger
sección. Esta función acepta un objeto de evento como argumento y debe devolver un soloCard
o un array de objetosCard
. - Como con cualquier tarjeta, debes implementar las funciones de devolución de llamada interactividad de widgets para la interfaz. Por ejemplo, si incluyes un botón en la interfaz, debería haber adjuntado una Action y una función de devolución de llamada implementada que se ejecute cuando el botón cuando un usuario hace clic en él.
En el siguiente ejemplo, se muestra la porción addons
de un manifiesto de complemento de Google Workspace.
El complemento usa APIs de REST, por lo que se incluye onFileScopeGrantedTrigger
para
Google Sheets. Cuando un usuario otorga el alcance drive.file
, la función de devolución de llamada
onFileScopeGrantedSheets
compila una interfaz específica de archivo.
"addOns": { "common": { "name": "Productivity add-on", "logoUrl": "https://www.gstatic.com/images/icons/material/system_gm/1x/work_outline_black_18dp.png", "layoutProperties": { "primaryColor": "#669df6", "secondaryColor": "#ee675c" } }, "sheets": { "homepageTrigger": { "runFunction": "onEditorsHomepage" }, "onFileScopeGrantedTrigger": { "runFunction": "onFileScopeGrantedSheets" } }
Interfaces de vista previa de vínculos para servicios de terceros
Para activar las vistas previas de vínculos en un servicio de terceros, debes configurar vínculos vistas previas en el manifiesto de su complemento y cree una función que muestre una vista previa tarjeta. Para los servicios que requieren autorización del usuario, tu función también debe invocar el flujo de autorización.
Si quieres conocer los pasos para activar las vistas previas de vínculos, consulta Obtén vistas previas de vínculos con chips inteligentes.
Objetos de evento
Se crea un objeto de evento y se pasa para activar funciones, como
EDITOR_NAME.homepageTrigger
o EDITOR_NAME.onFileScopeGrantedTrigger
. La función de activación usa la información del
de evento para determinar cómo crear tarjetas de complementos o controlar la
el comportamiento del complemento.
La estructura completa de los objetos de evento se describe en Objetos de evento.
Cuando un editor es la aplicación host que actúa en el complemento, los objetos de eventos incluyen lo siguiente: Documentos, Hojas de cálculo o Presentaciones campos de objetos de eventos que contienen información del cliente.
Si el complemento no tiene autorización de permiso de drive.file
para el usuario actual
o document, el objeto event solo contiene
docs.addonHasFileScopePermission
, sheets.addonHasFileScopePermission
o
slides.addonHasFileScopePermission
. Si el complemento tiene
el objeto de evento contiene todos los campos de objeto de evento de Editor.
En el siguiente ejemplo, se muestra un objeto de evento Editor que se pasa a un
función sheets.onFileScopeGrantedTrigger
. Aquí, el complemento tiene la
Autorización de permiso de drive.file
para el documento actual:
` { "commonEventObject": { ... }, "sheets": { "addonHasFileScopePermission": true, "id":"A_24Q3CDA23112312ED52", "title":"How to get started with Sheets" }, ... }