Symfonium expose une API qui permet à d’autres applications d’interagir avec lui.
L’API est accessible via un récepteur Broadcast : il suffit donc d’envoyer les intents de diffusion appropriés.
Le nom du composant récepteur est “app.symfonik.music.player/app.symfonium.remote.api.ApiReceiver”
Pour les applications qui séparent le composant, cela donne :
- Paquet : “app.symfonik.music.player”
- Classe: “app.symfonium.remote.api.ApiReceiver”
- Type de composant: Broadcast
Renseignez la valeur d’action de l’Intent avec l’API à appeler, puis renseignez les extras comme documenté ci-dessous.
Changer de lecteur
Section intitulée « Changer de lecteur »- Action API: “app.symfonium.api.SELECT_RENDERER”
- Extras :
- “TYPE” [Int] : le type de lecteur
Valeur possible :
- 0 : appareil local
- 1 : lecteur UPnP
- 3 : lecteur Chromecast
- 6 : Media Center distant
- “IDENTIFIER” [String/Optional] : l’ID unique du lecteur La valeur est visible depuis l’écran de diffusion en appuyant sur le bouton (i). Vous pouvez faire un appui long sur le lecteur pour copier automatiquement la valeur dans le presse-papiers. (Optionnel uniquement pour revenir à l’appareil local)
- “TYPE” [Int] : le type de lecteur
Valeur possible :
Forcer la synchronisation
Section intitulée « Forcer la synchronisation »- Action API: “app.symfonium.api.MEDIA_SYNC”
- Extras :
- “PROVIDER_ID” [Int] : l’ID du fournisseur (visible dans le menu de panneau inférieur des fournisseurs dans les paramètres)
Contrôle de la lecture
Section intitulée « Contrôle de la lecture »- Action API: “app.symfonium.api.MEDIA_COMMAND”
- Extras :
- “COMMAND” [String] : la commande à envoyer
Valeur possible :
- “play”
- “pause”
- “stop”
- “next”
- “previous”
- “shuffle”
- “repeat”
- “mute”
- “togglemute”
- “seek_relative” (position relative en secondes comme paramètre int)
- “seek” (position en secondes comme paramètre int)
- “volume” (volume comme paramètre int)
- “set_sleeptimer” (délai en minutes comme paramètre int) Nécessite v6.0+
- “remove_sleeptimer” Nécessite v6.0+
- “INT_PARAMETER” [Int/Optional] : une valeur int pour les commandes qui la nécessitent
- “COMMAND” [String] : la commande à envoyer
Valeur possible :
Démarrer un média
Section intitulée « Démarrer un média »- Action API: “app.symfonium.api.MEDIA_START”
- Extras :
- “MEDIA_TYPE” [String] : le type de média à démarrer
Valeur possible :
- “playlist”
- “artist”
- “album”
- “genre”
- “song”
- “song_mix”
- “album_mix”
- “internet_radio” Nécessite v11.2+
- “NAME” [String/Optional] : le nom du média (optionnel pour les morceaux si vous fournissez le nom de fichier). Nécessite v1.9+
- “ALBUM” [String/Optional] : l’album du média pour lever l’ambiguïté. Nécessite v14.1+
- “ARTIST” [String/Optional] : l’artiste du média pour lever l’ambiguïté. Nécessite v14.1+
- “ID” [Long/Optional] : l’ID de la radio ou de la playlist (optionnel si vous passez le nom). Nécessite v11.2+
- “FILE” [String/Optional] : le chemin complet du média, uniquement pour les morceaux. Nécessite v1.9+
- “RESUME” [Boolean/Optional] : indique si le média doit reprendre si possible.
- “SHUFFLE” [Boolean/Optional] : pour les groupes de médias comme les playlists / genres, indique si le contenu doit être mélangé.
- “QUEUE” [Int/Optional] : 1 pour mettre le média en file juste après l’élément en cours de lecture. 2 pour le mettre en file à la fin de la playlist. Nécessite v1.8+
- “MEDIA_TYPE” [String] : le type de média à démarrer
Valeur possible :
Modifier un paramètre
Section intitulée « Modifier un paramètre »- Action API: “app.symfonium.api.CHANGE_SETTINGS”
- Extras :
-
“SETTING” [String] : le paramètre à modifier
Valeur possible :
- “wifi_transcode” : débit de transcodage Wi-Fi
- “mobile_transcode” : débit de transcodage mobile
- “available_offline” : filtre Disponible hors ligne Nécessite v3.2+
- “hide_status_bar” : basculer le masquage de la barre d’état Nécessite v14.0+
- “ignore_camera_hole” : basculer l’ignorance du trou de caméra Nécessite v14.0+
-
“INT_PARAMETER” [Int] : valeur de transcodage
-
Valeurs possibles pour le minuteur de sommeil en fin de morceau, hide_status_bar et ignore_camera_hole : * 0 : Désactivé * 1 : Activé
Valeurs possibles pour le filtre hors ligne : * 0 : Filtre désactivé * 1 : Filtre activé
Valeurs possibles pour le transcodage : * -1 : Pas de transcodage * 1 : 64 Kbps * 2 : 96 Kbps * 3 : 128 Kbps * 4 : 160 Kbps * 5 : 192 Kbps * 6 : 256 Kbps * 7 : 320 KbpsImporter des playlists
Section intitulée « Importer des playlists »Importe les playlists depuis un fournisseur de médias pris en charge. Les playlists existantes sont automatiquement ignorées.
- Action API: “app.symfonium.api.PLAYLIST_IMPORT”
- Extras :
- “PROVIDER_ID” [Int] : l’ID du fournisseur (visible dans le menu de panneau inférieur des fournisseurs dans les paramètres)
- “PLAYLIST_TYPE” [Int] : type de playlist importée
- 1 : hors ligne en priorité
- 2 : lecture seule
- 3 : en ligne en priorité
Régénérer la miniature de playlist
Section intitulée « Régénérer la miniature de playlist »Met à jour la miniature de la playlist à partir des miniatures des morceaux qu’elle contient.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “generate_playlist_thumbnail”
- “LONG_PARAMETER” [Long] : l’ID de la playlist (visible en haut du panneau inférieur des actions de playlist)
Mettre à jour le tri aléatoire stable de la playlist
Section intitulée « Mettre à jour le tri aléatoire stable de la playlist »Met à jour le tri aléatoire stable de la playlist.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “refresh_playlist_stable_random”
- “LONG_PARAMETER” [Long] : l’ID de la playlist (visible en haut du panneau inférieur des actions de playlist)
Charger une file de médias
Section intitulée « Charger une file de médias »Charge une file de médias et reprend éventuellement la lecture.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “load_media_queue”
- “LONG_PARAMETER” [Long] : l’ID de la file de médias. (Visible en appuyant sur l’icône d’information dans le panneau inférieur de la file de médias.
- “RESUME” [Boolean] : true pour reprendre la lecture après le chargement de la file.
Régénérer la miniature de genre
Section intitulée « Régénérer la miniature de genre »Met à jour la miniature du genre à partir des miniatures des morceaux qu’il contient.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “generate_genre_thumbnail”
- “NAME” [String] : le nom du genre (remarque : vous pouvez utiliser la valeur spéciale “
--ALL--” pour régénérer les miniatures de tous les genres ; attention à la durée et à l’utilisation de la batterie)
Nettoyer le cache hors ligne
Section intitulée « Nettoyer le cache hors ligne »Déclenche l’action Nettoyer depuis la gestion du cache hors ligne.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “cleanup_offline_cache”
Démarrer une sauvegarde
Section intitulée « Démarrer une sauvegarde »Démarre une sauvegarde avec les paramètres sélectionnés (le mot de passe et au moins une option doivent être transmis)
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “start_backup”
- “PASSWORD” [String] : le mot de passe de sauvegarde. OBLIGATOIRE
- “SETTINGS” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “PROVIDERS” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “EQ_PROFILES” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “INTERNET_RADIO” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “PLAYLISTS” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “AUTO_OFFLINE_RULES” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “USER_DATA” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “USER_DATA_ALL” [Boolean] : indique si la sauvegarde doit contenir toutes les données utilisateur (nécessite aussi l’activation des données utilisateur)
- “CUSTOM_IMAGES” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “FILE_FAVORITES” [Boolean] : indique si la sauvegarde doit contenir cet élément.
- “TAG_CACHE” [Boolean] : indique si la sauvegarde doit contenir cet élément.
Changer la connexion active du fournisseur
Section intitulée « Changer la connexion active du fournisseur »Force un fournisseur à utiliser sa connexion principale ou secondaire.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “force_provider_connection”
- “PROVIDER_ID” [Long] : l’ID du fournisseur. OBLIGATOIRE
- “ACTIVE_CONNECTION” [Int] : 1 pour la connexion principale, 2 pour la connexion secondaire. OBLIGATOIRE.
Régénérer les miniatures d’artistes
Section intitulée « Régénérer les miniatures d’artistes »Met à jour la miniature de l’artiste à partir des miniatures des morceaux qu’il contient.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “generate_artist_thumbnail”
- “ONLY_MISSING_THUMBNAIL” [Boolean] : avec true, met uniquement à jour les artistes sans miniature déjà définie.
- “NAME” [String] : le nom de l’artiste (remarque : vous pouvez utiliser la valeur spéciale “
--ALL--” pour régénérer les miniatures de tous les artistes ; attention à la durée et à l’utilisation de la batterie)
Charger un style d’application
Section intitulée « Charger un style d’application »Charge un style d’application personnalisé enregistré.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “load_app_style”
- “NAME” [String] : le nom du style d’application
Charger un profil
Section intitulée « Charger un profil »Charge un profil enregistré.
- Action API: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “load_profile”
- “NAME” [String] : le nom du profil
