ONLYOFFICE Docs 8.1 pour les développeurs : mises à jour de l’API

25 juin 2024By Dasha

Parallèlement aux nouvelles fonctionnalités de la version 8.1, nous avons mis à jour les API pour les éditeurs, Document Builder et les plugins, et ajouté la section Office API. Consultez tous les détails ci-dessous.

ONLYOFFICE Docs 8.1 pour les développeurs : mises à jour de l'API

Formulaires PDF

À partir de la version 8.1, nous avons complètement adopté les formulaires PDF. Pour créer et modifier un formulaire, les utilisateurs n’ont plus besoin d’autres formats. Cela signifie que le format docxf, précédemment utilisé pour créer des modèles de formulaires, est désormais obsolète.

À cet égard, veuillez consulter les mises à jour suivantes de l’API :

  • documentType des formats docxf et oform est remplacé par pdf ;
  • pdf field est ajouté à la demande de conversion ;
  • action formsubmit est ajoutée à la découverte de WOPI ;
  • le paramètre docs_api_config est ajouté à l’élément de formulaire de la page hôte WOPI.

Soumission du formulaire

L’événement onSubmit, nouvellement ajouté, est appelé lorsque le formulaire est soumis avec succès. Il peut rendre l’action de soumission du formulaire plus intuitive pour les utilisateurs.

Dans l’exemple de code ci-dessous, une fois que le formulaire a été soumis avec succès, un message est imprimé sur la console. Par exemple, vous pouvez afficher quelque chose comme un indice pour les utilisateurs “Votre formulaire a été soumis avec succès“.

var onSubmit = function (event) {
    console.log("The form was submitted.");
};
var docEditor = new DocsAPI.DocEditor("placeholder", {
    "events": {
        "onSubmit": onSubmit,
        ...
    },
    ...
});

Gestion des rôles des destinataires

Si les rôles des destinataires et les couleurs de correspondance des rôles ne sont pas nécessaires pour vos formulaires, vous pouvez désactiver l’option Gérer les rôles.

Pour ce faire, utilisez le champ roles ajouté au paramètre editorConfig.customization.features. Il définit si les paramètres de rôle seront désactivés dans les formulaires PDF ou non. Si le paramètre a la valeur false, le gestionnaire de rôles est caché et l’affichage du formulaire au nom d’un rôle spécifique est désactivé. Dans ce cas, les boutons Gérer les rôles et Afficher le formulaire de l’onglet Formulaires et la liste déroulante permettant de définir le rôle du champ dans le panneau de droite ne s’affichent pas.

Extension de l’API d’automatisation

L’API d’automatisation qui permet d’interagir avec les fichiers depuis l’extérieur comporte plusieurs nouvelles méthodes :

Par exemple, si vous souhaitez mettre à jour les éléments du menu contextuel, utilisez la méthode updateContextMenuItem. Ici, vous passez un tableau avec de nouveaux éléments comme argument, en spécifiant tous les paramètres nécessaires pour chaque élément. Dans l’exemple de code ci-dessous, nous passons un élément avec l’ID “onConvert” et le texte “Convert to Markdown or HTML”.

var items: [
    {
        "id": "onConvert",
        "text": getMessage("Convert to Markdown or HTML")
    }
]
connector.updateContextMenuItem(items);

Veuillez noter : Automation API est inclus dans la version d’essai de 30 jours d’ONLYOFFICE Docs Developer, vous pouvez donc l’essayer gratuitement. Si vous envisagez d’utiliser Automation API pour la production, il vous faut obtenir une licence avec cette option incluse.

Personnalisation

Utilisez les paramètres nouvellement ajoutés pour ajuster l’interface des éditeurs.

Le paramètre editorConfig.customization.layout.header.editMode définit si un bouton permettant de changer de mode sera affiché dans l’en-tête ou non.

Remarque : ce paramètre de l’API est disponible pour les utilisateurs disposant de la licence étendue Docs Developer. Pour accéder à cette fonctionnalité, veuillez soumettre votre demande.

