mimoLive® - Manuale d'uso

Selettori generici
Solo corrispondenze esatte
Ricerca nel titolo
Ricerca nel contenuto
Selettori del tipo di post

Manuale - Tabella dei contenuti

Esempi di utilizzo dell'API

Indice dei contenuti

Controllo di mimoLive con php

Abbiamo un esempio di script PHP ben documentato su GitHub:
https://github.com/boinx/mimoLive-HTTP-Dimostrazione

Controllo di mimoLive con CURVA

Per controllare mimoLive tramite HTTP è possibile utilizzare il comando bash "curl". Affinché i comandi curl funzionino è necessario trovare l'ID del documento mimoLive che si vuole manipolare.

Controllo di mimoLive con il livello di automazione

Il Livello di automazione possono eseguire alcuni semplici comandi per attivare azioni in mimLive tramite il loro API Endpoint. Dispone anche di un comando httpRequest() per eseguire qualsiasi tipo di GET azioni di richiesta il HTTP API è in grado di fare.

Prerequisiti

- Aprire il documento che si desidera manipolare in mimoLive.
- Assicurarsi che il documento sia in uno stato finito, in modo che gli endpoint dell'API come i livelli non vengano più modificati. Si tenga presente che se si rimuove un livello e lo si aggiunge di nuovo, questo livello avrà 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à l'ID del livello.
- Abilitare il HTTP-Server nelle Preferenze del Controllo remoto di mimoLive. Selezionare l'opzione "Consenti accesso al controllo remoto":

9e0a2b0b 6a64 4093 b15b 24aa12dead32

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. HTTP API.

Ottenere un API Punto finale

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. JSON dati. Da mimoLive 5.5 è molto più semplice:

Prima di tutto copiare il file mimoLive HTTP base del server URL 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 no backslash alla fine del campo URL! Il risultato dovrebbe essere simile a questo:

http://172.28.30.202:8989

Nella finestra del documento mimoLive con il mouse, è 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'è una voce di menu che permette di copiare l'oggetto API Endpoint per gli Appunti di macOS per utilizzarli in mimoLive API progetto.

bc6c7e19 e991 48a0 a9b8 b56d690f19b4

A volte è 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à che ci sono diverse opzioni API per il livello live corrente o per la variante specifica del livello:

6120370f a575 43db 891b ef3a91d5aec5

Tornare all'editor di testo e incollare il file appena copiato API Punto finale dopo il HTTP Base del server URL. Ora il URL nel browser di testo dovrebbe avere il seguente aspetto:

http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B

Questo è l'ultimo API per indirizzare un livello nel documento. In questo esempio 458706932 è l'ID del documento e BA868701-8131-49CB-8EDD-8C7E6E7CD60B è l'ID di livello specifico di un certo livello in questo documento.

Accensione e SPENTO a Strato

Con i dati recuperati API Endpoint per un determinato livello è possibile attivarlo e disattivarlo con i seguenti comandi da terminale.

*

Assicurarsi di sostituire xxxxxxxxx con l'endpoint API del passo precedente!

curl xxxxxxxxx/setLive
curl xxxxxxxxx/setOff
curl xxxxxxxxx/toggleLive
# our example will look like this:
curl http://172.28.30.202:8989/api/v1/documents/458706932/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B/setLive
*

Gli URL funzionano anche in un browser Internet

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à il server HTTP di mimoLive ed eseguirà il comando specificato. Se si dispone di dati JSON da inviare all'endpoint dell'API, è 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.

Modifica del valore di un livello

- Tutti i parametri di un livello possono essere impostati tramite l'opzione HTTP API. È necessario trovare la chiave corretta per impostare un nuovo valore. Nel nostro esempio, imposteremo il titolo di un oggetto Terzo strato inferiore con la chiave tvGroup_Content__Title. Poiché è necessario inviare il nuovo valore in un file JSON al file HTTP con un server INSERIRE richiesta il comando curl diventa un po' affollato.

*Assicuratevi di sostituire xxxxxxxxx con il vostro strato specifico. API Punto finale!

