Metainformationen zur Seite
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
plugins:text2speech:interface [2022/09/10 12:18] – angelegt - Externe Bearbeitung 127.0.0.1 | plugins:text2speech:interface [2022/09/16 17:04] (aktuell) – Michael Schlenstedt | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Interface | ====== Interface | ||
- | |||
- | |||
- | |||
- | ===== ===== | ||
- | |||
- | [ [[#flat|]] ] [ [[# | ||
===== T2S Interface ===== | ===== T2S Interface ===== | ||
Zusätzlich stellt das Plugin eine bi-direktionale Schnittstelle für Drittanwendungen bzw. Plugins zur Verfügung. Mit Hilfe dieser Schnittstelle können T2S Requests per http-POST Befehl oder JSON request geschickt werden, welche dann vom T2S Plugin in MP3 Dateien umgewandelt und gespeichert werden. Die notwendigen Infos zum weiteren Prozessieren in Drittanwendung/ | Zusätzlich stellt das Plugin eine bi-direktionale Schnittstelle für Drittanwendungen bzw. Plugins zur Verfügung. Mit Hilfe dieser Schnittstelle können T2S Requests per http-POST Befehl oder JSON request geschickt werden, welche dann vom T2S Plugin in MP3 Dateien umgewandelt und gespeichert werden. Die notwendigen Infos zum weiteren Prozessieren in Drittanwendung/ | ||
- | |||
- | \\ | ||
- | |||
==== T2S Request ==== | ==== T2S Request ==== | ||
Zeile 23: | Zeile 14: | ||
http://< | http://< | ||
</ | </ | ||
- | |||
- | |||
Um den Text, der in eine MP3 umgewandelt werden soll, mitzuschicken muss in der URL-Syntax der Drittanwendung/ | Um den Text, der in eine MP3 umgewandelt werden soll, mitzuschicken muss in der URL-Syntax der Drittanwendung/ | ||
Zeile 52: | Zeile 41: | ||
} | } | ||
</ | </ | ||
- | |||
- | |||
Die verwendeten Parameter sind grundsätzlich frei wählbar, müssen dann nur für den POST request in die entsprechenden Variablen geschrieben werden. | Die verwendeten Parameter sind grundsätzlich frei wählbar, müssen dann nur für den POST request in die entsprechenden Variablen geschrieben werden. | ||
Zeile 71: | Zeile 58: | ||
$jsonDataEncoded = json_encode($jsonData); | $jsonDataEncoded = json_encode($jsonData); | ||
</ | </ | ||
- | |||
- | |||
Das war es im Grunde schon zur Vorbereitung des T2S Requests. Mit Hilfe der URL und der JSON Daten muss jetzt der Request an das Text2speech Plugin zur Generierung der MP3 Files gesendet werden. Um eine erfolgreiche Übertragung zu gewährleisten muss dem http-request im content header noch das entsprechende Datenformat mitgegeben werden. Dieses lautet ' | Das war es im Grunde schon zur Vorbereitung des T2S Requests. Mit Hilfe der URL und der JSON Daten muss jetzt der Request an das Text2speech Plugin zur Generierung der MP3 Files gesendet werden. Um eine erfolgreiche Übertragung zu gewährleisten muss dem http-request im content header noch das entsprechende Datenformat mitgegeben werden. Dieses lautet ' | ||
- | |||
- | \\ | ||
- | |||
==== Kompletter Request ==== | ==== Kompletter Request ==== | ||
Zeile 85: | Zeile 67: | ||
**kompletter T2S Request** | **kompletter T2S Request** | ||
- | < | + | < |
// API Url | // API Url | ||
Zeile 139: | Zeile 121: | ||
curl_close($ch); | curl_close($ch); | ||
</ | </ | ||
- | |||
- | |||
- | |||
- | \\ | ||
Zeile 151: | Zeile 129: | ||
**T2S Request validierung** | **T2S Request validierung** | ||
- | < | + | < |
// Make sure that it is a POST request. | // Make sure that it is a POST request. | ||
if(strcasecmp($_SERVER[' | if(strcasecmp($_SERVER[' | ||
Zeile 179: | Zeile 157: | ||
return ($decoded); | return ($decoded); | ||
</ | </ | ||
- | |||
- | |||
- | |||
- | \\ | ||
- | |||
==== T2S Answer ==== | ==== T2S Answer ==== | ||
Zeile 286: | Zeile 259: | ||
) | ) | ||
- | </ | ||
- | |||
- | < | ||
- | |||
</ | </ | ||
Zeile 311: | Zeile 280: | ||
* im Key **success** befindet sich der Rückgabecode (**1 = Success, 2 = Warning, 3 = Error**) | * im Key **success** befindet sich der Rückgabecode (**1 = Success, 2 = Warning, 3 = Error**) | ||
* im Key **logging** befindet sich das komplette Logging (für Drittanwendungen nutzbar) | * im Key **logging** befindet sich das komplette Logging (für Drittanwendungen nutzbar) | ||
- | |||
- | \\ | ||
- | |||
Das generierte JSON file hat einen Dateinamen analog zum Dateinamen der generierten MP3 Dieser Name ist der MD5 gehashte Text, beide Files liegen im Loxberry unter folgendem Pfad (Samba share). | Das generierte JSON file hat einen Dateinamen analog zum Dateinamen der generierten MP3 Dieser Name ist der MD5 gehashte Text, beide Files liegen im Loxberry unter folgendem Pfad (Samba share). | ||
Zeile 325: | Zeile 291: | ||
**Beispiel aus Sonos Plugin (PHP)** | **Beispiel aus Sonos Plugin (PHP)** | ||
- | < | + | < |
// NOTE: path been generated by variables | // NOTE: path been generated by variables | ||
Zeile 375: | Zeile 341: | ||
$sonos-> | $sonos-> | ||
</ | </ | ||
- | |||
- | |||
- | |||
- | \\ | ||
- | |||
Wenn Unterstützung während der Entwicklung notwendig ist bin ich gerne behilflich. | Wenn Unterstützung während der Entwicklung notwendig ist bin ich gerne behilflich. |