|
|
Développeurs
FStream possède quelques fonctionnalités destiné aux développeurs. Vous pouvez trouver ici de l'aide à propos de ces fonctionnalités.
-
AppleScript
FStream reconnait la technologie de scriptage d'Apple : AppleScript.
Vous pouvez obtenir la liste complète des commandes via l'application Script Editor de votre dossier Application. Vous devez aller dans le menu "File", puis "Open Dictionary" et sélectionner "FStream".
Voici quelques exemples de scripts :
Démarrer la lecture de la webradio sélectionnée dans FStream
tell application "FStream"
startPlaying
end tell
Stopper la lecture de la webradio sélectionnée dans FStream
tell application "FStream"
stopPlaying
end tell
Démarrer une session d'enregistrement dans FStream
tell application "FStream"
startRecording
end tell
Arrêter la session d'enregistrement dans FStream
tell application "FStream"
stopRecording
end tell
Obtenir un arbre des radios favorites
tell application "FStream"
treeOfPlaylist
end tell
-
PlugIns:
FStream gère les PlugIns pour étendre ses fonctionnalités.
Pour le moment, seuls les skins sont reconnus par FStream. Les skins sont des PlugIns d'interface qui permettent de changer l'apparence de la fenêtre principale de FStream. Vous pouvez créer des skins avec Xcode en Objective-C ou en XML avec votre éditeur XML favori. Vous pouvez télécharger des exemples à cette page.
-
fsradio:
FStream reconnait un schéma spécial d'URL : "fsradio".
Avec ce type d'URL, FStream peut directement être utilisé pour charger une webradio, dans n'importe quelle application qui reconnaît les schémas étendus.
L'URL peut être composé d'uniquement l'URL du flux de la webradio à charger, ou composé de l'URL du flux et le nom du flux séparé par un caractère "_".
Le nom est au format UTF8, et les deux éléments sont encodés en base64.
Voci quelques exemples :
fsradio://aHR0cDovL3d3dy5zb3VyY2VtYWMuY29tL2ZzdHJlYW0ucGhwP3Bscz0y_RnLDqXF1ZW5jZSAz pour "Fréquence 3".
fsradio://aHR0cDovL3d3dy5zb3VyY2VtYWMuY29tL2ZzdHJlYW0ucGhwP3Bscz00_T1XDryBGTQ== pour "OUÏ FM".
fsradio://aHR0cDovL3d3dy5zb3VyY2VtYWMuY29tL2ZzdHJlYW0ucGhwP3Bscz0xMw==_TGEgR3Jvc3NlIFJhZGlv pour "La Grosse Radio".
fsradio://aHR0cDovL3d3dy5zb3VyY2VtYWMuY29tL2ZzdHJlYW0ucGhwP3Bscz0xMg== pour "France Info" sans le nom.
-
Préselections:
FStream possède un ensemble de liste de radios présélectionnées. Mais il est possible pour l'utilisateur d'ajouter ses propres listes de présélections via un serveur externe.
Voici comment faire :
- L'utilisateur créer une nouvelle entrée dans les préférences, dans le panneau "Préselections"
- Il indique le nom de la présélection. Ce nom peut-être quelconque : il n'est utile que pour l'utilisateur.
- Il indique l'adresse de la présélection.
L'adresse de présélection doit permettre de recevoir un plist de cette forme :
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>host</key>
<string>www.sourcemac.com</string>
<key>base</key>
<string>www.sourcemac.com</string>
<key>genre</key>
<string>/fstream_sample.php?action=genre&language=[language]</string>
<key>radio</key>
<string>/fstream_sample.php?action=radio&genre=[genre]&language=[language]</string>
<key>search</key>
<string>/fstream_sample.php?action=search&search=[search]&language=[language]</string>
</dict>
</plist>
- La clef "genre" contient l'adresse de la page qui va générer la liste des genres disponible. Dans cette adresse, il est possible d'utiliser le tag [language] qui sera remplacé au lancement par le code de langue actuel.
- La clef "radio" contient l'adresse de la page qui va générer la liste des radios disponible en fonction du genre sélectionné. Dans cette adresse, il est possible d'utiliser le tag [language] et le tag [genre] qui sera remplacé par l'identifiant du genre sélectionné par l'utilisateur.
- La clef "search" contient l'adresse de la page qui va générer la liste des radios disponible en fonction d'un mot clef de recherche. Dans cette adresse, il est possible d'utiliser le tag [language] et le tag [search] qui sera remplacé par le mot clef que l'utilisateur a rentré.
Le format renvoyé par le serveur doit être le suivant :
- Les données renvoyées doivent être continue (et non par bloc) et non chiffrés
- Les données doivent être encodés en UTF-8
- Ces caractères spéciaux doivent être remplacés :
"<" devient "<"
">" devient ">"
"[" devient "["
"]" devient "]"
"$" devient "$"
- Une liste de genre se présente de cette manière :
[identifiant_1$nom_1][identifiant_2$nom_2]...
L'identifiant peut-être de n'importe quel genre, il remplace le tag [genre] dans l'adresse de radio.
- Une liste de radio (via un genre ou une recherche) se présente de cette manière :
[nom_1$format_1$bitrate_1$url_1][nom_2$format_2$bitrate_2$url_2]...
Le format est un type MIME (audio/mpeg, etc.) et le bitrate en kbps.
Le script de la présélection d'exemple peut être téléchargé ici.
|