Skip to content

MDT np_mdt v0.3.0 ​

MDT – Mobile Dispatch Terminal is a Discord bot plus a web board for roleplay agencies: emergency services, police, fire departments, or anything else you name yourself. It's hosted at mdt.npdev.eu, so you don't need a server of your own: invite the bot, run the setup wizard, done.

The MDT landing page

The MDT has three parts:

PartWhat it does
Discord botTime clock panel (clock in / out, break, standby), statistics posts, API keys.
Web boardThe workspace at /dispatch/<guildId>: dispatch board, incidents, facility, personnel, documents and more. Login with Discord.
np_mdt (optional)A FiveM resource that connects your game server: calls to dispatch, unit status, clocking in from the game, the real MDT as an in-game tablet, and a medical simulation.

The UI is German

The MDT itself is in German. These docs are in English and keep German UI labels where you'll see them literally, with an English gloss, e.g. Leitstellenblatt (dispatch board) or Einstellungen (settings).

How Discord and the web board fit together ​

  • Every Discord server (guild) that invites the bot is its own, fully separate instance. Data, settings, terminology and API keys belong to exactly one guild.
  • The Discord panel is where people clock in and out. The web board is where the shift runs: it shows who is on duty, which units are out, and everything else. Both read and write the same data, live.
  • Logging in to the web board uses your Discord account. Only members of the guild get in, and what they see depends on their permissions.
  • Most settings exist in both places. What /setup, /panel and /apikey configure can also be done in the web under Einstellungen → Stempeluhr (settings → time clock).

Modules ​

The time clock (Stempeluhr) is always on. Everything else is a module that each instance switches on or off; disabled modules disappear from the navigation and from the API.

ModuleKeyWhat it is
LeitstellenblattboardDispatch board: who's on duty, units, crews, statuses, live for everyone
EinsätzeeinsatzIncident sheets with a map of Los Santos, people involved, timeline and handover
BürgerregistercitizensCitizen records; which fields are visible is decided by the owner's sharing rules
FallaktencasefilesCase files beyond a single incident (opt-in)
EinrichtungfacilityBuildings, rooms and beds (or cells, bays …), patient files
VerletzungeninjuriesInjury marking on a 3D body model
PersonalpersonalPersonnel sheet: staff, ranks, qualifications, your own columns
KalendercalendarAbsences, appointments and reminders with Discord notifications
KursecoursesCourses with configurable sign-up fields and pass / fail actions
DokumentedocumentsGuidelines, forms, letterheads, read rights and public read links
PostfachpostfachApplications and contact requests from Discord as cases (opt-in)
StatistikstatsLeaderboards and charts, posted to Discord on a schedule
ListenlistsFree-form lists with your own columns, including counters
LagerlagerStock and withdrawals
VersicherungenversicherungInsurance contracts, quotas and billing
WebsitessitesA public website for your agency (opt-in)
TVtvPresentations for in-game screens, with live slides

The three opt-in modules (postfach, sites, casefiles) are off in every template, because they need setup before they show anything.

Templates and terminology ​

The setup wizard starts from one of four templates. A template sets the words the UI uses, the default modules and the badge prefix. All of it can be changed later.

TemplateUnitFacilityPersonBadge prefix
Rettungsdienst (EMS)EinheitEinrichtungPatientMD
Polizei (police)StreifeWacheInsassePD
Feuerwehr (fire)FahrzeugFeuerwacheBetroffenerFD
NeutralEinheitEinrichtungPersonnone

The police template leaves out the injuries module. See Instances & permissions for the full list of terms.

Next steps ​

np_* FiveM resources