Documentación

Todo lo que necesitas para instalar, configurar y gestionar JRMPanel.

Instalación

JRMPanel se puede instalar en AlmaLinux 9.x/10.x o Rocky Linux 9.x/10.x con un solo comando. El instalador configura automáticamente todas las dependencias incluyendo Node.js 20, MariaDB, Pure-FTPd, Liquidsoap y la aplicación JRMPanel.

Requisitos del Sistema:

  • AlmaLinux 9.x / 10.x o Rocky Linux 9.x / 10.x
  • Mínimo 2 GB RAM (4 GB recomendado)
  • 20 GB de espacio en disco
  • Acceso SSH como root
  • Licencia activa de JRMPanel

Instalación Rápida:

curl -o install -L https://jrmpanel.com/install
bash install JRMP-XXXX-XXXX-XXXX-XXXX

Reemplaza JRMP-XXXX-XXXX-XXXX-XXXX con tu clave de licencia. La instalación generalmente se completa en 5-10 minutos.

Opciones del Instalador:

bash install JRMP-XXXX --hostname tudominio.com --email admin@mail.com
  • --hostname — Configura SSL con Let's Encrypt automáticamente
  • --email — Email de la cuenta admin
  • --port-start — Puerto base (por defecto: 3080)

Después de la Instalación: Al acceder al panel por primera vez, se ejecutará automáticamente el Setup Wizard que te guiará paso a paso para configurar la licencia, cuenta admin, branding y correo SMTP.

Activación de Licencia

Cada instalación de JRMPanel requiere una licencia activa. Las licencias se validan en tiempo real contra el servidor de JRMPanel.

Tipos de Licencia:

  • Starter — Hasta 50 estaciones, funciones básicas
  • Professional — Hasta 500 estaciones, todas las funciones incluyendo AutoDJ, SSL, Resellers y WHMCS

Activar tu Licencia:

  1. Durante la instalación: Pasa tu clave como argumento del instalador
  2. Setup Wizard: El primer paso del asistente valida tu licencia
  3. Panel Admin: Configuración > Licencia

Formato de Clave: JRMP-XXXX-XXXX-XXXX-XXXX

Validación:

  • La licencia se valida en tiempo real contra jrmpanel.com
  • Revalidación automática cada 2 minutos
  • Período de gracia de 72 horas si el servidor de licencias no está disponible
  • La licencia está vinculada a la IP del servidor y se puede migrar desde el panel de JRMPanel

Setup Wizard

Después de instalar JRMPanel, al acceder al panel de administración por primera vez se ejecuta automáticamente el Setup Wizard (Asistente de Configuración). Este asistente guía al administrador en 5 pasos para dejar el panel listo para producción.

Paso 1 — Activar Licencia Ingresa tu clave de licencia en formato JRMP-XXXX-XXXX-XXXX-XXXX. La clave se valida en tiempo real contra el servidor de JRMPanel. Si la clave es inválida, está expirada o ya está en uso en otro servidor, se muestra un mensaje de error específico.

Paso 2 — Cuenta Admin Crea la cuenta de administrador principal:

  • Username (Email): El correo electrónico que usarás para iniciar sesión
  • Contraseña: Mínimo 8 caracteres (se almacena con hash Argon2id)
  • Confirmar Contraseña: Debe coincidir con la contraseña ingresada

Paso 3 — Branding del Panel Personaliza la apariencia de tu panel:

  • Nombre del Panel: Se muestra en el header, login y páginas públicas
  • Color Primario: Color principal de la interfaz
  • Color de Acento: Color secundario para detalles y resaltados
  • Puedes subir un logo personalizado después en Configuración > Branding

Paso 4 — Configuración de Email (SMTP) Configura el servidor de correo para notificaciones y emails del sistema:

  • Host SMTP, Puerto, Seguridad (TLS/SSL/None)
  • Usuario y Contraseña SMTP
  • Email de remitente (From)
  • Este paso es opcional — puedes hacer clic en "Skip" y configurarlo después en la página de Email Settings

