Générez et insérez des définitions de mots avec la macro ONLYOFFICE

24 août 2023By Dasha

Ajouter des définitions claires à vos documents peut améliorer de manière significative leur qualité globale. Avec les macros ONLYOFFICE, automatiser ces tâches devient un jeu d’enfant. Dans cet article, nous allons vous montrer comment créer une macro qui récupère les définitions de mots depuis l’API externe et les insère de manière transparente dans votre document.

Generate and insert word definitions with ONLYOFFICE macro

Accès à l’API

API Ninjas est un puissant service d’API qui propose diverses API gratuites aux développeurs afin qu’ils puissent améliorer leurs applications grâce à des fonctionnalités telles que les dictionnaires, la traduction des langues, etc. Pour ce tutoriel, nous utiliserons l’API dictionnaire, qui fournit des définitions de mots. Pour obtenir une clé API auprès des API Ninjas et ccéder à leurs services, l’inscription est requise.

Construction de la macro

Notre objectif est de créer une macro qui récupère la valeur du mot sélectionné et sa définition à partir d’une API externe. Nous insérerons ensuite la définition dans le document.

Tout d’abord, nous initialisons les variables nécessaires :

const oDocument = Api.GetDocument();
const oRange = oDocument.GetRangeBySelect();
const word = oRange.GetText();

Ici, la variable oDocument représente le document en cours, la variable oRange contient la plage de texte sélectionnée et la variable word contient la valeur du mot sélectionné.

Ensuite, nous utilisons AJAX pour faire une demande à l’API du dictionnaire. Remplacez “your-api-key” par votre véritable clé API :

    success: function(result) {
        console.log(result);
        const text = result.definition;
        // Continue to the next step...
    },
    error: function ajaxError(jqXHR) {
        console.error('Error: ', jqXHR.responseText);
    }
});

Ici, nous envoyons une requête GET au point de terminaison de l’API avec le mot sélectionné et votre clé API. Nous en extrayons ensuite la propriété de définition.

Une fois la définition récupérée, nous allons l’insérer dans le document :

 success: function(result) {
        console.log(result);
    const text = result.definition; 
    const oParagraph = Api.CreateParagraph();
    oParagraph.AddText(text);
    oDocument.InsertContent([oParagraph], { "KeepTextOnly": true });
    }

Dans cette section, nous créons un nouveau paragraphe en utilisant Api.CreateParagraph(), nous y ajoutons le texte récupéré avec oParagraph.AddText(text), et enfin nous insérons le paragraphe dans oDocument en utilisant oDocument.InsertContent().

Le code macro complet est le suivant :

(function()
{
const oDocument = Api.GetDocument();
const oRange = oDocument.GetRangeBySelect();
const word = oRange.GetText();
$.ajax({
    method: 'GET',
    url: 'https://api.api-ninjas.com/v1/dictionary?word=' + word,
    headers: { 'X-Api-Key': 'your-api-key'},
    contentType: 'application/json',
    success: function(result) {
        console.log(result);
    const text = result.definition; 
    const oParagraph = Api.CreateParagraph();
    oParagraph.AddText(text);
    oDocument.InsertContent([oParagraph], { "KeepTextOnly": true });
    },
    error: function ajaxError(jqXHR) {
        console.error('Error: ', jqXHR.responseText);
    }
});
})();

Maintenant, exécutons notre macro et voyons comment elle fonctionne !

Nous espérons sincèrement que vous trouverez dans cette macro un complément précieux à votre boîte à outils. L’utilisation des macros ONLYOFFICE vous offre l’avantage d’une productivité accrue, vous permettant de disposer de solutions efficaces et automatisées.

En vous plongeant dans la création de macros, ne manquez pas les opportunités offertes par l’API ONLYOFFICE. Si vous avez des questions ou des idées inventives, n’hésitez pas à les partager dans les commentaires ou à nous contacter. Nous sommes heureux de recevoir vos commentaires et nous nous réjouissons à l’idée de travailler ensemble ! Nous vous souhaitons bonne chance dans vos projets exploratoires !