Symfonium ofrece una API que permite que otras aplicaciones interactúen con la aplicación.
La API se expone mediante un receptor de Broadcast, por lo que basta con enviar intents de broadcast correctamente configurados.
El nombre completo del componente receptor es “app.symfonik.music.player/app.symfonium.remote.api.ApiReceiver”.
Si la aplicación de origen indica el paquete y la clase por separado, utiliza estos valores:
- Paquete : “app.symfonik.music.player”
- Clase: “app.symfonium.remote.api.ApiReceiver”
- Tipo de componente: Broadcast
Define la acción del intent con el valor correspondiente a la operación de la API que quieras invocar y añade los extras indicados a continuación.
Cambiar el renderizador
Sección titulada «Cambiar el renderizador»- Acción: “app.symfonium.api.SELECT_RENDERER”
- Extras :
- “TYPE” [Int]: el tipo de renderizador
Valores posibles:
- 0 : Dispositivo local
- 1: Renderizador UPnP
- 3 : Renderizador Chromecast
- 6 : Centro multimedia remoto
- “IDENTIFIER” [String/Optional]: el ID único del renderizador Puedes consultar este valor en la pantalla de emisión pulsando el botón (i). Mantén pulsado el renderizador para copiarlo automáticamente al portapapeles. Solo es opcional para volver al Dispositivo local.
- “TYPE” [Int]: el tipo de renderizador
Valores posibles:
Forzar sincronización
Sección titulada «Forzar sincronización»- Acción: “app.symfonium.api.MEDIA_SYNC”
- Extras :
- “PROVIDER_ID” [Int]: el ID del proveedor (puedes verlo en el menú inferior de acciones del proveedor, en Ajustes)
Control de reproducción
Sección titulada «Control de reproducción»- Acción: “app.symfonium.api.MEDIA_COMMAND”
- Extras :
- “COMMAND” [String]: el comando que quieres enviar
Valores posibles:
- “play”
- “pause”
- “stop”
- “next”
- “previous”
- “shuffle”
- “repeat”
- “mute”
- “togglemute”
- “seek_relative” (posición relativa en segundos como parámetro int)
- “seek” (posición en segundos como parámetro int)
- “volume” (volumen como parámetro int)
- “set_sleeptimer” (tiempo de espera en minutos como parámetro int) Requiere v6.0+
- “remove_sleeptimer” Requiere v6.0+
- “INT_PARAMETER” [Int/Optional]: un valor int para los comandos que lo requieren
- “COMMAND” [String]: el comando que quieres enviar
Valores posibles:
Iniciar un medio
Sección titulada «Iniciar un medio»- Acción: “app.symfonium.api.MEDIA_START”
- Extras :
- “MEDIA_TYPE” [String]: el tipo de medio que se va a iniciar
Valores posibles:
"playlist"- “artist”
- “album”
- “genre”
- “song”
- “song_mix”
- “album_mix”
- “internet_radio” Requiere v11.2+
- “NAME” [String/Optional]: el nombre del medio (opcional para canciones si proporcionas el nombre del archivo). Requiere v1.9+
- “ALBUM” [String/Optional]: el álbum del medio, para evitar ambigüedades. Requiere v14.1+
- “ARTIST” [String/Optional]: el artista del medio, para evitar ambigüedades. Requiere v14.1+
- “ID” [Long/Optional]: el ID de la radio por Internet o de la lista de reproducción (opcional si proporcionas el nombre). Requiere v11.2+
- “FILE” [String/Optional]: la ruta completa del medio; solo se admite para canciones. Requiere v1.9+
- “RESUME” [Boolean/Optional]: si se debe reanudar el medio cuando sea posible.
- “SHUFFLE” [Boolean/Optional]: para grupos de medios, como listas de reproducción o géneros, indica si el contenido debe reproducirse en orden aleatorio.
- “QUEUE” [Int/Optional]: 1 para añadir el medio a la cola justo después del elemento que se está reproduciendo; 2 para añadirlo al final de la lista de reproducción. Requiere v1.8+
- “MEDIA_TYPE” [String]: el tipo de medio que se va a iniciar
Valores posibles:
Cambiar un ajuste
Sección titulada «Cambiar un ajuste»- Acción: “app.symfonium.api.CHANGE_SETTINGS”
- Extras :
-
“SETTING” [String]: el ajuste que quieres modificar
Valores posibles:
- “wifi_transcode” : tasa de bits de transcodificación por Wi-Fi
- “mobile_transcode” : tasa de bits de transcodificación con datos móviles
- “available_offline” : filtro Disponible sin conexión Requiere v3.2+
- “hide_status_bar” : activa o desactiva Esconder barra de estado Requiere v14.0+
- “ignore_camera_hole” : activa o desactiva Ignorar protección del agujero de la cámara Requiere v14.0+
-
“INT_PARAMETER” [Int]: valor de transcodificación
-
Possible value for sleep timer wait end of song, hide status bar and ignore_camera_hole: * 0 : Disabled * 1 : Enabled
Possible value for offline filter: * 0 : Filter disabled * 1 : Filter enabled
Possible value for transcoding: * -1 : No transcoding * 1 : 64 Kbps * 2 : 96 Kbps * 3 : 128 Kbps * 4 : 160 Kbps * 5 : 192 Kbps * 6 : 256 Kbps * 7 : 320 KbpsImportar listas de reproducción
Sección titulada «Importar listas de reproducción»Importa las listas de reproducción de un proveedor de medios compatible. Las listas existentes se omiten automáticamente.
- Acción: “app.symfonium.api.PLAYLIST_IMPORT”
- Extras :
- “PROVIDER_ID” [Int]: el ID del proveedor (puedes verlo en el menú inferior de acciones del proveedor, en Ajustes)
- “PLAYLIST_TYPE” [Int]: el tipo de lista de reproducción importada
- 1: Sin conexión primero
- 2: Solo lectura
- 3: En línea primero
Regenerar la miniatura de una lista de reproducción
Sección titulada «Regenerar la miniatura de una lista de reproducción»Actualiza la miniatura de la lista de reproducción a partir de las miniaturas de las canciones que contiene.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “generate_playlist_thumbnail”
- “LONG_PARAMETER” [Long]: el ID de la lista de reproducción (puedes verlo en la parte superior del menú inferior de acciones de la lista)
Actualizar el orden aleatorio estable de una lista de reproducción
Sección titulada «Actualizar el orden aleatorio estable de una lista de reproducción»Actualiza la miniatura de la lista de reproducción a partir de las miniaturas de las canciones que contiene.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “refresh_playlist_stable_random”
- “LONG_PARAMETER” [Long]: el ID de la lista de reproducción (puedes verlo en la parte superior del menú inferior de acciones de la lista)
Cargar una cola de medios
Sección titulada «Cargar una cola de medios»Carga una cola de medios y, opcionalmente, reanuda la reproducción.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “load_media_queue”
- “LONG_PARAMETER” [Long]: el ID de la cola de medios (puedes verlo pulsando el icono de información en el menú inferior de la cola de medios).
- “RESUME” [Boolean]: true para reanudar la reproducción tras cargar la cola.
Regenerar la miniatura de un género
Sección titulada «Regenerar la miniatura de un género»Actualiza la miniatura del género a partir de las miniaturas de las canciones que contiene.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “generate_genre_thumbnail”
- “NAME” [String]: el nombre del género (nota: puedes usar el valor especial “
--ALL--” para regenerar las miniaturas de todos los géneros; ten en cuenta el tiempo necesario y el consumo de batería)
Limpiar la caché sin conexión
Sección titulada «Limpiar la caché sin conexión»Ejecuta la acción Limpiar de Administrar archivos sin conexión.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “cleanup_offline_cache”
Iniciar copia de seguridad
Sección titulada «Iniciar copia de seguridad»Inicia una copia de seguridad con los ajustes seleccionados. Debes proporcionar una contraseña y al menos una opción.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “start_backup”
- “PASSWORD” [String]: la contraseña de la copia de seguridad. OBLIGATORIO
- “SETTINGS” [Boolean]: si la copia de seguridad debe incluir los ajustes.
- “PROVIDERS” [Boolean]: si la copia de seguridad debe incluir los proveedores.
- “EQ_PROFILES” [Boolean]: si la copia de seguridad debe incluir los perfiles del ecualizador.
- “INTERNET_RADIO” [Boolean]: si la copia de seguridad debe incluir las radios por Internet.
"PLAYLISTS"[Boolean]: si la copia de seguridad debe incluir las listas de reproducción.- “AUTO_OFFLINE_RULES” [Boolean]: si la copia de seguridad debe incluir las reglas automáticas de caché sin conexión.
- “USER_DATA” [Boolean]: si la copia de seguridad debe incluir los datos de usuario.
- “USER_DATA_ALL” [Boolean]: si la copia de seguridad debe incluir todos los datos de usuario (también requiere que los datos de usuario estén activados).
- “CUSTOM_IMAGES” [Boolean]: si la copia de seguridad debe incluir las imágenes personalizadas.
- “FILE_FAVORITES” [Boolean]: si la copia de seguridad debe incluir los archivos favoritos.
- “TAG_CACHE” [Boolean]: si la copia de seguridad debe incluir la caché de etiquetas.
Cambiar la conexión activa del proveedor
Sección titulada «Cambiar la conexión activa del proveedor»Obliga al proveedor a usar su conexión principal o secundaria.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “force_provider_connection”
- “PROVIDER_ID” [Long]: el ID del proveedor. OBLIGATORIO
- “ACTIVE_CONNECTION” [Int]: 1 para la conexión principal; 2 para la conexión secundaria. OBLIGATORIO.
Regenerar miniaturas de artistas
Sección titulada «Regenerar miniaturas de artistas»Actualiza la miniatura del artista a partir de las miniaturas de las canciones que contiene.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “generate_artist_thumbnail”
- “ONLY_MISSING_THUMBNAIL” [Boolean]: si su valor es true, solo actualiza los artistas que todavía no tienen una miniatura definida.
- “NAME” [String]: el nombre del artista (nota: puedes usar el valor especial “
--ALL--” para regenerar las miniaturas de todos los artistas; ten en cuenta el tiempo necesario y el consumo de batería)
Cargar un estilo de la aplicación
Sección titulada «Cargar un estilo de la aplicación»Carga un estilo personalizado de la aplicación que hayas guardado previamente.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “load_app_style”
- “NAME” [String]: el nombre del estilo de la aplicación
Cargar perfil
Sección titulada «Cargar perfil»Carga un perfil que hayas guardado previamente.
- Acción: “app.symfonium.api.CUSTOM_ACTION”
- Extras :
- “ACTION” [String]: “load_profile”
- “NAME” [String]: el nombre del perfil
