ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API

25 junio 2024By Sergey

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.

ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API

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:

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.

ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API

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.

ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API

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

Obtén la última versión de ONLYOFFICE Docs Developer:

DESCARGAR AHORA

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.

ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API

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.

ONLYOFFICE Docs 8.1 para desarrolladores: actualizaciones de la API

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.