Paso 5 — Completar Resumen de la configuración. Al hacer clic en "Go to Dashboard" se finaliza el wizard y se redirige al dashboard de administración. El wizard no volverá a aparecer en futuros accesos.

Notas:

  • El wizard bloquea el acceso a todas las demás páginas del panel hasta completarse
  • Si necesitas volver a ejecutar el wizard, elimina la clave setup_complete de la tabla jrmpanel_config en la base de datos
  • El wizard funciona incluso sin licencia activada (el paso 1 es precisamente para activarla)

Configuración del Servidor

Después de la instalación, accede al Panel de Administración en https://tu-servidor:3087 (HTTPS) o http://tu-servidor:3086 (HTTP).

Setup Wizard (Primera Ejecución): La primera vez que accedas al panel, el asistente de configuración te guiará en 5 pasos:

  1. Licencia — Activa tu clave de licencia (validación en tiempo real)
  2. Cuenta Admin — Crea tu usuario y contraseña de administrador
  3. Branding — Personaliza el nombre y colores de tu panel
  4. Email SMTP — Configura el envío de correos (opcional, se puede hacer después)
  5. Completar — Finaliza y accede al dashboard

Configuración Principal:

  • Hostname: Establece el hostname de tu servidor y el dominio predeterminado
  • Puertos: Los paneles corren en puertos dedicados: Admin (3086/3087), Cliente (3082/3083), DJ (3080/3081)
  • Almacenamiento: Define las rutas de subida de música y los límites de almacenamiento
  • Firewall: JRMPanel auto-configura las reglas de firewalld para todos los puertos
  • SSL: Certificados Let's Encrypt con renovación automática
  • Respaldo: Programa respaldos automatizados en almacenamiento local o remoto

Configuración de Shoutcast

JRMPanel soporta Shoutcast DNAS v1 y v2 (incluyendo v2.6). Crear una estación Shoutcast toma segundos desde el panel de administración.

Crear una Estación:

  1. Navega a Estaciones > Crear Nueva
  2. Selecciona "Shoutcast v2" como motor
  3. Establece el puerto, bitrate y máximo de oyentes
  4. Configura la contraseña de fuente y la contraseña de admin
  5. Haz clic en "Crear" — la estación inicia automáticamente

Características:

  • Soporte multi-mount (múltiples streams por estación)
  • Codificación AAC+ y MP3
  • Relay de stream y auto-failover
  • Gestión de listado en directorio público (YP)

Configuración de Icecast

JRMPanel soporta completamente Icecast 2.4 con streaming SSL, múltiples puntos de montaje y configuración de relays.

Crear una Estación Icecast:

  1. Navega a Estaciones > Crear Nueva
  2. Selecciona "Icecast 2.4" como motor
  3. Configura los puntos de montaje (ej., /stream, /mobile)
  4. Establece el formato de codificación (OGG Vorbis, MP3, OPUS, FLAC)
  5. Activa SSL si has configurado Let's Encrypt

Streaming HLS: JRMPanel puede generar streams HLS desde fuentes Icecast, permitiendo la reproducción en iOS Safari y otros reproductores compatibles con HLS.

AutoDJ (Liquidsoap)

JRMPanel usa Liquidsoap como motor de AutoDJ, proporcionando transmisión automatizada de nivel profesional.

Configurar AutoDJ:

  1. Activa AutoDJ en la página de configuración de la estación
  2. Sube música a través de la interfaz web o FTP (Pure-FTPd)
  3. Crea playlists: Rotación General, Programadas, Jingles
  4. Configura el tiempo de crossfade y las reglas de inserción de jingles
  5. Establece el comportamiento de respaldo cuando el DJ en vivo se desconecta

Programación de Playlists:

  • Programación basada en horario (reproduce playlists específicas a horas específicas)
  • Rotación basada en peso (controla la frecuencia de reproducción de canciones)
  • Mezcla inteligente (evita repeticiones)
  • Inserción de jingles cada N canciones

Certificados SSL

