Wissensdatenbank
1000 FAQ, 500 Anleitungen und Lernvideos. Hier gibt es nur Lösungen!
Diese Anleitung erklärt, wie Sie die Kontrolle über Ihre MP3/AAC- oder HLS- Streaming Radio -Streams behalten, indem Sie den Schutz durch einen eindeutigen Schlüssel (Token) aktivieren, um z.B. zu entscheiden, ob ein Hörer Ihren Radiosender hören darf oder nicht.
Vorwort
- Der Grundsatz ist einfach: Bei jeder Verbindung führen Sie eine Anfrage an die Infomaniak API aus, die Ihnen im Gegenzug einen einzigartigen Token mit einer begrenzten und anpassbaren Lebensdauer zurücksendet. Dieser Token ermöglicht es jedem, der ihn besitzt, den Stream während dieser Zeit zu nutzen.
- Sie können einen MP3/AAC- oder HLS-Stream unabhängig voneinander schützen (ebenso wie die Geolokalisierung).
- Die Aktivierung der Einschränkung erfordert eine Änderung der Stream-Konfiguration, die einige Minuten dauern kann, bis sie auf den Servern repliziert wird.
Einen Audio-Stream durch einen Schlüssel schützen
Dazu müssen Sie nur die Restriktionsparameter aufrufen und den Token-Schutz für den Stream aktivieren, den Sie sichern möchten:
- Klicken Sie hier, um auf die Verwaltung Ihres Produkts im Infomaniak Manager zuzugreifen (Hilfe benötigen?).
- Klicken Sie direkt auf den Name des betreffenden Produkts.
- Klicken Sie auf den Namen des betreffenden Audio-Streams.
- Klicken Sie auf Einschränkungen im linken Seitenmenü.
- Wählen Sie HLS bei Bedarf aus.
- Klicken Sie auf das Aktionsmenü ⋮, das sich rechts neben dem betreffenden Element befindet.
- Klicken Sie auf Token-Beschränkung:
Aktivieren Sie dann den Schutz.
Achtung, sobald Sie diese Option aktivieren, wird der Zugriff auf den Stream sofort für neue Verbindungen blockiert. Passen Sie Ihre Player an, um die Einschränkung zu berücksichtigen, wie im folgenden Beispiel gezeigt:
Radio-API-Token erstellen
Um auf die Radio-API zugreifen zu können, müssen Sie sich zunächst mit einem Anwendungstoken authentifizieren. Dieser Schritt muss nur einmal durchgeführt werden. Um diesen Anwendungstoken zu erstellen, nehmen Sie sich dieser andere Leitfaden zur Kenntnis.
Der Bereich ist Radio und die Lebensdauer ist unbegrenzt, um das erneute Generieren eines Codes zu vermeiden. Sobald der Token generiert ist, kopieren Sie ihn und fügen Sie ihn in das untenstehende Beispiel ein.
Beispiel für die Verwendung in der Programmiersprache PHP
Für MP3/AAC oder HLS kann der Code im Wesentlichen derselbe sein, nur die in POST aufgerufene URL ändert sich in ihrer Form.
Fügen Sie unten den generierten Token anstelle des angegebenen ein:
if (!defined('API_TOKEN')) {
define('API_TOKEN', 'AYF5lSh3c7Xy5974Fs12RTkTThujT-L9R4Xk2ZfGyP6sV7QqJ1oC3jD8nFtKzIxUeMw5oNzR6');
}
/**
* Fonction générique pour executer des requêtes cURL
*
* @param string $method Méthode HTTP (GET, POST, PUT, etc...)
* @param string $url Url de l'api a requêter
* @param array $headers Liste des en-têtes HTTP (l'autorisation doit être passée ici avec un ['Authorization: Bearer ']
* @param array $payload Un tableau contenant les données pour créer un token
* @return mixed
*/
function request(string $method, string $url, array $headers = [], array $payload = []): mixed{
// prepare options array
$opts = [
CURLOPT_HTTPHEADER => $headers,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_URL => $url,
CURLOPT_CUSTOMREQUEST => strtoupper($method),
];
// add payload if relevant
if ($payload && $method !== 'GET') {
$opts[CURLOPT_POSTFIELDS] = json_encode($payload);
}
$ch = curl_init();
curl_setopt_array($ch, $opts);
$result = curl_exec($ch);
if(curl_errno($ch)){
throw new Exception(curl_error($ch));
}
$data = json_decode($result, true);
if ($data['result'] === 'error') {
throw new Exception($data['error']['description'] ?? 'an error occured');
}
return $data['data'];
}
Wir werden den Token erstellen. Die URL zur Token-Erstellung setzt sich wie folgt zusammen:
- Für einen MP3/AAC-Stream
POST https://api.infomaniak.com/1/radios/acl/streams/mountpoint.mp3/token
Beispiel zum Schutz von https://newradiotest.ice.infomaniak.ch/newradiotest-128.aac
der Pfad wird: https://api.infomaniak.com/1/radios/acl/streams/newradiotest-128.aac/token
- Für einen HLS-Stream
POST https://api.infomaniak.com/1/radios/acl/hls_streams/<stream>/token
Beispiel zum Schutz von https://myradiostream.radiohls.infomaniak.com/myradiostream/manifest.m3u8
der Pfad wird: https://api.infomaniak.com/1/radios/acl/hls_streams/myradiostream/token
Beispiel im Fall von MP3/AAC, denken Sie daran, anzupassen:
$token = request(
'POST',
'https://api.infomaniak.com/1/radios/acl/streams/newradiotest-128.aac/token',
// en-tête d'authorization
[
'Authorization: Bearer ' . API_TOKEN,
'Content-Type: application/json',
],
/**
* payload pour créer le token, vous pouvez passer les valeurs suivantes
* window | 300 | optionnel | durée de validité du token (default: 5 minutes)
*/
[
'window' => 3600, // 1h validity
]
);
Es ist wichtig zu beachten, dass, wenn dieser Code zum Zeitpunkt des Ladens der Seite generiert wird, der Hörer "window" Sekunden Zeit hat, um die Wiedergabe des Streams zu starten. Nach Ablauf dieser Frist wird der Token ablaufen, und der Stream kann nicht mehr gestartet werden, es sei denn, die Seite wird neu geladen. Je nach Ihren Anforderungen und Ihrem Anwendungsfall muss dieser Zeitraum entsprechend angepasst werden.
Ersetzen Sie unten die URL zum Abspielen Ihres Streams durch die angegebene, wobei der Parameter $token
am Ende erhalten bleibt. Schließlich wird der Player angezeigt (hier ein einfaches HTML5-Tag, aber Sie können natürlich jede beliebige Oberfläche hinzufügen, da der Token in den Parametern $_GET
der URL übergeben wird).
$streamUrl = "https://newradiotest.ice.infomaniak.ch/newradiotest-128.aac?$token";
echo "<audio controls=""><source src="$streamUrl"></audio>";
Dieser Leitfaden beschreibt die Konfiguration eines Players für Ihren Streaming Radio Infomaniak.
Voraussetzungen
Die Optionen des Infomaniak Players konfigurieren
Sobald Sie Ihren Stream mit Ihrem Player verknüpft und Ihren Player erstellt haben:
- Klicken Sie hier, um auf die Verwaltung Ihres Produkts im Manager Infomaniak zuzugreifen (Hilfe benötigen?).
- Klicken Sie direkt auf den Namen, der dem betreffenden Produkt zugewiesen wurde.
- Klicken Sie auf Meine Player im linken Seitenmenü.
- Klicken Sie auf den Namen des Players, den Sie konfigurieren möchten (oder erstellen Sie einen neuen Player):
1. Registerkarte Erscheinung
Hier können Sie die Größe des Players (groß, mittel, mini oder Multi-Radio-Player) und dessen Anzeigeprozentsatz auswählen.
Sie können die Farbe des Hintergrunds, der Schaltflächen und des Textes anpassen:
Ein Umschalter (Toggle Switch) ermöglicht es, die Anzeige der gesendeten Titel mit oder ohne deren Sendezeiten zu aktivieren oder zu deaktivieren:
- Nehmen Sie die Details dazu am Ende dieses Leitfadens zur Kenntnis.
Der Player kann anzeigen:
- eine Illustration, die das Albumcover darstellt, oder ein Ersatzbild, falls es nicht verfügbar ist,
- ein festes Bild (3 Mo max.),
- Ihr Radiosender-Logo, das Sie hier anpassen können:
- eine Visualisierung des Audiospektrums (Spektrogramm / Spektrum).
2. Reiter Übertragung
Hier können Sie Ihre Radiostreams (HLS oder nicht) mit Ihrem Player verbinden, der gerade konfiguriert wird.
Nehmen Sie sich diese andere Anleitung zum Thema der angebotenen Auswahlmöglichkeiten zur Verwaltung des Live-Streams zu Kenntnis:
3. Reiter Miniaturansichten
Hier können Sie Bilder hochladen, die sichtbar sind, wenn der Stream geladen wird oder nicht verfügbar ist/eingeschränkt.
4. Reiter Player-Informationen
Hier können Sie Ihren Player benennen und entscheiden, ob Sie Folgendes anzeigen oder ausblenden möchten:
- der Titel und der Künstler anstelle des Radionamens,
- die Anzahl der Zuhörer,
- das Logo Infomaniak.
5. Reiter Freigabeoptionen
Ein Umschalter (Toggle Switch) ermöglicht es, bestimmte Dienste wie Facebook zu aktivieren oder zu deaktivieren. Sobald aktiviert, wird ein Schaltfläche zum Teilen auf diese Dienste auf Ihrem Player sichtbar:
Details des Diffusions (Reiter #1)
Die Sendeverlauf ermöglicht es, die gesendeten Musiktitel (zwischen 1 und 40) erneut abzuspielen, wenn Ihr Stream vom Typ HLS ist (Sie können dann einen Puffer (Buffer) von 25 Sekunden bis 2 Stunden definieren):
Die Rückwärts- und Wiederholungsfunktion ist standardmäßig nicht aktiviert: Sie bleibt optional, um die Einschränkungen bestimmter Länder oder Radiosender zu respektieren. Sobald sie aktiviert ist, kann der Radiosender-Manager auswählen, welche Streams zur Ausstrahlung verfügbar sein sollen (siehe Registerkarte #2 oben), während der Hörer die Hörqualität im Player auswählen kann:
Position & Integration des Sendungsverlaufs
Die Liste ist wahlweise einsehbar:
- direkt unter dem Player,
- im Player,
- oder verlagerbar in die Integration Ihrer Website…
Tatsächlich ist es möglich, die Historie in einem zweiten iframe anzuzeigen, der sich von dem des Haupt-Players unterscheidet. Beispiel-URL für den Player:https://player-radio.infomaniak.com/2/prod/super/7cbaa24a-3510-47a4-b41e-b99218bfd507
Und für das ausgelagerte Archiv:https://player-radio.infomaniak.com/2/prod/history
Die beiden iframes müssen auf derselben Seite integriert werden und kommunizieren miteinander, um den Verlauf zu aktualisieren oder einen zuvor gesendeten Titel zu starten.
Ein zweiter Integrationsmodus ermöglicht es, einen autonomen Verlauf anzuzeigen, ohne ein Haupt-Iframe. Es reicht aus, die ID des Players zur URL hinzuzufügen:https://player-radio.infomaniak.com/2/prod/history/7cbaa24a-3510-47a4-b41e-b99218bfd507
Dieser Modus eignet sich beispielsweise für Nutzer eines anderen Players, die nur den Titelverlauf anzeigen möchten.
Diese Anleitung erklärt, wie Sie die Audio-Streams von einem Ihrer Infomaniak Streaming Radio zu einem anderen Ihrer Radios, das sich in derselben Organisation befindet, übertragen.
Nehmen Sie diese Anleitung zur Kenntnis, um alle Streams eines Streaming Radio an einen neuen Besitzer zu übertragen.
Audiostreams übertragen
Dazu:
- Klicken Sie hier, um auf die Verwaltung Ihres Produkts im Infomaniak Manager zuzugreifen (Hilfe benötigen?).
- Klicken Sie direkt auf den Namen , der dem betreffenden Produkt zugeordnet ist.
- Klicken Sie auf das Aktionsmenü ⋮, das sich rechts neben dem betreffenden Element befindet.
- Wählen Sie Übertragen:
- Suchen und bestätigen Sie den Namen des anderen Radios, das Sie in derselben Organisation besitzen.
- Bestätigen Sie die Übertragung:
Aktualisieren Sie die Seiten des Managers bei Bedarf, um die angezeigten Informationen zu aktualisieren.