πŸ” Field Training Officers

FTO Admin Panel

Training management dashboard. Log completions, issue certs, and manage training records directly from this panel.

β€”
Total Records
β€”
Certified
β€”
Ready to Cert
β€”
In Progress
RobloxDiscordLevelExamPsychomotorRide-AlongStatusActions
Loading…

Ready for Certification

All three requirements done. Issue the cert directly from here.

Loading…

Issued Certifications

All active certs. Public lookup β†’

Loading…

Discord Bot Commands

25 commands. FTO role required unless marked Public. Supervisor = EMS Supervisor role only.

Certification Management
/log-psychomotor
Log a trainee's in-game psychomotor evaluation. DMs the trainee and updates Supabase.
/log-psychomotor trainee:@user level:EMT date:2025-07-15
trainee (req)level (req)date YYYY-MM-DD (req)roblox_usernamenotes
/log-ridealong
Log a supervised ride-along. Bot notifies if all requirements are now complete.
/log-ridealong trainee:@user level:EMT date:2025-07-20
trainee (req)level (req)date (req)
/issue-cert
Issue certification after all 3 requirements are met. DMs cert embed + PNG to trainee.
/issue-cert trainee:@user level:EMT
/force-cert
Issue cert bypassing all requirements. For IRL-certified, testing, or exemptions.
/force-cert trainee:@user level:EMT reason:"IRL certified"
/cert-revoke
Formally revoke a cert. Reason is mandatory and sent to the trainee via DM. Better audit trail than /delete-cert.
/cert-revoke trainee:@user level:EMT reason:"Policy violation"
/delete-cert
Revoke cert silently. Use /cert-revoke for documented revocations.
/delete-cert trainee:@user level:EMT reset_progress:False
/recert
Reissue a new cert number for someone already certified. Keeps all progress intact.
/recert trainee:@user level:EMT
/update-roblox
Update a trainee's Roblox username across all their certification records.
/update-roblox trainee:@user roblox_username:NewName123
Reporting & Lookups
/list-pending
Shows all trainees who've completed all requirements and are waiting for /issue-cert.
/list-pending
/trainee-list
Lists all active trainees broken into stages: needs psychomotor, needs ride-along, ready to cert.
/trainee-list level:EMT (level optional)
/stats
Training statistics overview β€” certified, pending, in-progress per level.
/stats
/fto-activity
FTO certification leaderboard showing who has issued the most certs.
/fto-activity
/trainee-report
Full training report for one trainee across all cert levels β€” exam scores, dates, cert numbers.
/trainee-report trainee:@user
/exam-history
Shows all past exam attempts (pass and fail) for a trainee with scores and dates.
/exam-history trainee:@user
/remind-pending
Posts a message in the training channel mentioning all trainees ready for cert.
/remind-pending
/announce
Posts a styled public certification announcement embed to the training channel.
/announce trainee:@user level:EMT
/pcr-stats
Statistics from the PCR system: call volumes, refusal rates, top submitters.
/pcr-stats
/pcr-lookup
Retrieve and display a full PCR or Refusal report by its report number.
/pcr-lookup report_number:PCR-20250715-A3F7
/delete-pcr Supervisor
Permanently delete a PCR or Refusal. Requires EMS Supervisor role.
/delete-pcr report_number:PCR-20250715-A3F7
Public Commands Anyone
/cert-info Public
Verify any cert number is real and active β€” shows holder, level, date, and who issued it.
/cert-info cert_number:EMT-20250715-A3F7
/cert-card Public
Display a certification card with a link to print/view the cert.
/cert-card cert_number:EMT-20250715-A3F7
/my-certs Public
Check your own training progress and certifications (ephemeral β€” only you see it).
/my-certs
/my-pcrs Public
See your own 5 most recent PCR and Refusal submissions.
/my-pcrs
/set-roblox Public
Set or update your own Roblox username on your training records.
/set-roblox roblox_username:YourNewName
/lookup Public
Look up any trainee's certification status and training progress.
/lookup trainee:@user