ONLYOFFICE Docs 8.1 for developers: API updates

Le champ visible du paramètre editorConfig.customization.logo permet d’afficher ou de masquer le logo (fichier image dans le coin supérieur gauche de l’en-tête de l’éditeur). En outre, il est désormais également disponible pour les éditeurs mobiles.

ONLYOFFICE Docs 8.1 for developers: API updates

Clé de répartition pour un cluster fiable

Le paramètre de requête WOPISrc introduit dans la version précédente est ajouté aux requêtes du navigateur vers le serveur. Cela permet de créer plusieurs instances indépendantes d’ONLYOFFICE. Les requêtes de répartition de charge avec WOPISrc assurent le bon fonctionnement de l’édition collaborative : tous les utilisateurs qui éditent le même document sont servis par le même serveur. Pour WOPI, le paramètre envoyé par l’intégrateur est utilisé. Pour Docs API, c’est le nouveau paramètre Shard key qui est utilisé.

Le paramètre shardkey est ajouté à l’URL QueryString lors de l’envoi de requêtes au Document Command Service, au Document Conversion Service ou au Document Builder Service. Le champ clé est utilisé comme valeur. Par exemple, ?shardkey=Khirz6zTPdfd7. S’il n’y a pas de clé dans le corps de la requête, il n’est pas nécessaire de l’envoyer (par exemple, dans la commande getForgottenList).

Nouvelles mises à jour de l’API pour les éditeurs

  • Le code d’erreur -10 (dépassement de la limite de taille) est ajouté à l’API de conversion.
  • La valeur par défaut du paramètre editorConfig.customization.hideRightMenu est remplacée par true (c’est-à-dire que le menu de droite sera caché lors du premier chargement).
  • Le champ editorConfig.customization.layout.toolbar.home.mailmerge est obsolète, veuillez utiliser le champ editorConfig.customization.layout.toolbar.collaboration.mailmerge à la place (puisque le bouton de fusion et publipostage est déplacé vers l’onglet Collaboration).
  • Le champ editorConfig.customization.goback.requestClose est obsolète, veuillez utiliser le champ editorConfig.customization.close à la place.

Obtenez la dernière version d’ONLYOFFICE Docs Developer :

TÉLÉCHARGER MAINTENANT

Améliorations de l’API pour les plugins

Depuis la version 8.1, les plugins peuvent modifier la barre d’outils : créer leurs propres onglets et les remplir, ajouter des boutons aux onglets standard. Pour ce faire, utilisez la méthode AddToolbarMenuItem.

ONLYOFFICE Docs 8.1 for developers: API updates

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]]);

En outre, les plugins peuvent désormais créer non seulement plusieurs fenêtres, mais aussi plusieurs panneaux de gauche. Le paramètre variations.menu spécifie où le plugin sera placé – sur le panneau de droite ou de gauche.

ONLYOFFICE Docs 8.1 for developers: API updates

Parmi les nouvelles méthodes de plugin, vous trouverez :

Consultez la liste complète des mises à jour de l’API du plugin.

Framework Python pour Document Builder

Pour ONLYOFFICE Document Builder, il y a maintenant un framework Python Builder disponible. Il contient une collection de bibliothèques, de classes et de fonctions qui facilitent le développement rapide d’applications en Python avec des capacités de création de documents.

Office API

Pour votre confort et pour faciliter la navigation, nous avons déplacé la bibliothèque JavaScript pour travailler avec les éditeurs dans une section séparée – Office JavaScript API.

Nous avons également ajouté de nombreuses nouvelles méthodes pour la version 8.1, notamment pour :

  • formulaires de date ;
  • définition des propriétés du texte ;
  • plages protégées ;
  • plages de collage/découpe ;
  • styles de référence ;
  • fonction de la feuille de calcul ;
  • fonction personnalisée ;
  • déplacement du curseur.

Consultez la liste complète des nouvelles méthodes.