Jump to content

SimTX API/Packets/IpModerationRequest

From SimTX Wiki
Revision as of 16:58, 24 October 2026 by Clanker (talk | contribs) (Protocol v25 reference: IpModerationRequest)
IpModerationRequest
Frame ClientFrame, field 61
Member ip_moderation
Direction Client → server
Session Moderation
Roles ROLE_MODERATION.
Permission moderation.manage
Answered by IpModerationResult or Error
Answers
Defined in control.proto

IpModerationRequest bans or unbans a client address.

Definition

message IpModerationRequest {
  int64 request_id = 1;
  IpModerationAction action = 2;
  string target = 3;
  string reason = 4;
  int64 duration_seconds = 5;
}

Fields

# Field Type Description
1 request_id int64 Nonzero; echoed in the IpModerationResult or Error.
2 action IpModerationAction IP_MODERATION_ACTION_BAN or IP_MODERATION_ACTION_UNBAN. Required.
3 target string An IP address, or the callsign of a connected session whose address should be used.
4 reason string Reason, shown to the banned user.
5 duration_seconds int64 Ban duration. 0 = permanent. At most 3,650 days; not negative.

Effects

A ban disconnects the address's receiver and transmitter sessions, sends a BANNER_LEVEL_BAN_NOTICE Banner to its control sessions, and refuses new game connections from it with HELLO_STATUS_IP_BANNED. Unbanning an address that is not banned is answered with Error NOT_FOUND; an invalid target or duration with INVALID_REQUEST.

Example

Complete frames, including the varint length prefix, from the protocol's golden test vectors (protocol/simtx/v25/testdata/frames.json).

ip_moderation_ban (client to server, 30 bytes):

1D                                        frame length 29
EA 03 1A                                  ip_moderation (IpModerationRequest), 26 bytes
  08 2E                                   request_id = 46
  10 02                                   action = 2 (IP_MODERATION_ACTION_BAN)
  1A 0B 32 30 33 2E 30 2E 31 31 33 2E 39  target = "203.0.113.9"
  22 04 73 70 61 6D                       reason = "spam"
  28 90 1C                                duration_seconds = 3600

See also

SimTX API reference (protocol v25)
Start OverviewQuick startFramingData typesPacket listSchemaLimits and errorsCompatibility and versioning
Account service OverviewDevice loginServer directoryStation endpointsGame ticketsPermissionsPublic endpoints
Game protocol Connection and handshakeSession statusReceiver sessionTransmitter sessionControl sessionCatalogModeration
Stations StationsSatellitesTracking and pointing
Connection ClientHelloPingServerHelloPongErrorBanner
Session AntennaPointingUpdateSessionStatus
Receiver ForwardedClientAddressReceiverStartReceiverRetuneIqStreamDescriptorIqBlock
Transmitter TransmitterStartSampleBlockTxUpdateTxModeInfoTxQueueTxAcceptTxTelemetryTxUpdateAck
Control ListStationsStartMonitorStopMonitorWeatherMapRequestServerHealthRequestCoverageMapRequestEphemerisRequestPassPredictionRequestStationListMonitorBlockMonitorEndWeatherMapResponseServerHealthReportCoverageMapResponseEphemerisResponsePassPredictionResponseMonitorAck
Catalog CatalogListRequestCatalogFetchCatalogUploadCatalogDeleteCatalogListCatalogEntryCatalogUploadResultCatalogDeleteResult
Moderation KickRequestIpModerationRequestBroadcastBannerKickResultIpModerationResultStationImpactList
Archive Protocol v24 reference