Hoe werkt P2000?
Iedere keer dat in Tilburg een sirene over de Ringbaan raast of een brandweerwagen door Kaatsheuvel naar een ongeval op de N261 rijdt, is er kort daarvoor een P2000-bericht over de pieper van de gealarmeerde eenheid gegaan. Op deze pagina leggen we uit wat P2000 precies is, hoe ons systeem die berichten leesbaar maakt, en hoe je codes als A1, P 2 en GRIP-3 moet lezen.
Wat P2000 in het kort is
P2000 is het landelijke alarmeringsnetwerk waarop de Nederlandse meldkamers tekstberichten naar hulpverleners sturen. Brandweer, ambulancedienst en politie krijgen via dit systeem in enkele seconden door waar ze naartoe moeten, met welke prioriteit en wat voor soort inzet. Het netwerk is bewust simpel: een eenrichtingsradioprotocol (FLEX) waardoor het ook in kelderruimtes en op de A1 nog werkt waar mobiel netwerk soms wegvalt.
Waarom is er P2000 gekomen?
Tot eind jaren '90 had elke regio zijn eigen verouderde alarmsysteem. Bij de Bijlmerramp van 1992 (de cargoramp van El Al-vlucht 1862) bleek pijnlijk hoeveel problemen onverenigbare communicatiesystemen veroorzaakten. Acht jaar later was de Vuurwerkramp in Enschede de tweede wake-up call. P2000 werd in 2000 en 2001 landelijk uitgerold als standaardnetwerk: een protocol, dezelfde apparatuur, bruikbaar van een kleine ambulancerit in Goirle tot grootschalige rampenbestrijding bij een industriebrand op de Vossenberg.
Wat gebeurt er na een 112-melding?
Als iemand 112 belt, beoordeelt de centralist in de GMK Zeeland-West-Brabant in Bergen op Zoom welke hulp ter plaatse moet komen. Op basis van adres, type incident en beschikbaarheid worden een of meer eenheden geselecteerd. Vervolgens stuurt het systeem een kort tekstbericht uit over P2000, dat door de pager van de betreffende brandweerlieden, ambulancepersoneel of politie-eenheid wordt opgepikt. Die eenheid zet zich in beweging en meldt zich via C2000 (zie hieronder) bij de meldkamer.
P2000 versus C2000: wat is het verschil?
Twee bijna identieke namen, twee compleet verschillende netwerken. P2000 is uitsluitend voor alarmeringen: eenrichtingverkeer van meldkamer naar pager. Wat je op deze site ziet, komt van P2000. C2000 is het versleutelde portofoon-netwerk waarop hulpverleners ter plaatse met de meldkamer praten. Daar gaat de echte coördinatie overheen (statusupdates, opschalingen, terugmelden), maar dat verkeer is niet openbaar. Een melding hier op de site is dus altijd het begin; wat erna gebeurde verdwijnt achter het gordijn van C2000.
Hoe wij P2000-meldingen leesbaar maken
Iedere alarmering die je hier ziet, doorloopt eerst een vaste, geautomatiseerde pipeline. Hieronder loop ik de zes stappen langs, van het binnenhalen van de uitzending tot de uiteindelijke archivering. Er zit geen taalmodel achter, geen black box, alles gebeurt op basis van expliciete regels die we zelf hebben geschreven en kunnen nakijken.
1. Opvangen van de uitzendingen
P2000 is ongecodeerd, en dat maakt de berichten juridisch openbaar. We luisteren in real-time mee op het landelijke netwerk; iedere minuut spoelt er een nieuwe lading uitzendingen binnen. Wat niet voor onze regio bestemd is, valt direct af, de rest gaat als ruwe bron-tekst de pipeline in. In de praktijk staat een verse melding binnen 30 tot 60 seconden op de site, en zowel de feed als de live-kaart verversen zichzelf. Voor levensbedreigende situaties geldt vanzelfsprekend: bel 112, niet deze site.
2. Herschrijven naar leesbare zinnen
Een ruwe P2000-uitzending ziet er ongeveer zo uit:
A1 13117 RIT 78231 Ringbaan-Oost 1234 Tilburg. Niet
bepaald aangenaam leesvoer, dus onze rewriter trekt elk veld uit
elkaar en bouwt er een volledige Nederlandse zin van: "Een
ambulance rijdt met spoed naar de Ringbaan-Oost in Tilburg."
De hele logica is regel-gebaseerd: zo'n 150 incident-patronen, een
capcode-database met circa 10.000 entries en
plaats-afkortingstabellen per veiligheidsregio. Geen
taalmodel, dus ook geen AI-verzinsels, geen verborgen
API-aanroepen. Voorspelbaar, snel (8 tot 15 milliseconden per
melding) en altijd terug te leiden naar de regel die de output
produceerde.
Codes en capcodes die we niet herkennen, belanden in een log. Met iedere release vullen we de regels aan op basis van wat we recentelijk voorbij zagen komen. De codes en afkortingen die in onze herschreven berichten zichtbaar blijven, vind je in het codes-overzicht verderop.
3. Verrijken met locatie, kaart en koppeling
Zodra de zin staat, plakken we er extra context bij:
- Geocoding: het straat-adres gaat via OpenStreetMap om naar coördinaten, zodat we een marker kunnen zetten op de kaart.
- Wijk en stadsdeel: in stedelijke kernen, zoals Tilburg-Reeshof of Tilburg-Noord, hangen we ook de wijk- of stadsdeel-aanduiding aan de melding.
- Multi-dienst koppeling: rijden brandweer, ambulance en politie binnen hetzelfde tijdsbestek naar hetzelfde adres, dan bundelen we die meldingen tot één samenhangend nieuws-bericht (terug te vinden in de 112-nieuws hub).
- Helikopter-koppeling: trauma- en politie-helikopters in de lucht houden we continu in beeld via ADS-B-data (OpenSky Network). Past een vlucht binnen tijd en afstand van een melding, dan leggen we de link. De live-trail van een actieve vlucht staat op de helikopters-pagina.
4. Wat we filteren
Weten dat er een sirene voorbijkomt is één ding, op straat kunnen meelezen wie er getroffen is, is een ander verhaal. Daarom houden we het volgende tegen:
- Zelfdoding-meldingen: gaan landelijk al niet via P2000, in overleg met het ministerie van Binnenlandse Zaken. Onze ontvanger ziet ze dus simpelweg niet.
- Medische diagnoses: codes als DIA, CVA, AMI of EPI strippen we weg of vervangen we door een neutrale omschrijving ("vervoer naar ziekenhuis"). De aandoening van iemand hoort niet thuis op een publieke pagina.
- Persoonsgegevens: namen, leeftijden, telefoonnummers, kentekens, niets daarvan tonen we. Het meeste staat trouwens ook niet eens in de bron-tekst.
- Adressen van gevoelige zorglocaties: blijf-van-mijn-lijf-huizen, crisis-opvang en GGZ-instellingen krijgen alleen een gemeentenaam, nooit een specifieke straat.
Wil je de volledige uitleg over wat we wel en niet publiceren, inclusief de procedure voor een verwijderverzoek? Lees de privacy-pagina van P2000 Online.
Intern hulpdienst-verkeer. P2000 draagt ook berichten die niets met een melding te maken hebben. Oefeningen, verzoeken om telefonisch contact met de meldkamer, het herbezetten van een kazerne, brugbedieningen, nacontroles en ingetrokken alarmen laten we daarom weg uit de tijdlijn. Ze zouden de lijst vervuilen zonder iets toe te voegen.
5. Hulpdienst-adressen worden geverifieerd
Op de hulpdiensten-pagina verzamelen we adressen, telefoonnummers en openingstijden van brandweerkazernes, politiebureaus, ambulanceposten, ziekenhuizen, huisartsenposten, dienstapotheken en, waar van toepassing, KNRM-stations in de regio. Per entry hebben we de gegevens gecontroleerd bij de officiële site van de organisatie zelf (brandweer.nl, politie.nl, het ziekenhuis-eigen domein, enzovoort). Niets komt op de pagina zonder die dubbelcheck.
6. Bewaring en archief
Alle meldingen blijven raadpleegbaar in een doorzoekbaar archief. Bij een intrekking ("Alarm Ingetrokken") plaatsen we een visueel merkteken bij de oorspronkelijke melding. Verwijderen doen we niet automatisch, want de uitruk heeft op dat moment gewoon plaatsgevonden; we maken alleen duidelijk dat er geen vervolg op kwam. Het archief op /archief/ reikt drie maanden terug en kent ook deep-link-bare URL's per dag en per dorp voor specifieke datums.
Voor de zekerheid nog eens met zoveel woorden: we zijn geen onderdeel van een meldkamer, een hulpdienst of een veiligheidsregio. Wat we doen is bestaande openbare data wat toegankelijker presenteren, en onze automatische herschrijving kan af en toe minimaal afwijken van wat er in werkelijkheid is uitgevoerd. Voor officiële communicatie verwijzen we naar de Veiligheidsregio Midden- en West-Brabant en de eigen kanalen van de hulpdiensten. Meer achtergrond over de mensen achter de site en hoe we ons financieel staande houden, vind je op de over-ons-pagina.
Codes en afkortingen
In meldingen kom je codes tegen als A1, P 2, OMS of GRIP-3. Hieronder een overzicht van alleen de codes die in onze herschreven berichten nog zichtbaar blijven. Afkortingen die we al hebben vertaald (zoals "AANR" voor aanrijding) laten we weg.
Ambulance
- A0
- Niet-spoedeisend vervoer (besteld). Geen sirene.
- A1
- Hoogste spoed. Mogelijk levensbedreigend. Maximaal 15 minuten responstijd, met sirene en zwaailicht.
- A2
- Wel spoed maar niet levensbedreigend. Doorgaans binnen 30 minuten ter plaatse, soms zonder sirene.
- B
- Besteld vervoer. Geplande rit, geen spoed.
Brandweer
- Prio 1
- Spoedinzet. Tankautospuit rukt direct uit met sirene.
- Prio 2
- Inzet zonder sirene. Vaak loze melding, dier in nood, of klein nieuws-bericht.
- Prio 3
- Lage prioriteit. Rij-tijd minder kritiek.
- Prio 4
- Geen rij-spoed. Bv. nazorg of materiaal halen.
- Mogelijke brand
- Vermoeden van brand zonder bevestiging (bijvoorbeeld iemand ruikt brandlucht, ziet rook of meldt iets verdachts. De officiële P2000-term is "Brandgerucht"; wij gebruiken "mogelijke brand" omdat dat duidelijker is. Vaak loos alarm, maar de brandweer rijdt meestal wel uit om te checken.
- OMS
- Openbaar Meldsysteem. Een brandmeldinstallatie in een gebouw heeft zelf alarm geslagen. Vaak loos (rook van koken o.i.d.).
- GRIP-1
- Lokaal nieuws-bericht dat coördinatie tussen hulpdiensten vraagt.
- GRIP-2
- Effecten reiken buiten de directe omgeving.
- GRIP-3
- Bedreiging voor het welzijn van de bevolking, met gemeente betrokken.
- GRIP-4
- Schaal overstijgt één gemeente.
- GRIP-5
- Bovenregionaal, met meerdere veiligheidsregio's.
Politie
- Prio 1
- Spoed. Levensbedreigend of heterdaad. Sirenes aan.
- Prio 2
- Spoed maar niet acuut. Zo snel mogelijk ter plaatse.
- Prio 3
- Geen rij-spoed. Bijvoorbeeld melding noteren of opvolgen.
- Prio 4
- Administratief. Geen directe inzet.
Let op: prio-codes verschillen per regio
De definities hierboven zijn bedoeld als praktische gids, niet als juridische standaard. In de regio Midden- en West-Brabant kan een Prio 2 net iets anders worden gehanteerd dan in Brabant-Zuidoost of Brabant-Noord. De globale strekking (sirene aan/uit, levensbedreigend ja/nee) klopt landelijk; de precieze grensgevallen verschillen per veiligheidsregio.