curl -d '{"input-values":{"tvGroup_Content__Title":"My new title"}}' -H "Content-Type: application/json" -X PUT "xxxxxxxxx"

Raccolta di utili API Comandi da esplorare

Impostazione del RTMP URL e la chiave di streaming di una destinazione di uscita per lo streaming in diretta:

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

Impostazione del nome e del percorso di una destinazione di output del file writer

curl --data '{"data": { "attributes": {"settings": { "location": "~/Destktop/Recordings", "filename": "MyGreatShow %year-%month-%day-%hour-%minute.%extension" } } } }' --request PATCH http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59EDA388BB

Impostazione della sorgente video di un livello di posizionamento

yyyyyyyyyyyyyyyyyy sarà il UUID della sorgente video. (e.g CCAF4418-367A-415F-AD25-6536C3EF3512)

xxxxxxxxxxxxx sarà il API 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)

curl -d '{"input-values":{"tvIn_VideoSourceAImage":"yyyyyyyyyyyyy"}}' -H "Content-Type: application/json" -X PUT "xxxxxxxxxxxxxxxx"

Impostazione del volume di un livello dotato di manopola del volume audio

Con questo comando curl, è possibile modificare il volume audio di un livello che ha una manopola di regolazione dell'audio (come l'opzione Strato di placer). Il valore "volume" può assumere valori compresi tra 0,0 e 1,0.

xxxxxxxxxxxxx sarà il API punto finale del livello (ad es. http://10.101.2.2:8989/api/v1/documents/13195157/layers/BA868701-8131-49CB-8EDD-8C7E6E7CD60B)

curl -d '{"volume": 0.5}' -H "Content-Type: application/json" -X PUT "xxxxxxxxxxxxxxxx"

Impostazione del colore di un livello di sfondo

xxxxxxxxxxxxx sarà il API 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)

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"

Cancellazione del percorso del file di una sorgente video dell'ultima registrazione

Nel vostro Repository delle fonti, si può avere un Fonte dell'ultima registrazione che consentirà di accedere all'ultima registrazione annunciata da qualsiasi destinazione di uscita di registrazione file. In un'applicazione kiosk, sarà 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 Comando del livello di automazione è possibile cancellare queste informazioni dall'Origine ultima registrazione:

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)

Immagazzinamento JSON Dati nel documento mimoLive

Con l'endpoint "datastores" è possibile memorizzare qualsiasi tipo di dati nel documento mimoLive per conservarli durante la ricarica del documento. È necessario utilizzare un oggetto "INSERIRE" per salvare i dati e un "GET" per rileggerlo. È possibile memorizzare qualsiasi tipo di dati, ma in questo esempio stiamo memorizzando JSON Data perché questo sembra essere un caso d'uso molto comune. Se si desidera memorizzare dati diversi, è necessario regolare il parametro -H di conseguenza.

Comando Curl per memorizzare i dati:
bc. curl -data '{"myData1": 1.5, "myData2": "Some text"}' -H "Content-Type: application/json" -X INSERIRE http://127.0.0.1:8989/api/v1/documents/1643911183/datastores/myDataStore1

Comando Curl per leggere i dati:
bc. curl -X GET http://127.0.0.1:8989/api/v1/documents/1643911183/datastores/myDataStore1

Aggiornare il percorso del file di origine di una sorgente di file multimediale

È possibile che si voglia cambiare il filmato riprodotto o sostituire una pubblicità mostrata con una Fonte del file multimediale. Questo può essere fatto con un comando di aggiornamento eseguito sul sorgente API endpoint.

Assicurarsi che la modalità di riferimento del file della sorgente multimediale sia impostata su "Percorso assoluto". Ottenere il API endpoint di questa sorgente facendo clic con il tasto destro del mouse su di essa nella colonna di sinistra e selezionando "Copia sorgente". API Endpoint to Clipboard" nel menu contestuale. Realizzare un URL della forma seguente:

http://127.0.0.1:8989/api/v1/documents/<YOUR DOCUMENT ID>/sources/<SOURCE API ENDPOINT>?update={"filepath":"<LOCAL FILE PATH>"}

Assicurarsi di codificare il file JSON dati nel URL per ottenere un valido URL che può essere usato in un comando curl come questo:

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

