{"id":32486,"date":"2023-03-08T16:31:06","date_gmt":"2023-03-08T15:31:06","guid":{"rendered":"https:\/\/mimolive.com\/?post_type=user-manual&#038;p=32486"},"modified":"2024-10-08T09:55:45","modified_gmt":"2024-10-08T07:55:45","slug":"http-api","status":"publish","type":"user-manual","link":"https:\/\/mimolive.com\/it\/user-manual\/remote-control-automation\/http-api\/","title":{"rendered":"API HTTP"},"content":{"rendered":"<p>Da un lato, mimoLive pubblica una <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/superfici-di-controllo-remoto\/\">Interfaccia utente del telecomando<\/a> con cui \u00e8 possibile creare interfacce utente personalizzate da utilizzare su un tablet o un dispositivo simile per controllare a distanza mimoLive.<\/p>\n\n\n\n<p>Inoltre, mimoLive fornisce l'accesso alla nuda <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> in modo da poter creare script personalizzati (tramite <strong>bash<\/strong> e <strong>ricciolo<\/strong>, <strong>AppleScript<\/strong>, incorporato <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/automazione\/\">Livello di automazione<\/a> o qualcosa di simile che possa parlare con un <span class=\"caps\">HTTP<\/span> server) che controllano vari aspetti di mimoLive: le possibilit\u00e0 sono quasi infinite. (Vedi <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/esempi-di-utilizzo-dellapi\/\">Esempi di <span class=\"caps\">API<\/span> utilizzo<\/a>)<\/p>\n\n\n\n<p>In questo argomento, ci concentreremo sul nudo <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span>. Come il <span class=\"caps\">API<\/span> si basa sulla <a href=\"http:\/\/jsonapi.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">specifiche json:api<\/a> Assicurarsi di familiarizzare con esso prima di lavorare con mimoLive. <span class=\"caps\">API<\/span>.<\/p>\n\n\n\n<p>*Oltre alla documentazione, \u00e8 possibile dare un'occhiata ai nostri script dimostrativi PHP su github<\/p>\n\n\n\n<p><br>Inoltre, \u00e8 disponibile un esempio per Shell e Apple Script.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"api-endpoint\"><span class=\"caps\">API<\/span> Accesso<\/h3>\n\n\n\n<p>Il mimoLive <span class=\"caps\">API<\/span> \u00e8 accessibile sulla stessa macchina su cui gira mimoLive (tramite \"localhost\") e sulla rete locale (tramite \".local\").<\/p>\n\n\n\n<p>Se abilitato, mimoLive serve un <span class=\"caps\">HTTP<\/span> server sulla \"porta 8989\".<\/p>\n\n\n\n<p>Tutti i <span class=\"caps\">API<\/span> Le chiamate sono precedute da un percorso di \"\/api\/v1\/\", quindi se si vuole ottenere un elenco di documenti aperti si deve chiamare \"http:\/\/localhost:8989\/api\/v1\/documents\".<\/p>\n\n\n\n<p>Tutti gli ID (per i documenti, i livelli, le fonti, le destinazioni di output, ecc.) sono memorizzati e persistono su disco, quindi la codifica di questi valori \u00e8 sicura finch\u00e9 lo stesso documento viene utilizzato all'interno di mimoLive.<br><br>Si prega di fare riferimento a <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/personalizzazione\/http-api\/punti-finali\/\" data-type=\"user-manual\" data-id=\"32488\">Endpoint API<\/a> per saperne di pi\u00f9 su tutti gli endpoint forniti.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"authentication\">Autenticazione<\/h3>\n\n\n\n<p>A partire da mimoLive 3.1, se l'utente ha abilitato l'autenticazione nelle preferenze di mimoLive, \u00e8 necessario fornire la password dell'utente per ogni richiesta al servizio di assistenza. <span class=\"caps\">API<\/span> che pu\u00f2 essere fatto in due modi:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Impostazione dell'opzione personalizzata <span class=\"caps\">HTTP<\/span> intestazione \"X-MimoLive-Password-SHA256: xxxxxxx\"<\/li>\n\n\n\n<li>Aggiunta del parametro di query \"?pwSHA256=xxxxxxx\".<\/li>\n<\/ul>\n\n\n\n<p>In entrambi i casi, xxxxxxx deve essere sostituita con la password originale (in <span class=\"caps\">UTF<\/span>codifica -8) con un hash usando <span class=\"caps\">CSA<\/span>-256 e codificato come una stringa di cifre esadecimali.<br>Per agevolare lo sviluppo di script e applicazioni personalizzate, mimoLive mostra questo <span class=\"caps\">API<\/span> e consente di copiare negli appunti nel pannello delle preferenze dei Controlli remoti:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1000\" height=\"448\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/dddc6bf5-964b-493c-b35e-ee5b37e44e40.png\" alt=\"\" class=\"wp-image-32487\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/dddc6bf5-964b-493c-b35e-ee5b37e44e40.png 1000w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/dddc6bf5-964b-493c-b35e-ee5b37e44e40-300x134.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/dddc6bf5-964b-493c-b35e-ee5b37e44e40-768x344.png 768w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/dddc6bf5-964b-493c-b35e-ee5b37e44e40-18x8.png 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"deprecated-authentication-method\">Metodo di autenticazione deprecato<\/h4>\n\n\n\n<p>Prima della versione 3.1 di mimoLive, le richieste contro il file <span class=\"caps\">API<\/span> verrebbe autenticato utilizzando lo speciale <span class=\"caps\">HTTP<\/span> L'intestazione \"X-MimoLive-Password: \" o il parametro di query \"?pw=\" su ogni richiesta.<br>Sfortunatamente, questo metodo invia la password in chiaro attraverso una connessione di rete potenzialmente insicura, che potrebbe esporre dati sensibili se il <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> La password viene riutilizzata altrove.<br>Pur continuando a funzionare, questo metodo di autenticazione \u00e8 quindi sconsigliato e potrebbe essere rimosso in futuro.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"errors\">Errori<\/h3>\n\n\n\n<p>Se si verifica un errore durante una richiesta, mimoLive interromper\u00e0 l'elaborazione di quella richiesta e restituir\u00e0 un messaggio <span class=\"caps\">HTTP<\/span> con il suo codice di stato che indica l'errore. La risposta contiene anche un <span class=\"caps\">JSON<\/span> array di oggetti errore contenenti informazioni aggiuntive su ciascun errore verificatosi:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>{\n  \"errors\": &#91;\n    {\n      \"status\": \"404\",\n      \"title\": \"Not Found\",\n      \"description\": \"The requested object could not be found\"\n    }\n  ]\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"remote-access\">Accesso remoto via Internet<\/h3>\n\n\n\n<p>Come il <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> \u00e8 abilitato da un webserver integrato in mimoLive, l'accesso remoto alla <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> da qualsiasi punto di Internet pu\u00f2 essere attivata assegnando al computer mimoLive un numero IP pubblico. Poich\u00e9 il <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> non \u00e8 molto protetto, questa \u00e8 una cattiva idea. Un modo migliore per abilitare l'accesso remoto al file <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> attraverso una rete pubblica \u00e8 quello di <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/accedere-alle-superfici-di-controllo-remoto-e-allhttp-api-da-remoto\/\">stabilire un tunnel sicuro verso il computer host mimoLive utilizzando ngrok<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>On one hand, mimoLive publishes a Remote Control UI which you can use to create custom user interfaces that you can use on a tablet or similar device to remote control mimoLive. Additionally, mimoLive provides access to the bare HTTP API so you can create custom scripts (via bash and curl, AppleScript, build-in Automation Layer [&hellip;]<\/p>","protected":false},"author":3,"featured_media":0,"parent":40865,"menu_order":2,"template":"","meta":{"_acf_changed":false,"_angie_page":false,"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[258],"tags":[],"class_list":["post-32486","user-manual","type-user-manual","status-publish","hentry","category-manual"],"acf":[],"_links":{"self":[{"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32486","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual"}],"about":[{"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/types\/user-manual"}],"author":[{"embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/users\/3"}],"version-history":[{"count":1,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32486\/revisions"}],"predecessor-version":[{"id":39706,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32486\/revisions\/39706"}],"up":[{"embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/40865"}],"wp:attachment":[{"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/media?parent=32486"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/categories?post=32486"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/tags?post=32486"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}