BrandMeister DMR · Hoseline

Reproductor embebible de la sala Argentina Room (TG 7229)

Este servidor expone una pagina /embed pensada para insertarse en un <iframe>. El reproductor se conecta directamente al WebSocket wss://hose.brandmeister.network/spotter/ (subprotocolo spotter, mensajes MessagePack), decodifica el audio G.711 u-law de 8 kHz y lo reproduce con la Web Audio API. Cada transmision se registra en PostgreSQL.

Vista previa del iframe

El navegador exige un click del usuario antes de reproducir audio: por eso el boton «Escuchar».

Codigo para pegar en tu pagina
<iframe
  src="http://localhost:3000/embed?tg=7229&theme=dark"
  width="380"
  height="330"
  style="border:0;border-radius:12px;overflow:hidden"
  allow="autoplay"
  loading="lazy"
  title="BrandMeister TG 7229"
></iframe>

Historial guardado en PostgreSQL (TG 7229)

Todavia no hay transmisiones registradas. Pulsa «Escuchar» y espera actividad en la sala.

Instalacion en Ubuntu Desktop

1 · Descargar el proyecto

git clone <tu-repo> bm-argentina-room
cd bm-argentina-room

2 · Ejecutar el instalador (chequea e instala dependencias)

chmod +x install.sh
./install.sh

3 · Iniciar el servicio

sudo systemctl start bm-hose
sudo systemctl status bm-hose

4 · Abrir en el navegador

xdg-open http://localhost:3000

El script install.sh verifica e instala: curl, git, Node.js 20 LTS, npm, PostgreSQL 16, crea la base bm_hose, aplica el esquema con Drizzle, compila el proyecto y opcionalmente registra un servicio systemd para que arranque solo. Detalles completos en INSTALL.md.

Parametros de la URL del iframe

ParametroValoresDescripcion
tg7229Numero de talkgroup (por defecto Argentina Room).
nameArgentina RoomTitulo mostrado en el reproductor.
themedark | lightPaleta de colores.
compact1 | 0Oculta volumen e historial (altura ~190 px).
autostart1 | 0Intenta conectar al cargar (sujeto al autoplay del navegador).
log1 | 0Guardar o no cada transmision en PostgreSQL.