*Si noti che è possibile utilizzare "~" all'inizio del percorso del file per fare riferimento alla home directory dell'utente corrente.

Controllo di mimoLive con Apple Script

Attualmente mimoLive non supporta nativamente Apple Script. Tuttavia, è 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.

Una volta che si è soddisfatti del comando curl, è necessario inserirlo in un comando "do shell script" in Apple Script:

*Le insidie di Apple Script
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 una \ per far capire al parser Apple-Script che non sono i marcatori finali del comando do shell script. La \ è un carattere di escape che indica al parser di ignorare il carattere successivo.
2. Se si concatenano più parti di testo con &, per Apple Script si tratta di un "elenco di testo" e non di un singolo testo. Il comando do shell non funziona con gli "elenchi di testo" e quindi è necessario convertirli nuovamente in un testo singolo con l'opzione "as text" alla fine del testo del comando curl.

Questo esempio mostra come impostare il titolo di un terzo inferiore:

*Assicuratevi di sostituire xxxxxxxxx con il vostro strato specifico. API Punto finale!

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"
set lowerThirdTitle to "Hello World!"
do shell script "curl -d '{\"input-values\":{\"tvGroup_Content__Title\":\"" &amp; lowerThirdTitle &amp; "\"}}' -H \"Content-Type: application/json\" -X PUT \"" &amp; layerAPIEndpoint &amp; "\"" as text

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).

*Assicuratevi di sostituire xxxxxxxxx con il vostro strato specifico. API Punto finale!

-- configure your Layer API Endpoint:
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"
-- repeat endlessly:
repeat
	-- get the seconds last in this hour
	set currentDate to current date
	set secondsToNextHour to 3600 - ((minutes of currentDate) * 60 + (seconds of currentDate))
	-- --------------------------------------------
	-- The following code snippet is useful only if you want to
	-- switch the layer live on half hours also.
	-- if you don't want this behaviour you can delete this part.
	-- --------------------------------------------
	-- check if we are currently in the first half of the hour
	if secondsToNextHour &gt; 1800 then
		-- yes, we are in the first half of the hour, so only wait half the time
		set secondsToNextHour to secondsToNextHour - 1800
	end if
	-- --------------------------------------------
	-- wait until the time to trigger the layer
	delay secondsToNextHour
	-- set the specified layer to live:
	do shell script "curl \"" &amp; layerAPIEndpoint &amp; "/setLive\"" as text
	-- wait a couple of seconds to make sure we don't glitch in time
	delay 5
end repeat

Conversione di un CURVA con il comando JSON Dati a un HTTP URL per semplice HTTP Richieste

A volte è possibile inviare solo un semplice HTTP 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ò richiede la conversione del blocco dati del comando curl in parte del file URL. È possibile farlo nel modo seguente:

Supponiamo di avere il seguente comando curl:

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

Si prende il HTTP parte prima:

http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110

Aggiungi aggiornamento= ad esso:

http://192.168.0.100:8989/api/v1/documents/458706932/output-destinations/4D072496-1CE3-418E-B73E-59A2927A2110?update=

Ottenere tutte le -stringa di dati e rimuovere tutti gli spazi non necessari:

{"data":{"attributes":{"settings":{"rtmpurl":"rtmp://mystreaminghost.com","streamingkey":"MYTOTALLYSECRETSTREAMKEY"}}}}

Codificare questo dato nel suo URL forma da evasione dei caratteri non conformi all'URL (ad esempio, utilizzando https://www.urlencoder.org/)

%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

Infine, mettete tutto questo dopo l'"aggiornamento". in questo modo:

http://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

Ora è possibile utilizzare questo URL in un semplice HTTP richiesta.

Il vostro feedback

Come valuta la sua esperienza con questa funzione di mimoLive?

Newsletter via e-mail

Italiano

Partecipate alla dimostrazione Zoom® in diretta 24/7

*necessario

Devi caricare i contenuti da reCAPTCHA per inviare il modulo. Si prega di notare che in questo modo si condividono i dati con provider di terze parti.

Ulteriori informazioni