ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API
Junto con el lanzamiento de las nuevas funciones de la versión 8.1, hemos actualizado la API para los editores, el Document Builder y los plugins, además de añadir la sección Office API. Descubre todos los detalles a continuación.
Formularios PDF
A partir de la versión 8.1, hemos cambiado completamente a los formularios PDF. Para crear y editar un formulario, los usuarios ya no necesitan otros formatos. Esto significa que el formato docxf utilizado anteriormente para crear plantillas de formularios ha quedado obsoleto.
A este respecto, comprueba las siguientes actualizaciones de la API:
- documentType de los formatos docxf y oform se convierte a pdf;
- pdf field se añade a la solicitud de conversión;
- se añade la acción formsubmit al WOPI discovery;
- se añade el parámetro docs_api_config al elemento form de la página host WOPI.
Envío de formularios
El nuevo evento onSubmit se ejecuta cuando el formulario se envía correctamente. Puede hacer que la acción de envío del formulario sea más intuitiva para los usuarios.
En el ejemplo de código siguiente, una vez que el formulario se ha enviado correctamente, se imprime un mensaje en la consola. Por ejemplo, puedes mostrar algo como una sugerencia para los usuarios “Tu formulario ha sido enviado correctamente”.
var onSubmit = function (event) {
console.log("The form was submitted.");
};
var docEditor = new DocsAPI.DocEditor("placeholder", {
"events": {
"onSubmit": onSubmit,
...
},
...
});
Gestión de los roles de destinatario
De forma predeterminada, la función Gestionar roles está activada, lo que te proporciona la flexibilidad de asignar roles y colores según sea necesario. Si consideras que los roles de destinatario y los colores asociados a los roles no son esenciales para tus formularios, tienes la opción de desactivar esta función.
Para ello, utiliza el campo roles añadido al parámetro editorConfig.customization.features. Define si la configuración de roles se desactivará en los formularios PDF o no. Si el parámetro se establece en false, el gestor de roles se oculta y se desactiva la visualización del formulario en nombre de un rol específico. Si este es el caso, no se mostrarán los botones Gestionar roles y Ver formulario en la pestaña Formularios ni la lista desplegable para configurar el rol de campo en el panel derecho.
API de automatización ampliada
La API de automatización que permite interactuar con archivos desde el exterior incorpora varios métodos nuevos:
- addContextMenuItem – para añadir un elemento al menú contextual;
- addToolbarMenuItem – para añadir un elemento al menú de la barra de herramientas;
- updateContextMenuItem – para actualizar un elemento del menú contextual con los elementos especificados.
Por ejemplo, si quieres actualizar los elementos del menú contextual, utiliza el método updateContextMenuItem. Aquí hay que pasar una matriz con nuevos elementos como argumento, especificando todos los parámetros necesarios para cada elemento. En el ejemplo de código siguiente, estamos pasando un elemento con el ID “onConvert” y el texto “Convert to Markdown or HTML”.
var items: [
{
"id": "onConvert",
"text": getMessage("Convert to Markdown or HTML")
}
]
connector.updateContextMenuItem(items);
Ojo: la API de automatización está incluida en la versión de prueba de 30 días de ONLYOFFICE Docs Developer, así que puedes probarla gratis. Si planeas usar la API de automatización para producción, tendrás que obtener una licencia con esta opción incluida.
Personalización
Utiliza los nuevos parámetros añadidos para ajustar la interfaz de los editores.
El parámetro editorConfig.customization.layout.header.editMode define si se mostrará o no un botón para cambiar los modos en el encabezado.
Ojo: este parámetro de la API está disponible para usuarios con la licencia extendida de Docs Developer. Para acceder a esta función, por favor envía tu solicitud.
El campo visible del parámetro editorConfig.customization.logo muestra u oculta el logotipo (archivo de imagen en la esquina superior izquierda del encabezado del editor). Además, ahora también está disponible para los editores móviles.
Shard key para un clúster fiable
El parámetro de consulta WOPISrc introducido en la versión anterior se añade a las solicitudes del navegador al servidor. Esto te permite crear varias instancias independientes de ONLYOFFICE. Las solicitudes de equilibrio de carga con WOPISrc garantizan que la edición colaborativa funcione correctamente: todos los usuarios que editan el mismo documento son atendidos por el mismo servidor. Para WOPI, se utiliza el parámetro enviado por el integrador. Para la API de Docs, se utiliza el nuevo parámetro Shard key.
El parámetro shardkey se añade al URL QueryString cuando se envían solicitudes al Document Command Service, Document Conversion Service o Document Builder Service. El campo key se utiliza como valor. Por ejemplo, ?shardkey=Khirz6zTPdfd7. Si no hay ninguna clave en el cuerpo, no es necesario enviarla (por ejemplo, en el comando getForgottenList).
Más actualizaciones de la API para los editores
- Se añade el código de error -10 (límite de tamaño excedido) a la API de conversión.
- El valor predeterminado del parámetro editorConfig.customization.hideRightMenu se cambia a true (es decir, el menú derecho se ocultará en la primera carga).
- El campo editorConfig.customization.layout.toolbar.home.mailmerge está obsoleto, por favor utiliza el campo editorConfig.customization.layout.toolbar.collaboration.mailmerge en su lugar (ya que el botón Combinación de correspondencia se ha movido a la pestaña Colaboración).
- El campo editorConfig.customization.goback.requestClose está obsoleto, utiliza en su lugar el campo editorConfig.customization.close.
Obtén la última versión de ONLYOFFICE Docs Developer:
Mejoras de la API para plugins
A partir de la versión 8.1, los plugins pueden cambiar la barra de herramientas: crear sus propias pestañas y rellenarlas, añadir botones a las pestañas estándar. Para ello, utiliza el método AddToolbarMenuItem.
var oToolbarMenuItem = {
"id": "MeaningItem",
"type": "button",
"text": "Meaning",
"hint": "Meaning",
"icons": "resources/light/icon.png",
"disabled": false,
"enableToggle": false,
"lockInViewMode": false,
"separator": true,
"split": true,
"items": [
{
"id": "onMeaningT",
"text": "Explain text in comment"
},
{
"id": "onFixSpelling",
"text": "Fix spelling & grammar"
},
{
"id": "onMakeLonger",
"text": "Make longer"
},
{
"id": "onMakeShorter",
"text": "Make shorter"
}
]
};
var oToolbarMenuTab = {
"id": "ChatGPT",
"text": "AI Assistant",
"items": [oToolbarMenuItem]
};
var oToolbarMenuMainItem = {
"guid": "asc.{9DC93CDB-B576-4F0C-B55E-FCC9C48DD007}",
"tabs": [oToolbarMenuTab]
};
window.Asc.plugin.executeMethod ("AddToolbarMenuItem", [[oToolbarMenuMainItem]]);
Además, ahora los plugins pueden crear no solo múltiples ventanas, sino también múltiples paneles izquierdos. El parámetro variations.menu especifica dónde se colocará el plugin: en el panel derecho o izquierdo.
Entre los nuevos métodos para plugins también encontrarás:
Consulta la lista completa de actualizaciones de la API para plugins.
Python Framework para el Document Builder
Para el Document Builder de ONLYOFFICE ahora está disponible Python Builder Framework. Contiene una colección de bibliotecas, clases y funciones que facilitan mucho el desarrollo rápido de aplicaciones en Python con capacidades de creación de documentos.
Office API
Para tu comodidad y para facilitar la navegación, hemos trasladado la biblioteca JavaScript para trabajar con los editores a una sección separada – Office JavaScript API.
También hemos añadido numerosos métodos nuevos para la versión 8.1, incluyendo aquellos para:
- formularios de fecha;
- configuración de propiedades de texto;
- rangos protegidos;
- pegar/cortar rangos;
- estilos de referencia;
- función de hoja de cálculo;
- función personalizada;
- mover el cursor.
Consulta la lista completa de nuevos métodos.
Crea tu cuenta gratuita de ONLYOFFICE
Visualiza, edita y colabora en documentos, hojas, diapositivas, formularios y archivos PDF en línea.