Wat is de Stream Monitor?
De Stream Monitor is een uitgebreide bewakingstool waarmee je de gezondheid en beschikbaarheid van je audio-streamingdienst in realtime kunt volgen. De monitor controleert je stream op regelmatige intervallen en detecteert automatisch problemen zoals uitval, stilte en kwaliteitsverlies.
Stream Monitor Dashboard
De Stream Monitor is beschikbaar als add-on bij je audio-streamingpakket en wordt aangeboden in drie abonnementsniveaus: Basic, Pro en Enterprise.
Abonnementsniveaus
De Stream Monitor is beschikbaar in drie niveaus, elk met meer functies:
Basic
- Controle-interval: elke 5 minuten
- Detectie van online/offline status
- Uptime-statistieken (24 uur, 7 dagen, 30 dagen)
- E-mailmeldingen bij uitval
- Incidentgeschiedenis
Pro
Alle Basic-functies, plus:
- Controle-interval: elke 1 minuut
- Stiltedetectie — detecteert wanneer je stream stil is (configureerbare drempelwaarde)
- Metadata-monitoring — houdt bij welk nummer er wordt afgespeeld en detecteert vastgelopen metadata
- Geavanceerde incidenttypes (stilte, bitrate-daling, metadata vastgelopen)
Enterprise
Alle Pro-functies, plus:
- Controle-interval: elke 30 seconden
- Multi-mountpoint monitoring — bewaak meerdere mountpoints (bijv. main, mobile, fallback) tegelijk
- Webhook-meldingen — ontvang realtime meldingen via webhook met HMAC-SHA256 ondertekening
- Onderhoudsvensters — plan tijden waarin meldingen worden onderdrukt
Het Dashboard
Na activering vind je de Stream Monitor in je dashboard onder Services > [Je Streaming Service] > Beheer > Stream Monitor.
Statuspagina
De hoofdpagina toont een overzicht van je stream:
- Huidige status — Online, Offline, Stil, Gedegradeerd of Fout
- Protocol — Shoutcast of Icecast
- Abonnementsniveau — Basic, Pro of Enterprise
- Laatste controle — tijdstip van de meest recente controle
- Uptime-percentages — beschikbaarheid over 24 uur, 7 dagen en 30 dagen
Controlegeschiedenis
Een visuele tijdlijn toont de resultaten van recente controles. Elke controle registreert:
- Status (online/offline/stil/gedegradeerd/fout)
- Responstijd in milliseconden
- Bitrate (kbps)
- Audioniveau (dB)
- Huidig nummer (artiest en titel)
- Aantal luisteraars
- AutoDJ-status
Actieve Incidenten
Wanneer er een probleem wordt gedetecteerd, verschijnt er een incident op het dashboard. Incidenten bevatten:
- Type — offline, stilte, bitrate-daling, metadata vastgelopen, AutoDJ-failover, hoge latentie
- Ernst — waarschuwing of kritiek
- Starttijd en duur
- Beschrijving van het probleem
Je kunt incidenten bevestigen (acknowledge) om aan te geven dat je ervan op de hoogte bent.
Meldingen Instellen
E-mailmeldingen
Standaard worden meldingen naar het e-mailadres van je account gestuurd. Je kunt dit aanpassen:
- Ga naar Stream Monitor > Instellingen
- Schakel Meldingen in
- Vul een Meldings-e-mailadres in
- Stel de Afkoelperiode in (standaard: 15 minuten) — dit voorkomt dat je overspoeld wordt met meldingen
Webhook-meldingen (Enterprise)
Voor geavanceerde integraties kun je webhook-meldingen instellen:
- Ga naar Stream Monitor > Instellingen
- Vul je Webhook-URL in
- Webhooks worden verzonden met een HMAC-SHA256 handtekening in de
X-Maenda-Signatureheader
Webhook-payload voorbeeld:
{
"event": "incident.offline",
"timestamp": "2025-02-25T12:00:00Z",
"monitor": {
"id": "mon_123",
"serviceId": "svc_456",
"streamUrl": "https://stream.example.nl:8000/live",
"tier": "enterprise"
},
"incident": {
"id": "inc_789",
"type": "offline",
"severity": "critical",
"status": "active",
"startedAt": "2026-02-25T12:00:00Z",
"description": "Stream is niet bereikbaar"
},
"check": {
"status": "offline",
"responseTimeMs": 10000,
"bitrate": null,
"audioLevelDb": null,
"isSilent": false,
"nowPlaying": null
}
}
Webhook-events:
incident.{type}— nieuw incident gedetecteerd (bijv.incident.offline,incident.silence)incident.resolved.{type}— incident opgelost (bijv.incident.resolved.offline)
Elke webhook bevat ook de headers X-Maenda-Event (de naam van het event) en X-Maenda-Signature (de HMAC-SHA256 handtekening).
De webhook probeert maximaal 3 keer te verzenden met oplopende vertraging (1s, 5s, 15s) bij een mislukte aflevering.
Bescherming tegen valse meldingen
Een korte hapering hoeft geen storing te zijn. Daarom maakt de monitor pas een offline-incident aan na meerdere opeenvolgende mislukte controles (instelbaar). Zo voorkom je vals alarm door een eenmalige piek, terwijl een echte storing nog steeds snel wordt gemeld. De afzonderlijke controles worden wel altijd geregistreerd, zodat je uptime-cijfers blijven kloppen.
Stiltedetectie (Pro & Enterprise)
De stiltedetectie herkent wanneer je stream technisch online is, maar geen audio uitzendt. Dit is essentieel voor radiostreams waar stilte een ernstig probleem kan zijn.
Hoe het werkt
De monitor analyseert 32KB audiodata van je stream en berekent:
- Byte-variantie — hoe gevarieerd de audiodata is
- Shannon-entropie — informatie-inhoud van het audiosignaal
- dB-niveau — het geschatte geluidsniveau (RMS en piek)
Stilte wordt gedetecteerd wanneer de byte-variantie onder 50 ligt EN de entropie onder 5.0 bits.
Drempelwaarden aanpassen
- Ga naar Stream Monitor > Instellingen
- Pas de Stiltedrempel aan (standaard: -50 dB)
- Stel de Stilteduur in (standaard: 30 seconden) — hoe lang stilte moet duren voordat een incident wordt aangemaakt
Multi-Mountpoint Monitoring (Enterprise)
Als je stream meerdere mountpoints heeft (bijv. /live, /mobile, /fallback), kun je deze allemaal tegelijk bewaken.
Instellen
- Ga naar Stream Monitor > Instellingen
- Voeg je Mountpoints toe als een lijst
- Elk mountpoint wordt afzonderlijk gecontroleerd
- Incidenten worden per mountpoint bijgehouden
Onderhoudsvensters (Enterprise)
Plan perioden waarin meldingen worden onderdrukt, bijvoorbeeld tijdens gepland onderhoud of nachtelijke tests.
Instellen
- Ga naar Stream Monitor > Onderhoudsvensters
- Selecteer de dag (maandag t/m zondag)
- Stel het begin- en einduur in
- Tijdens onderhoudsvensters worden er geen meldingen verzonden, maar controles gaan gewoon door
Ondersteunde Protocollen
De Stream Monitor ondersteunt de twee meest gebruikte streamingprotocollen:
Shoutcast
- Volledig ondersteund met ICY-metadata
- Automatische detectie van luisteraars via de statistiekenpagina
- AutoDJ-detectie
Icecast
- Volledig ondersteund met ICY-metadata
- Ondersteuning voor meerdere mountpoints
- Metadata-parsing voor nu-spelend informatie
Beide protocollen ondersteunen:
- HTTPS/TLS-verbindingen
- Automatische redirect-opvolging
- Bitrate-detectie via ICY-headers
- Artiest- en titelinformatie
Incidenttypes
De Stream Monitor kan de volgende problemen detecteren:
| Type | Beschrijving | Minimaal niveau |
|---|---|---|
| Offline | Stream is niet bereikbaar | Basic |
| Stilte | Audio is stil (onder drempelwaarde) | Pro |
| Bitrate-daling | Bitrate is lager dan verwacht | Pro |
| Metadata vastgelopen | Hetzelfde nummer wordt te lang weergegeven | Pro |
| AutoDJ-failover | AutoDJ is overgenomen (live DJ uitgevallen) | Pro |
| Hoge latentie | Responstijd is abnormaal hoog | Basic |
Uptime-statistieken
De Stream Monitor berekent automatisch uptime-percentages:
- 24 uur — beschikbaarheid afgelopen dag
- 7 dagen — beschikbaarheid afgelopen week
- 30 dagen — beschikbaarheid afgelopen maand
Deze percentages worden berekend op basis van het aantal succesvolle controles ten opzichte van het totaal aantal controles. Onderhoudsvensters worden uitgesloten van de berekening.
Veelgestelde Vragen
Hoe snel word ik gewaarschuwd bij uitval?
Dit hangt af van je abonnementsniveau:
- Basic: maximaal 5 minuten
- Pro: maximaal 1 minuut
- Enterprise: maximaal 30 seconden
Kan ik de Stream Monitor gebruiken zonder een streamingpakket?
Nee, de Stream Monitor is een add-on die gekoppeld wordt aan een bestaand audio-streamingpakket bij Maenda Media.
Wat gebeurt er tijdens een onderhoudsvenster?
Controles worden nog steeds uitgevoerd en geregistreerd, maar er worden geen meldingen verstuurd. Incidenten worden wel aangemaakt voor de administratie.
Hoe verifieer ik de webhook-handtekening?
De webhook bevat een X-Maenda-Signature header met het formaat sha256=<hex>. Bereken de HMAC-SHA256 van de request body met je geheime sleutel en vergelijk deze met de waarde in de header.
Kan ik historische data exporteren?
Ja, via de Stream Statistieken pagina kun je data exporteren als CSV of PDF. Dit omvat luisteraarsaantallen, bandbreedte en pieken over de geselecteerde periode.
Detecteert de monitor ook videoproblemen?
Nee, de Stream Monitor is specifiek ontworpen voor audiostreams (Shoutcast/Icecast). Videostreaming heeft een apart statistiekenpaneel.
