SimTX API/Moderation session
A moderation session (ROLE_MODERATION) gives SimTX moderators tools to see who is on a server and to remove disruptive sessions. It is documented for completeness, so that every frame in the packet list is explained. Third-party software cannot use it without an account holding the moderation.manage permission, and the account service will not issue a moderation ticket otherwise.
Permissions within the session
The server checks two grants for each request:
- MODERATE, from
moderation.manage: listing stations with addresses, kicking, IP bans and banners. - MONITOR, from
monitor.any: monitoring any transmitter.
A request without the matching grant is answered with Error FORBIDDEN and the request's request_id; the session stays open.
Requests
| Request (C2S) | Response (S2C) | Grant | Purpose |
|---|---|---|---|
| ListStations (30) | StationList (30), then StationImpactList (63) | MODERATE | Stations including client addresses, followed by an interference analysis. |
| KickRequest (60) | KickResult (60) | MODERATE | Disconnect sessions by callsign or session id. |
| IpModerationRequest (61) | IpModerationResult (61) | MODERATE | Ban or unban an address. |
| BroadcastBanner (62) | None | MODERATE | Show, replace or clear the server notice. |
| StartMonitor (31), StopMonitor (32) | MonitorAck (42), MonitorBlock (31), MonitorEnd (32) | MONITOR | Listen to any transmitter. |
Failures are reported with Error and the request's request_id; v24's ModerationError is gone. Through the public gateway, moderation requests are fanned out to every server node and the answers merged.
Effects of a kick
Kicked receivers and transmitters get SessionStatus ENDED with the moderator's reason, and their connections close.
Effects of a ban
When an address is banned, the server ends its receiver and transmitter sessions. Its control sessions stay connected and receive a Banner with level BANNER_LEVEL_BAN_NOTICE and the reason, so that the user's application can explain what happened. New game connections from the address are refused with HELLO_STATUS_IP_BANNED.