JRMPanel se integra con Let's Encrypt para proporcionar certificados SSL gratuitos para todas tus estaciones.

Configuración Auto-SSL:

  1. Asegúrate de que tu dominio apunte a la IP del servidor
  2. Navega a Configuración > SSL
  3. Ingresa tu dominio y haz clic en "Generar Certificado"
  4. JRMPanel despliega automáticamente el certificado en todas las estaciones
  5. Los certificados se auto-renuevan 30 días antes de su expiración

Streaming SSL: Una vez habilitado SSL, los oyentes pueden conectarse a través de streams HTTPS, lo cual es requerido para reproductores web modernos y elimina las advertencias de contenido mixto del navegador.

Integración con WHMCS

JRMPanel proporciona un módulo nativo de WHMCS para la provisión, suspensión y terminación automatizada de cuentas de radio hosting.

Configuración:

  1. Descarga el módulo WHMCS desde tu panel de JRMPanel
  2. Súbelo al directorio /modules/servers/jrmpanel/ de tu WHMCS
  3. Configura la conexión del servidor en WHMCS (hostname, clave API)
  4. Crea productos vinculados a los planes de JRMPanel

Acciones Automatizadas:

  • Crear: Provisiona estación + cuenta de cliente al activar la orden
  • Suspender: Suspende la estación cuando la factura está vencida
  • Reactivar: Reactiva la estación cuando se recibe el pago
  • Terminar: Elimina la estación al cancelar

Panel de Resellers

JRMPanel incluye un panel dedicado para resellers que permite a tus distribuidores gestionar sus propias cuentas de radio.

Características del Reseller:

  • Dashboard con estadísticas de sus estaciones
  • Crear/editar/eliminar cuentas de radio dentro de su límite
  • Branding personalizado (nombre, logo, colores)
  • Gestión de paquetes y límites de recursos
  • Acceso independiente en https://tu-servidor:3087/reseller

Configuración desde Admin:

  1. Navega a Resellers > Crear Nuevo
  2. Asigna un nombre de usuario, contraseña y empresa
  3. Define el máximo de estaciones que puede crear
  4. Asigna los paquetes disponibles para el reseller

Paquetes: Cada paquete define los recursos por estación: bitrate máximo, oyentes, espacio en disco, AutoDJ habilitado/deshabilitado, motor de streaming (Shoutcast/Icecast).

Referencia de API

JRMPanel expone una API REST para el control programático de estaciones, clientes y recursos del servidor.

Autenticación: Todas las solicitudes API requieren una clave API válida enviada en el encabezado Authorization.

Endpoints Principales:

  • GET /api/stations — Listar todas las estaciones
  • POST /api/stations — Crear una nueva estación
  • GET /api/stations/{id} — Obtener detalles de la estación
  • POST /api/stations/{id}/restart — Reiniciar una estación
  • GET /api/stations/{id}/listeners — Oyentes actuales
  • GET /api/stats — Estadísticas globales del servidor

La documentación completa de la API está disponible dentro de tu panel de administración de JRMPanel en Configuración > API.

Solución de Problemas

La estación no inicia:

  • Verifica si el puerto ya está en uso: ss -tlnp | grep PUERTO
  • Verifica que firewalld permita el puerto: firewall-cmd --list-ports
  • Revisa los logs de la estación en el panel de administración

AutoDJ no reproduce:

  • Asegúrate de que los archivos de música estén subidos y las playlists no estén vacías
  • Verifica el proceso de Liquidsoap: systemctl status liquidsoap@STATION_ID
  • Verifica que los formatos de archivo sean compatibles (MP3, OGG, FLAC)

Errores de certificado SSL:

  • Asegúrate de que el DNS del dominio apunte a la IP del servidor
  • Verifica que el puerto 80 sea accesible (requerido para la validación de Let's Encrypt)
  • Intenta renovar manualmente: Configuración > SSL > Renovar

Alto uso de CPU:

  • Verifica el número de streams de transcodificación activos
  • Considera actualizar a un plan superior para más recursos
  • Monitorea con htop y verifica el uso por proceso