ONLYOFFICE Docs 8.1 per sviluppatori: aggiornamenti API
Insieme al rilascio delle nuove funzionalità nella versione 8.1, abbiamo aggiornato le API per gli editor, il Document Builder e i plugin, oltre ad aver aggiunto la sezione API di Office. Di seguito sono riportati tutti i dettagli.
Moduli PDF
A partire dalla versione 8.1, siamo passati completamente ai moduli PDF. Per creare e modificare un modulo, gli utenti non hanno più bisogno di altri formati. Ciò significa che il formato docxf, precedentemente utilizzato per la creazione di modelli di moduli, non è più in uso.
A questo proposito, si consiglia di verificare i seguenti aggiornamenti dell’API:
- documentType dei formati docxf e oform cambiato in pdf;
- pdf field è stato aggiunto alla richiesta di conversione;
- l’azione formsubmit è stata aggiunta alla scoperta WOPI;
- il parametro docs_api_config è stato aggiunto all’elemento form della pagina host di WOPI.
Invio del modulo
Il nuovo evento onSubmit viene richiamato quando il modulo viene inviato con successo. In questo modo può rendere l’azione di invio del modulo più intuitiva per gli utenti.
Nell’esempio di codice qui sotto, una volta che il modulo è stato inviato con successo, viene visualizzato un messaggio nella console. Ad esempio, è possibile visualizzare il suggerimento per gli utenti: “Il modulo è stato inviato con successo”.
var onSubmit = function (event) {
console.log("The form was submitted.");
};
var docEditor = new DocsAPI.DocEditor("placeholder", {
"events": {
"onSubmit": onSubmit,
...
},
...
});
Gestione dei ruoli dei destinatari
Per impostazione predefinita, la funzione Gestione ruoli è attivata e offre la flessibilità di assegnare ruoli e colori a seconda delle necessità. Se si ritiene che i ruoli dei destinatari e i colori associati non siano essenziali per i propri moduli, è possibile disattivare questa funzione.
Per farlo, si può utilizzare il campo ruoli aggiunto al parametro editorConfig.customization.features: questo definisce se le impostazioni dei ruoli saranno disabilitate o meno nei moduli PDF. Se il parametro è impostato su false, il gestore dei ruoli è nascosto e la visualizzazione del modulo per conto di un ruolo specifico è disabilitata. In questo caso, i pulsanti Gestisci ruoli e Visualizza modulo nella scheda Moduli e l’elenco a discesa per l’impostazione del ruolo del campo nel pannello di destra non saranno visualizzati.
API di automazione estesa
L’API di automazione estesa che consente di interagire con i file dall’esterno presenta diversi nuovi metodi:
- addContextMenuItem – per aggiungere un elemento al menù contestuale;
- addToolbarMenuItem – per aggiungere un elemento al menù della barra degli strumenti;
- updateContextMenuItem – per aggiornare una voce del menù contestuale con gli elementi specificati.
Per esempio, se si desidera aggiornare le voci del menù contestuale, utilizzare il metodo updateContextMenuItem. In questo caso, si passa come argomento un array con nuove voci, specificando tutti i parametri necessari per ogni voce. Nell’esempio di codice che segue, passiamo un elemento con l’ID “onConvert” e il testo “Convert to Markdown or HTML”.
var items: [
{
"id": "onConvert",
"text": getMessage("Convert to Markdown or HTML")
}
]
connector.updateContextMenuItem(items);
Nota bene: Automation API è inclusa nei 30 giorni di prova di ONLYOFFICE Docs per sviluppatori, quindi puoi provarla gratuitamente. Se stai pianficando di utilizzare Automation API per produrre, avrai bisogno di ottenere una licenza con questa opzione inclusa.
Personalizzazione
Utilizza i nuovi parametri aggiunti per regolare l’interfaccia dell’editor.
Il parametro editorConfig.customization.layout.header.editMode definisce se un pulsante per cambiare modalità sarà visualizzato o meno nell’intestazione.
Nota bene: questo parametro API è disponibile per gli utenti con la licenza estesa Docs Developer. Per accedere a questa funzione invia una richiesta.
Il campo visible del parametro editorConfig.customization.logo mostra o nasconde il logo (file immagine nell’angolo superiore sinistro dell’intestazione dell’editor). Inoltre, ora è disponibile anche per gli editor mobili.
Chiave Shard per un cluster affidabile
Il parametro di query WOPISrc introdotto nella versione precedente è stato aggiunto alle richieste dal browser al server. Ciò consente di creare diverse istanze indipendenti di ONLYOFFICE. Le richieste di bilanciamento del carico con WOPISrc garantiscono il corretto funzionamento dell’editing collaborativo: tutti gli utenti che modificano lo stesso documento sono serviti dallo stesso server. Per WOPI, viene utilizzato il parametro inviato dall’integratore. Per Docs API, viene utilizzato il nuovo parametro Shard key.
Il parametro shardkey viene aggiunto all’URL QueryString quando si mandando richieste al Document Command Service, Document Conversion Service, or Document Builder Service. Il campo key viene utilizzato come valore, ad esempio ?shardkey=Khirz6zTPdfd7. Se non c’è nessuna chiave nel corpo, non è necessario inviarla (ad esempio nel comando getForgottenList).
Ulteriori aggiornamenti degli API per gli editor
- Il codice di errore -10 (limite di dimensione superato) è stato aggiunto all’API di conversione.
- Il valore predefinito del parametro editorConfig.customization.hideRightMenu è cambiato in true (cioè il menù di destra sarà nascosto al primo caricamento).
- Il campo editorConfig.customization.layout.toolbar.home.mailmerge non è più in utilizzo, sei pregato di utilizzare al suo posto il campo editorConfig.customization.layout.toolbar.collaboration.mailmerge (essendo ora il pulsante Mail nella scheda Collaborazione).
- Il campo editorConfig.customization.goback.requestClose non è più in utilizzo, sei pregato di usare il campo editorConfig.customization.close al suo posto.
Ottieni l’ultima versione di ONLYOFFICE Docs per sviluppatori:
Miglioramenti dell’API per i plugin
A partire dalla versione 8.1, i plugin possono modificare la barra degli strumenti: creare le proprie schede e riempirle, aggiungere pulsanti alle schede standard. Per farlo, si utilizza il metodo 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]]);
Inoltre, i plugin possono ora creare non solo finestre multiple, ma anche pannelli multipli a sinistra. Il parametro variations.menu specifica dove verrà posizionato il plugin: se sul pannello destro o sinistro.
Tra i nuovi metodi dei plugin troverai:
- onToolbarMenuClick
- ActivateWindow
- GetSelectedOleObjects
- GetAllComments
- e altri ancora.
Controlla la lista completa degli aggiornamenti delle API dei plugin.
Framework Python per Document Builder
Per ONLYOFFICE Document Builder è ora disponibile un Python Builder FrameworkContiene una raccolta di librerie, classi e funzioni che rendono molto più semplice lo sviluppo rapido di applicazioni in Python con capacità di creazione di documenti.
API di Office
Per comodità e per facilitare la navigazione, abbiamo spostato la libreria JavaScript per lavorare con gli editor in una sezione separata – Office JavaScript API.
Qui sono stati aggiunti numerosi nuovi metodi per la versione 8.1, tra cui quelli per:
- moduli di data;
- impostare le proprietà del testo;
- intervalli protetti;
- incollare/tagliare intervalli;
- stili di riferimento;
- funzione del foglio di lavoro;
- funzione personalizzata;
- spostamento del cursore.
Controlla la lista completa dei nuovi metodi.
Crea il tuo account ONLYOFFICE gratuito
Visualizza, modifica e collabora su documenti, fogli, diapositive, moduli e file PDF online.