23 lines
777 B
Plaintext
23 lines
777 B
Plaintext
@startuml
|
|
skinparam shadowing false
|
|
title Control API: real address and ban of a player
|
|
|
|
participant "Admin tool" as admin
|
|
participant "etrelay control API\n<front-wg>:8090" as control
|
|
participant "etrelay\nrelay loop" as relay
|
|
participant "ET server" as et
|
|
actor "Player\n203.0.113.7" as player
|
|
|
|
note over admin, et : the ET server shows the player as <front-wg>:51234
|
|
admin -> control : GET /sessions
|
|
control --> admin : [{client: 203.0.113.7:27960, port: 51234}]
|
|
note right of admin : port 51234 = 203.0.113.7
|
|
|
|
== Ban ==
|
|
admin -> control : PUT /bans/203.0.113.7\n{reason, minutes}
|
|
control -> control : bans.json (atomic write)\ncut 203.0.113.7's sessions
|
|
player -> relay : game packets
|
|
relay -> relay : banned: dropped
|
|
note over et : no packet: times the player out
|
|
@enduml
|