{"id":32490,"date":"2023-03-08T16:33:24","date_gmt":"2023-03-08T15:33:24","guid":{"rendered":"https:\/\/mimolive.com\/?post_type=user-manual&#038;p=32490"},"modified":"2024-10-08T11:01:10","modified_gmt":"2024-10-08T09:01:10","slug":"esempi-di-utilizzo-dellapi","status":"publish","type":"user-manual","link":"https:\/\/mimolive.com\/it\/user-manual\/remote-control-automation\/http-api\/examples-of-api-usage\/","title":{"rendered":"Esempi di utilizzo dell'API"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Prerequisiti<\/h2>\n\n\n\n<p>- Aprire il documento che si desidera manipolare in mimoLive.<br>- Assicurarsi che il documento sia in uno stato finito, in modo che gli endpoint dell'API come i livelli non vengano pi\u00f9 modificati. Si tenga presente che se si rimuove un livello e lo si aggiunge di nuovo, questo livello avr\u00e0 un ID livello diverso quando si parla con esso tramite l'API. Tuttavia, il riordino dei livelli o l'aggiunta di varianti di livello non cambier\u00e0 l'ID del livello.<br>- Abilitare il <span class=\"caps\">HTTP<\/span>-Server nelle Preferenze del Controllo remoto di mimoLive. Selezionare l'opzione \"Consenti accesso al controllo remoto\":<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1000\" height=\"542\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/9e0a2b0b-6a64-4093-b15b-24aa12dead32.png\" alt=\"\" class=\"wp-image-32491\" style=\"width:570px;height:auto\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/9e0a2b0b-6a64-4093-b15b-24aa12dead32.png 1000w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/9e0a2b0b-6a64-4093-b15b-24aa12dead32-300x163.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/9e0a2b0b-6a64-4093-b15b-24aa12dead32-768x416.png 768w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/9e0a2b0b-6a64-4093-b15b-24aa12dead32-18x10.png 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>Annotare il numero IP o l'indirizzo IP con il numero di porta di mimoLive per poterlo utilizzare in seguito quando si lavora con il programma. <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Modi per controllare mimoLive a distanza<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Controllo di mimoLive con le superfici di controllo a distanza<\/h3>\n\n\n\n<p>Il modo pi\u00f9 efficace \u00e8 quello di creare un <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/utilizzando-mimolive\/superfici-di-controllo-remoto\/\" data-type=\"user-manual\" data-id=\"31791\">Superficie di controllo remoto<\/a> per il suo documento mimoLive, che pu\u00f2 essere eseguito su un iPad, iPhone o qualsiasi altro dispositivo con un browser internet.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Controllo di mimoLive con php<\/h3>\n\n\n\n<p>Abbiamo un esempio di script PHP ben documentato su GitHub: <br><a href=\"https:\/\/github.com\/boinx\/mimoLive-HTTP-Demo\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/boinx\/mimoLive-<span class=\"caps\">HTTP<\/span>-Dimostrazione<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Controllo di mimoLive con <span class=\"caps\">CURVA<\/span><\/h3>\n\n\n\n<p>Per controllare mimoLive tramite <span class=\"caps\">HTTP<\/span> \u00e8 possibile utilizzare il comando bash \"curl\". Affinch\u00e9 i comandi curl funzionino \u00e8 necessario trovare l'ID del documento mimoLive che si vuole manipolare.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Controllo di mimoLive con il livello di automazione<\/h3>\n\n\n\n<p>Il <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/automazione\/\">Livello di automazione<\/a> possono eseguire alcuni semplici comandi per attivare azioni in mimLive tramite il loro <span class=\"caps\">API<\/span> Endpoint. Dispone anche di un comando httpRequest() per eseguire qualsiasi tipo di <span class=\"caps\">GET<\/span> azioni di richiesta il <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span> \u00e8 in grado di fare.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Controllo di mimoLive con Apple Script<\/h3>\n\n\n\n<p>Attualmente mimoLive non supporta nativamente Apple Script. Tuttavia, \u00e8 possibile utilizzare un workaround per raggiungere mimoLive: Esiste un comando \"do shell script\" in Apple Script che consente di eseguire comandi bash come \"curl\". La sezione precedente spiega come creare un comando curl per manipolare un determinato livello o valore di livello.<\/p>\n\n\n<section class=\"boinx_exclamation\">\n    <div class=\"main_div_exclamation\">\n        <div class=\"left_div_icon_exclamation\">\n                <i class=\"icon_exclamation\">\u2757<\/i>\n        <\/div>\n\n        <div class=\"right_div_text_exclamation\">\n                <div><p class=\"text_exclamation_headline\">Le insidie di Apple Script<\/p><\/div>\n                <div><p class=\"text_exclamation\">In Apple Script ci sono due insidie quando si porta un comando da terminale come \"curl\" nel comando do shell script: 1. Tutti i \" devono essere preceduti da un \\code(0144) per far capire al parser Apple-Script che non sono i marcatori finali del comando do shell script. La \\ \u00e8 un carattere di escape per indicare al parser di ignorare il carattere successivo. 2. Se concatena pi\u00f9 parti di testo con &amp;, per Apple Script si tratta di un \"elenco di testo\" e non di un testo singolo. Il comando do shell non funziona con gli \"elenchi di testo\" e pertanto \u00e8 necessario riconvertirli in un testo singolo con il comando \"as text\" alla fine del testo del comando curl.<\/p><\/div>\n        <\/div>    \n    <\/div>\n<\/section>\n\n\t\t<style>.boinx_exclamation {\n    margin:30px 0;\n    padding:10px;\n    background-color:rgb(242,222,222);\n    border-radius: 8px;\n}\n.icon_exclamation {\n    display:block;\n    padding:5px;\n    font-size:80px;\n    color:rgb(184,74,72);\n    line-height:60px;\n}\n.text_exclamation {\n    color:rgb(184,74,72);\n}\n\n.text_exclamation_headline{\n    font-weight:bold;\n    color:rgb(184,74,72);\n}\n\n\n.main_div_exclamation\n{\n    display:flex !IMPORTANT;\n    flex-wrap: wrap;\n    flex-direction: row;\n    justify-content : flex-start;\n    align-items : flex-start\n    align-content : flex-start;\n    \n}\n\n.left_div_icon_exclamation{\n    display:flex !IMPORTANT;\n    width:80px;\n    padding:10px;\n    margin:20px 20px 20px 0;\n    height:40px;\n}\n.right_div_text_exclamation{\n    display:flex !IMPORTANT;\n    flex-direction: column;\n    flex-grow: 1;\n    width:200px;\n    padding:10px;\n    margin:0;\n}<\/style>\n\t\t\n\n\n<p>Una volta che si \u00e8 soddisfatti del comando curl, \u00e8 necessario inserirlo in un comando \"do shell script\" in Apple Script:<\/p>\n\n\n<section class=\"boinx_section\">\n    <div class=\"main_div\">\n        <div class=\"left_div_icon\">\n                <i class=\"icon_highlight\">*<\/i>\n        <\/div>\n\n        <div class=\"right_div_text\">\n                <div><p class=\"text_highlight_headline\">Si assicuri di sostituire xxxxxxxxx con il suo Endpoint API di livello specifico!<\/p><\/div>\n                <div><p class=\"text_highlight\"><\/p><\/div>\n        <\/div>    \n    <\/div>\n<\/section>\n\n\t\t<style>.boinx_section {\n    margin:30px 0;\n    padding:10px;\n    background-color:rgb(217,237,248);\n    border-radius: 8px;\n  \n}\n\n.icon_highlight {\n    display:block;\n    padding:5px;\n    font-size:80px;\n    color:rgb(58,134,172);\n    line-height:60px;\n}\n\n.text_highlight {\n    color:rgb(58,134,172);\n}\n\n.text_highlight_headline{\n    font-weight:bold;\n    color:rgb(58,134,172);\n}\n\n.main_div\n{\n    display:flex !IMPORTANT;\n    flex-wrap: wrap;\n    flex-direction: row;\n    justify-content : flex-start;\n    align-items : flex-start\n    align-content : flex-start;\n}\n.left_div_icon{\n    display:flex !IMPORTANT;\n    width:40px;\n    padding:0;\n    margin:10px 20px 10px 10px;\n    \n}\n.right_div_text{\n    display:flex !IMPORTANT;\n    flex-direction: column;\n    flex-grow: 1;\n    padding:10px;\n    margin:0;\n    width:200px;\n    }<\/style>\n\t\t\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>set layerAPIEndpoint to \"xxxxxxxxx\" -- in our example this would be \"http:\/\/172.28.30.202:8989\/api\/v1\/documents\/458706932\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B\"\n\nset lowerThirdTitle to \"Hello World!\"\ndo shell script \"curl -d '{\\\"input-values\\\":{\\\"tvGroup_Content__Title\\\":\\\"\" &amp;amp; lowerThirdTitle &amp;amp; \"\\\"}}' -H \\\"Content-Type: application\/json\\\" -X PUT \\\"\" &amp;amp; layerAPIEndpoint &amp;amp; \"\\\"\" as text\n\n<\/code><\/pre>\n\n\n\n<p>Il seguente esempio di script Apple mostra come accendere un layer ogni mezz'ora: Questo potrebbe essere utile per le sovrapposizioni commerciali. Assicuratevi di utilizzare un livello che si spenga dopo un certo tempo (ad esempio, un livello Placer con una sorgente di filmato non in loop).<\/p>\n\n\n<section class=\"boinx_section\">\n    <div class=\"main_div\">\n        <div class=\"left_div_icon\">\n                <i class=\"icon_highlight\">*<\/i>\n        <\/div>\n\n        <div class=\"right_div_text\">\n                <div><p class=\"text_highlight_headline\">Si assicuri di sostituire xxxxxxxxx con il suo Endpoint API di livello specifico!<\/p><\/div>\n                <div><p class=\"text_highlight\"><\/p><\/div>\n        <\/div>    \n    <\/div>\n<\/section>\n\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>-- configure your Layer API Endpoint:\nset layerAPIEndpoint to \"xxxxxxxxx\" -- in our example this would be \"http:\/\/172.28.30.202:8989\/api\/v1\/documents\/458706932\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B\"\n-- repeat endlessly:\nrepeat\n\t-- get the seconds last in this hour\n\tset currentDate to current date\n\tset secondsToNextHour to 3600 - ((minutes of currentDate) * 60 + (seconds of currentDate))\n\t-- --------------------------------------------\n\t-- The following code snippet is useful only if you want to\n\t-- switch the layer live on half hours also.\n\t-- if you don't want this behaviour you can delete this part.\n\t-- --------------------------------------------\n\t-- check if we are currently in the first half of the hour\n\tif secondsToNextHour &amp;gt; 1800 then\n\t\t-- yes, we are in the first half of the hour, so only wait half the time\n\t\tset secondsToNextHour to secondsToNextHour - 1800\n\tend if\n\t-- --------------------------------------------\n\t-- wait until the time to trigger the layer\n\tdelay secondsToNextHour\n\t-- set the specified layer to live:\n\tdo shell script \"curl \\\"\" &amp;amp; layerAPIEndpoint &amp;amp; \"\/setLive\\\"\" as text\n\t-- wait a couple of seconds to make sure we don't glitch in time\n\tdelay 5\nend repeat\n\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Controllo degli elementi dell'interfaccia utente in mimoLive<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Ottenere un <span class=\"caps\">API<\/span> Punto finale<\/h3>\n\n\n\n<p><\/p>\n\n\n\n<p>Gli endpoint API sono essenziali per indirizzare elementi specifici nel suo documento mimoLive. Per un elenco degli endpoint API disponibili, faccia 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>.<br><br>Prima di mimoLive 5.5 era difficile ottenere l'ID del documento e, ad esempio, l'ID del livello con i comandi del terminale, cercando tra le lunghe pagine del sito. <span class=\"caps\">JSON<\/span> dati. Da mimoLive 5.5 \u00e8 molto pi\u00f9 semplice:<\/p>\n\n\n\n<p>Prima di tutto copiare il file mimoLive <span class=\"caps\">HTTP<\/span> base del server <span class=\"caps\">URL<\/span> dalla sezione Controllo remoto della finestra Preferenze di mimoLive (vedi schermata precedente). Aprire un editor di testo (ad esempio TextEdit di Apple) e incollare il contenuto degli Appunti in un nuovo documento di testo. Assicurarsi che ci sia <strong>no<\/strong> backslash alla fine del campo <span class=\"caps\">URL<\/span>! Il risultato dovrebbe essere simile a questo:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:&#47;&#47;172.28.30.202:8989<\/code><\/pre>\n\n\n\n<p>Nella finestra del documento mimoLive con il mouse, \u00e8 possibile fare clic con il tasto destro del mouse (o con il tasto di controllo, o con due dita) sull'oggetto di interesse (ad esempio un livello, una sorgente, un pulsante di un controllo di livello) per ottenere un menu contestuale. C'\u00e8 una voce di menu che permette di copiare l'oggetto <span class=\"caps\">API<\/span> Endpoint per gli Appunti di macOS per utilizzarli in mimoLive <span class=\"caps\">API<\/span> progetto.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" width=\"1000\" height=\"740\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/bc6c7e19-e991-48a0-a9b8-b56d690f19b4.png\" alt=\"\" class=\"wp-image-32492\" style=\"width:501px;height:auto\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/bc6c7e19-e991-48a0-a9b8-b56d690f19b4.png 1000w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/bc6c7e19-e991-48a0-a9b8-b56d690f19b4-300x222.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/bc6c7e19-e991-48a0-a9b8-b56d690f19b4-768x568.png 768w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/bc6c7e19-e991-48a0-a9b8-b56d690f19b4-16x12.png 16w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>A volte \u00e8 importante intervenire su una variante specifica del livello piuttosto che sul livello in generale. Se si fa clic con il tasto destro del mouse sul parametro di un livello, si vedr\u00e0 che ci sono diverse opzioni <span class=\"caps\">API<\/span> per il livello live corrente o per la variante specifica del livello:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1000\" height=\"356\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/6120370f-a575-43db-891b-ef3a91d5aec5.png\" alt=\"\" class=\"wp-image-32493\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/6120370f-a575-43db-891b-ef3a91d5aec5.png 1000w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/6120370f-a575-43db-891b-ef3a91d5aec5-300x107.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/6120370f-a575-43db-891b-ef3a91d5aec5-768x273.png 768w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/6120370f-a575-43db-891b-ef3a91d5aec5-18x6.png 18w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<p>Tornare all'editor di testo e incollare il file appena copiato <span class=\"caps\">API<\/span> Punto finale dopo il <span class=\"caps\">HTTP<\/span> Base del server <span class=\"caps\">URL<\/span>. Ora il <span class=\"caps\">URL<\/span> nel browser di testo dovrebbe avere il seguente aspetto:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:&#47;&#47;172.28.30.202:8989\/api\/v1\/documents\/458706932\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B<\/code><\/pre>\n\n\n\n<p>Questo \u00e8 l'ultimo <span class=\"caps\">API<\/span> per indirizzare un livello nel documento. In questo esempio <strong>458706932<\/strong> \u00e8 l'ID del documento e <strong>BA868701-8131-49CB-8EDD-8C7E6E7CD60B<\/strong> \u00e8 l'ID di livello specifico di un certo livello in questo documento.<\/p>\n\n\n\n<p>Cliccando con il tasto destro del mouse su alcuni elementi dell'interfaccia utente, viene visualizzato un menu contestuale per ottenere l'endpoint API specifico:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Fonti<\/li>\n\n\n\n<li>Strati<\/li>\n\n\n\n<li>Varianti di livello<\/li>\n\n\n\n<li>Parametro del livello<\/li>\n\n\n\n<li>Destinazioni di uscita<\/li>\n\n\n\n<li>Set di livelli<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"266\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.19.00-1024x266.png\" alt=\"\" class=\"wp-image-39712\" style=\"width:575px;height:auto\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.19.00-1024x266.png 1024w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.19.00-300x78.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.19.00-768x199.png 768w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.19.00-18x5.png 18w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.19.00.png 1132w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Esempio: Accensione e accensione <span class=\"caps\">SPENTO<\/span> a Strato<\/h3>\n\n\n\n<p>Con i dati recuperati <span class=\"caps\">API<\/span> Endpoint per un determinato livello \u00e8 possibile attivarlo e disattivarlo con i seguenti comandi da terminale.<\/p>\n\n\n<section class=\"boinx_section\">\n    <div class=\"main_div\">\n        <div class=\"left_div_icon\">\n                <i class=\"icon_highlight\">*<\/i>\n        <\/div>\n\n        <div class=\"right_div_text\">\n                <div><p class=\"text_highlight_headline\"><\/p><\/div>\n                <div><p class=\"text_highlight\">Assicurarsi di sostituire xxxxxxxxx con l'endpoint API del passo precedente!<\/p><\/div>\n        <\/div>    \n    <\/div>\n<\/section>\n\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl xxxxxxxxx\/setLive\ncurl xxxxxxxxx\/setOff\ncurl xxxxxxxxx\/toggleLive\n# our example will look like this:\ncurl http:\/\/172.28.30.202:8989\/api\/v1\/documents\/458706932\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B\/setLive<\/code><\/pre>\n\n\n<section class=\"boinx_section\">\n    <div class=\"main_div\">\n        <div class=\"left_div_icon\">\n                <i class=\"icon_highlight\">*<\/i>\n        <\/div>\n\n        <div class=\"right_div_text\">\n                <div><p class=\"text_highlight_headline\">Gli URL funzionano anche in un browser Internet<\/p><\/div>\n                <div><p class=\"text_highlight\">Questi URL (senza il comando \"curl\") possono essere inseriti anche nella barra degli indirizzi di un browser Internet. Una volta premuto \"return\", il browser chiamer\u00e0 il server HTTP di mimoLive ed eseguir\u00e0 il comando specificato. Se si dispone di dati JSON da inviare all'endpoint dell'API, \u00e8 possibile aggiungere anche questi all'URL; vedere \"Conversione di un comando CURL con dati JSON in un URL HTTP per semplici richieste HTTP\" di seguito.<\/p><\/div>\n        <\/div>    \n    <\/div>\n<\/section>\n\n\n\n\n<p>Un modo semplice per ottenere l'URL HTTP completo per attivare o disattivare lo stato Live di un livello \u00e8 quello di fare clic con il pulsante destro del mouse sul pulsante Live del livello per visualizzare un menu contestuale e selezionare 'Copia URL per impostare il Live del livello'. Questo copier\u00e0 l'URL negli appunti per poterlo utilizzare. Nella schermata, pu\u00f2 vedere il menu contestuale per il pulsante Live di un livello Lower Third.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"249\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.13.16-1024x249.png\" alt=\"\" class=\"wp-image-39711\" style=\"width:643px;height:auto\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.13.16-1024x249.png 1024w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.13.16-300x73.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.13.16-768x187.png 768w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.13.16-18x4.png 18w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.13.16.png 1174w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Esempio: Modifica del valore di un livello<\/h3>\n\n\n\n<p>- Tutti i parametri di un livello possono essere impostati tramite l'opzione <span class=\"caps\">HTTP<\/span> <span class=\"caps\">API<\/span>. \u00c8 necessario trovare la chiave corretta per impostare un nuovo valore. Nel nostro esempio, imposteremo il titolo di un oggetto <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/terzo-inferiore\/\">Terzo strato inferiore<\/a> con la chiave tvGroup_Content__Title. Poich\u00e9 \u00e8 necessario inviare il nuovo valore in un file <span class=\"caps\">JSON<\/span> al file <span class=\"caps\">HTTP<\/span> con un server <span class=\"caps\">INSERIRE<\/span> richiesta il comando curl diventa un po' affollato.<\/p>\n\n\n\n<p><i>*<\/i>Assicuratevi di sostituire xxxxxxxxx con il vostro strato specifico. <span class=\"caps\">API<\/span> Punto finale!<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl -d '{\"input-values\":{\"tvGroup_Content__Title\":\"My new title\"}}' -H \"Content-Type: application\/json\" -X PUT \"xxxxxxxxx\"\n<\/code><\/pre>\n\n\n\n<p>Un modo rapido per ottenere un URL HTTP completo per attivare l'aggiornamento di una propriet\u00e0 di livello \u00e8 quello di fare clic con il pulsante destro del mouse sul nome della propriet\u00e0, rivelando un menu contestuale, e selezionare \"Copia URL per modificare '.....'\". \"Questo comando del menu copia un URL HTTP negli appunti che, una volta richiamato (ad esempio, in un browser Internet), imposter\u00e0 la propriet\u00e0 al suo valore attuale. Esaminando l'URL, pu\u00f2 determinare quale parte di esso deve essere modificata per inviare i suoi dati a questa propriet\u00e0. Nella schermata, pu\u00f2 vedere il menu contestuale per copiare l'URL per modificare il sottotitolo di un livello Lower Third.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"752\" height=\"334\" src=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.05.39.png\" alt=\"\" class=\"wp-image-39708\" style=\"width:349px;height:auto\" srcset=\"https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.05.39.png 752w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.05.39-300x133.png 300w,  https:\/\/mimolive.com\/wp-content\/uploads\/2023\/03\/Screenshot-2024-10-08-at-10.05.39-18x8.png 18w\" sizes=\"(max-width: 752px) 100vw, 752px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:\/\/127.0.0.1:8989\/api\/v1\/documents\/xxxxxxxxxxxx\/layers\/yyyyyyyyyyyy\/variants\/zzzzzzzzzzzz?include=data.attributes.input-values&amp;fields&#91;input-values]=tvGroup_Content__Subtitle&amp;update=%7B%22input-values%22:%7B%22tvGroup_Content__Subtitle%22:%22<strong>mimoLive%20User<\/strong>%22%7D%7D<\/code><\/pre>\n\n\n<section class=\"boinx_exclamation\">\n    <div class=\"main_div_exclamation\">\n        <div class=\"left_div_icon_exclamation\">\n                <i class=\"icon_exclamation\">\u2757<\/i>\n        <\/div>\n\n        <div class=\"right_div_text_exclamation\">\n                <div><p class=\"text_exclamation_headline\">Il nuovo valore nell'URL deve essere codificato come URL!<\/p><\/div>\n                <div><p class=\"text_exclamation\">In questo esempio, lo spazio tra \"mimoLive\" e \"User\" \u00e8 codificato come .<\/p><\/div>\n        <\/div>    \n    <\/div>\n<\/section>\n\n\n\n\n<h2 class=\"wp-block-heading\">Le migliori pratiche<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Raccolta di utili <span class=\"caps\">API<\/span> Comandi da esplorare<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Impostazione del <span class=\"caps\">RTMP<\/span> <span class=\"caps\">URL<\/span> e la chiave di streaming di una destinazione di uscita per lo streaming in diretta:<\/h4>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl --data '{\"data\": { \"attributes\": {\"settings\": {\"rtmpurl\":\"rtmp:\/\/mystreaminghost.com\", \"streamingkey\":\"<strong>MYTOTALLYSECRETSTREAMKEY<\/strong>\"} } } }' --request PATCH http:\/\/192.168.0.100:8989\/api\/v1\/documents\/xxxxxxxxx\/output-destinations\/yyyyyyyyyyyyy<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Impostazione del nome e del percorso di una destinazione di output del file writer<\/h4>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl --data '{\"data\": { \"attributes\": {\"settings\": { \"location\": \"<strong>~\/Destktop\/Recordings<\/strong>\", \"filename\": \"<strong>MyGreatShow %year-%month-%day-%hour-%minute.%extension<\/strong>\" } } } }' --request PATCH http:\/\/192.168.0.100:8989\/api\/v1\/documents\/xxxxxxxxxxxx\/output-destinations\/yyyyyyyyyyyy<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Impostazione della sorgente video di un livello di posizionamento<\/h4>\n\n\n\n<p>yyyyyyyyyyyyyyyyyy sar\u00e0 il <span class=\"caps\">UUID<\/span> della sorgente video. (e.g CCAF4418-367A-415F-AD25-6536C3EF3512)<\/p>\n\n\n\n<p>xxxxxxxxxxxxx sar\u00e0 il <span class=\"caps\">API<\/span> endpoint di una determinata variante di livello. (e.g. http:\/\/172.28.30.202:8989\/api\/v1\/documents\/2014814935\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B\/variants\/AA868701-8131-49CB-8EDD-8C7E6E7CD60A)<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl -d '{\"input-values\":{\"tvIn_VideoSourceAImage\":\"yyyyyyyyyyyyy\"}}' -H \"Content-Type: application\/json\" -X PUT \"xxxxxxxxxxxxxxxx\"<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Impostazione del volume di un livello dotato di manopola del volume audio<\/h4>\n\n\n\n<p>Con questo comando curl, \u00e8 possibile modificare il volume audio di un livello che ha una manopola di regolazione dell'audio (come l'opzione <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/placer\/\">Strato di placer<\/a>). Il valore \"volume\" pu\u00f2 assumere valori compresi tra 0,0 e 1,0.<\/p>\n\n\n\n<p>xxxxxxxxxxxxx sar\u00e0 il <span class=\"caps\">API<\/span> punto finale del livello (ad es. http:\/\/10.101.2.2:8989\/api\/v1\/documents\/13195157\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B)<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl -d '{\"volume\": 0.5}' -H \"Content-Type: application\/json\" -X PUT \"xxxxxxxxxxxxxxxx\"<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Impostazione del colore di un livello di sfondo<\/h4>\n\n\n\n<p>xxxxxxxxxxxxx sar\u00e0 il <span class=\"caps\">API<\/span> endpoint di una determinata variante di livello. (e.g. http:\/\/172.28.30.202:8989\/api\/v1\/documents\/2014814935\/layers\/BA868701-8131-49CB-8EDD-8C7E6E7CD60B\/variants\/AA868701-8131-49CB-8EDD-8C7E6E7CD60A)<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl -d '{\"input-values\":{\"tvGroup_Appearance__Color_1\":{\"red\": 1.0, \"blue\": 0.5, \"green\": 0, \"alpha\": 0.5}}}' -H \"Content-Type: application\/json\" -X PUT \"xxxxxxxxxxxxxxxx\"<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Cancellazione del percorso del file di una sorgente video dell'ultima registrazione<\/h4>\n\n\n\n<p>Nel vostro <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/e-il-repository-delle-fonti\/\">Repository delle fonti<\/a>, si pu\u00f2 avere un <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/ultima-fonte-di-registrazione\/\">Fonte dell'ultima registrazione<\/a> che consentir\u00e0 di accedere all'ultima registrazione annunciata da qualsiasi destinazione di uscita di registrazione file. In un'applicazione kiosk, sar\u00e0 necessario cancellare l'ultimo percorso di registrazione in modo che l'utente successivo della stazione non sia in grado di rivedere la registrazione dell'utente precedente. Con le seguenti opzioni <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/automazione\/\">Comando del livello di automazione<\/a> \u00e8 possibile cancellare queste informazioni dall'Origine ultima registrazione:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>httpRequest(http:\/\/127.0.0.1:8989\/api\/v1\/documents\/2014814935\/sources\/2014814935-413AC0A3-AC43-4A7D-A228-6D0181BF1476?update=%7B%22filepath%22%3A%22%22%7D)<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Immagazzinamento <span class=\"caps\">JSON<\/span> Dati nel documento mimoLive<\/h4>\n\n\n\n<p>Con l'endpoint \"datastores\" \u00e8 possibile memorizzare qualsiasi tipo di dati nel documento mimoLive per conservarli durante la ricarica del documento. \u00c8 necessario utilizzare un oggetto \"<span class=\"caps\">INSERIRE<\/span>\" per salvare i dati e un \"<span class=\"caps\">GET<\/span>\" per rileggerlo. \u00c8 possibile memorizzare qualsiasi tipo di dati, ma in questo esempio stiamo memorizzando <span class=\"caps\">JSON<\/span> Data perch\u00e9 questo sembra essere un caso d'uso molto comune. Se si desidera memorizzare dati diversi, \u00e8 necessario regolare il parametro -H di conseguenza.<\/p>\n\n\n\n<p>Comando Curl per memorizzare i dati:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl \u2014data '{\"myData1\": 1.5, \"myData2\":\"Some text\"}' -H \"Content-Type: application\/json\" -X PUT http:\/\/127.0.0.1:8989\/api\/v1\/documents\/1643911183\/datastores\/myDataStore1<\/code><\/pre>\n\n\n\n<p>Comando Curl per leggere i dati:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl -X <span class=\"caps\">GET<\/span> http:\/\/127.0.0.1:8989\/api\/v1\/documents\/1643911183\/datastores\/myDataStore1<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Aggiornare il percorso del file di origine di una sorgente di file multimediale<\/h4>\n\n\n\n<p>\u00c8 possibile che si voglia cambiare il filmato riprodotto o sostituire una pubblicit\u00e0 mostrata con una <a href=\"https:\/\/mimolive.com\/it\/manuale-duso\/file-multimediale\/\">Fonte del file multimediale<\/a>. Questo pu\u00f2 essere fatto con un comando di aggiornamento eseguito sul sorgente <span class=\"caps\">API<\/span> endpoint.<\/p>\n\n\n\n<p>Assicurarsi che la modalit\u00e0 di riferimento del file della sorgente multimediale sia impostata su \"Percorso assoluto\". Ottenere il <span class=\"caps\">API<\/span> endpoint di questa sorgente facendo clic con il tasto destro del mouse su di essa nella colonna di sinistra e selezionando \"Copia sorgente\". <span class=\"caps\">API<\/span> Endpoint to Clipboard\" nel menu contestuale. Realizzare un <span class=\"caps\">URL<\/span> della forma seguente:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:\/\/127.0.0.1:8989\/api\/v1\/documents\/&lt;YOUR DOCUMENT ID&gt;\/sources\/&lt;SOURCE API ENDPOINT&gt;?update={\"filepath\":\"&lt;LOCAL FILE PATH&gt;\"}<\/code><\/pre>\n\n\n\n<p>Assicurarsi di codificare il file <span class=\"caps\">JSON<\/span> dati nel <span class=\"caps\">URL<\/span> per ottenere un valido <span class=\"caps\">URL<\/span> che pu\u00f2 essere usato in un comando curl come questo:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl -X GET http:\/\/127.0.0.1:8989\/api\/v1\/documents\/1748069974\/sources\/1748069974-334DA2E4-DFF3-4225-8F4A-D09D40A6BD5D?update=%7B%22filepath%22:%22~\/Desktop\/Screen%20Recording%202022-07-27%20at%2012.18.23.mov%22%7D<\/code><\/pre>\n\n\n\n<p><i>*<\/i>Si noti che \u00e8 possibile utilizzare \"~\" all'inizio del percorso del file per fare riferimento alla home directory dell'utente corrente.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Conversione di un <span class=\"caps\">CURVA<\/span> con il comando <span class=\"caps\">JSON<\/span> Dati a un <span class=\"caps\">HTTP<\/span> <span class=\"caps\">URL<\/span> per semplice <span class=\"caps\">HTTP<\/span> Richieste<\/h3>\n\n\n\n<p>A volte \u00e8 possibile inviare solo un semplice <span class=\"caps\">HTTP<\/span> a mimoLive invece di usare un comando curl, ad esempio nel caso di applicazioni di automazione di terze parti o dello stesso Automation Layer mimoLive. Ci\u00f2 richiede la conversione del blocco dati del comando curl in parte del file <span class=\"caps\">URL<\/span>. \u00c8 possibile farlo nel modo seguente:<\/p>\n\n\n\n<p>Supponiamo di avere il seguente comando curl:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>curl --data '{\"data\": { \"attributes\": {\"settings\": {\"rtmpurl\":\"rtmp:\/\/mystreaminghost.com\", \"streamingkey\":\"MYTOTALLYSECRETSTREAMKEY\"} } } }' --request PATCH http:\/\/192.168.0.100:8989\/api\/v1\/documents\/458706932\/output-destinations\/4D072496-1CE3-418E-B73E-59A2927A2110<\/code><\/pre>\n\n\n\n<p>Si prende il <strong><span class=\"caps\">HTTP<\/span> parte<\/strong> prima:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:&#47;&#47;192.168.0.100:8989\/api\/v1\/documents\/458706932\/output-destinations\/4D072496-1CE3-418E-B73E-59A2927A2110<\/code><\/pre>\n\n\n\n<p>Aggiungi <strong>aggiornamento=<\/strong> ad esso:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:&#47;&#47;192.168.0.100:8989\/api\/v1\/documents\/458706932\/output-destinations\/4D072496-1CE3-418E-B73E-59A2927A2110?update=<\/code><\/pre>\n\n\n\n<p>Ottenere tutte le <strong>-stringa di dati<\/strong> e rimuovere tutti gli spazi non necessari:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>{\"data\":{\"attributes\":{\"settings\":{\"rtmpurl\":\"rtmp:\/\/mystreaminghost.com\",\"streamingkey\":\"MYTOTALLYSECRETSTREAMKEY\"}}}}<\/code><\/pre>\n\n\n\n<p>Codificare questo dato nel suo <span class=\"caps\">URL<\/span> forma da <strong>evasione dei caratteri non conformi all'URL<\/strong> (ad esempio, utilizzando https:\/\/www.urlencoder.org\/)<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>%7B%22data%22%3A%7B%22attributes%22%3A%7B%22settings%22%3A%7B%22rtmpurl%22%3A%22rtmp%3A%2F%2Fmystreaminghost.com%22%2C%22streamingkey%22%3A%22MYTOTALLYSECRETSTREAMKEY%22%7D%7D%7D%7D<\/code><\/pre>\n\n\n\n<p>Infine, mettete tutto questo <strong>dopo l'\"aggiornamento\".<\/strong> in questo modo:<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-translation=\"\"><code>http:&#47;&#47;192.168.0.100:8989\/api\/v1\/documents\/458706932\/output-destinations\/4D072496-1CE3-418E-B73E-59A2927A2110?update=%7B%22data%22%3A%7B%22attributes%22%3A%7B%22settings%22%3A%7B%22rtmpurl%22%3A%22rtmp%3A%2F%2Fmystreaminghost.com%22%2C%22streamingkey%22%3A%22MYTOTALLYSECRETSTREAMKEY%22%7D%7D%7D%7D<\/code><\/pre>\n\n\n\n<p>Ora \u00e8 possibile utilizzare questo <span class=\"caps\">URL<\/span> in un semplice <span class=\"caps\">HTTP<\/span> richiesta.<\/p>\n\n\n\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Prerequisites &#8211; Open the document you want to manipulate in mimoLive.&#8211; Make sure the document is in a finished state so that the API endpoints like Layers do not change anymore. Please be aware that if you remove a layer and add it again this layer will have a different Layer ID when talking to [&hellip;]<\/p>","protected":false},"author":3,"featured_media":0,"parent":32486,"menu_order":2,"template":"","meta":{"_acf_changed":false,"_angie_page":false,"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[258],"tags":[],"class_list":["post-32490","user-manual","type-user-manual","status-publish","hentry","category-manual"],"acf":[],"_links":{"self":[{"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32490","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":8,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32490\/revisions"}],"predecessor-version":[{"id":39724,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32490\/revisions\/39724"}],"up":[{"embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/user-manual\/32486"}],"wp:attachment":[{"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/media?parent=32490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/categories?post=32490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mimolive.com\/it\/wp-json\/wp\/v2\/tags?post=32490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}