Wanda Radio Devs
Contratos claros entre Android y Raen Studio.
La app Android consume endpoints REST de Raen Studio para obtener el catálogo de emisoras, enviar reportes de fallos y recibir avisos de Wanda News. Todo el contrato es público y documentado.
Endpoints
La API que alimenta la app.
GET /api/wandaradio/stations?app_id=wandaradio
Catálogo remoto de emisoras
Endpoint principal que consume la app Android. Devuelve emisoras activas, fuentes de audio, metadatos normalizados y fuentes ocultas. Actualizado sin necesidad de actualizar la app.
Parámetros
| Nombre | Tipo | Req. | Descripción |
|---|
| app_id | string | Sí | Identificador de la app solicitante (wandaradio) |
Ejemplo de respuesta
{
"catalog_version": 12,
"generated_at": "2026-07-25T14:30:00Z",
"meta": {
"active_count": 638,
"disabled_count": 47,
"refresh_interval": 21600
},
"stations": [
{
"id": "radio-nacional",
"name": "Radio Nacional",
"frequency": "87.9 FM",
"description": "Emisora oficial de Costa Rica",
"stream_urls": [
"https://...",
"https://..."
]
}
],
"disabled": [
{ "id": "emisora-x", "reason": "stream offline" }
]
}POST /api/wandaradio/report
Reporte de fallos
Endpoint para enviar reportes de fallo desde la app Android. Incluye contexto técnico automático: dispositivo, versión, red, emisora y descripción del problema.
Parámetros
| Nombre | Tipo | Req. | Descripción |
|---|
| station_id | string | Sí | ID de la emisora con problemas |
| device | string | Sí | Modelo del dispositivo |
| android_version | string | Sí | Versión de Android |
| app_version | string | Sí | Versión de Wanda Radio |
| network | string | Sí | Tipo de conexión (wifi, 4g, 3g) |
| description | string | No | Descripción del fallo |
Ejemplo de respuesta
{
"status": "received",
"report_id": "rpt_abc123",
"message": "Reporte registrado correctamente"
}GET /admin/wandaradio/reportes
Bandeja de reportes (privada)
Bandeja dentro de Raen Studio para revisar fallos operativos. Solo accesible para administradores. Muestra reportes con contexto técnico y permite marcar como resueltos.
Ejemplo de respuesta
// Panel administrativo — HTML renderizado
// Requiere autenticación de Raen Studio
GET /api/wandanews?app_id=wandaradio
Avisos Wanda News
Endpoint que devuelve avisos locales autorizados para Wanda Radio. Contenido filtrado por distrito y app solicitante. Ideal para mostrar en la barra de información de la app.
Parámetros
| Nombre | Tipo | Req. | Descripción |
|---|
| app_id | string | Sí | Identificador de la app solicitante |
| distrito | string | No | Filtrar por distrito específico |
Ejemplo de respuesta
{
"activeCount": 12,
"items": [
{
"texto": "Acueducto de Desamparados: corte programado mañana 6am-2pm",
"negocio": "AyA",
"distrito": "Desamparados",
"canton": "Desamparados",
"provincia": "San José"
}
]
} Dependencias
Stack tecnológico de la app.
Wanda Radio usa un stack mínimo y deliberado. Cada dependencia tiene una razón de ser — no hay SDKs de tracking ni analíticas de terceros.
| Librería | Propósito | Versión |
|---|
| ExoPlayer / Media3 | Motor de audio | Stable |
| AndroidX Core | Compatibilidad | 1.12+ |
| Kotlin Coroutines | Async operations | 1.7+ |
| Gson | JSON parsing del catálogo | 2.10+ |
| OkHttp | HTTP client para streams | 4.12+ |
Preguntas frecuentes
Dudas técnicas comunes.
¿Cómo actualizo el catálogo de emisoras sin publicar una nueva versión?
El catálogo se descarga desde /api/wandaradio/stations al iniciar la app y se cachea localmente. La app solicita una nueva versión cada 6 horas (configurable). Si hay una nueva versión del catálogo, se descarga automáticamente sin necesidad de actualización por Play Store.
¿Qué pasa si una URL de stream deja de funcionar?
Cada emisora puede tener múltiples stream_urls. La app intenta la primera; si falla, rota a la siguiente automáticamente. Si todas fallan, muestra la emisora como no disponible y el usuario puede reportar el fallo desde la app.
¿Cómo funciona el sistema de reportes?
Cuando un usuario encuentra un problema, puede reportarlo desde la app con un botón. La app envía automáticamente: dispositivo, versión de Android, versión de la app, tipo de red, emisora seleccionada y descripción del fallo. El reporte llega a /admin/wandaradio/reportes en Raen Studio.
¿Puedo agregar mi propia emisora al catálogo?
El catálogo es gestionado por Raen Studio. Si sos dueño de una emisora y querés estar en Wanda Radio, contactá a nuestro equipo a través de /contact con los detalles de tu stream.
¿Wanda News muestra contenido de cualquier app?
No. Cada app tiene un app_id y solo recibe avisos autorizados para ella. Wanda Radio recibe contenido relevante para sus usuarios, filtrado por distrito y contexto. El contenido es moderado por Raen Studio.
¿Necesitás integrar Wanda Radio?
Hablá con el equipo de Raen Studio para acuerdos de integración, licencias de catálogo o soporte técnico para emisoras.