rcon package
Submodules
rcon.asyncio module
rcon.client module
Synchronous client.
- class rcon.client.Client(host: str, port: int, *, timeout: Optional[float] = None, passwd: Optional[str] = None)
Bases:
object
An RCON client.
- close() None
Closes the socket connection.
- communicate(packet: rcon.proto.Packet) rcon.proto.Packet
Sends and receives a packet.
- connect(login: bool = False) None
Connects the socket and attempts a login if wanted and a password is set.
- host
- login(passwd: str, *, encoding: str = 'utf-8') bool
Performs a login.
- passwd
- port
- read() rcon.proto.Packet
Reads a packet.
- run(command: str, *args: str, encoding: str = 'utf-8') str
Runs a command.
- property timeout: float
Returns the socket timeout.
rcon.config module
RCON server configuration.
- class rcon.config.Config(host: str, port: int, passwd: Optional[str] = None)
Bases:
NamedTuple
Represents server configuration.
- classmethod from_config_section(section: configparser.SectionProxy) rcon.config.Config
Creates a credentials tuple from the respective config section.
- classmethod from_string(string: str) rcon.config.Config
Reads the credentials from the given string.
- host: str
Alias for field number 0
- passwd: Optional[str]
Alias for field number 2
- port: int
Alias for field number 1
- rcon.config.from_args(args: argparse.Namespace) rcon.config.Config
Get the credentials for a server from the respective arguments.
rcon.console module
An interactive console.
- rcon.console.rconcmd(host: str, port: int, passwd: str, *, prompt: str = 'RCON {host}:{port}> ')
Initializes the console.
rcon.errorhandler module
Common errors handler.
rcon.exceptions module
RCON exceptions.
- exception rcon.exceptions.ConfigReadError
Bases:
Exception
Indicates an error while reading the configuration.
- exception rcon.exceptions.RequestIdMismatch(sent: int, received: int)
Bases:
Exception
Indicates a mismatch in request IDs.
- exception rcon.exceptions.UserAbort
Bases:
Exception
Indicates that a required action has been aborted by the user.
- exception rcon.exceptions.WrongPassword
Bases:
Exception
Indicates a wrong password.
rcon.gui module
rcon.proto module
Low-level protocol stuff.
- class rcon.proto.LittleEndianSignedInt32(*_)
Bases:
int
A little-endian, signed int32.
- MAX = 2147483647
- MIN = -2147483648
- async classmethod aread(reader: asyncio.streams.StreamReader) rcon.proto.LittleEndianSignedInt32
Reads the integer from an asynchronous file-like object.
- classmethod read(file: IO) rcon.proto.LittleEndianSignedInt32
Reads the integer from a file-like object.
- class rcon.proto.Packet(id: LittleEndianSignedInt32, type: Type, payload: bytes, terminator: bytes = b'\x00\x00')
Bases:
NamedTuple
An RCON packet.
- async classmethod aread(reader: asyncio.streams.StreamReader) rcon.proto.Packet
Reads a packet from an asynchronous file-like object.
- id: rcon.proto.LittleEndianSignedInt32
Alias for field number 0
- classmethod make_command(*args: str, encoding: str = 'utf-8') rcon.proto.Packet
Creates a command packet.
- classmethod make_login(passwd: str, *, encoding: str = 'utf-8') rcon.proto.Packet
Creates a login packet.
- payload: bytes
Alias for field number 2
- classmethod read(file: IO) rcon.proto.Packet
Reads a packet from a file-like object.
- terminator: bytes
Alias for field number 3
- type: rcon.proto.Type
Alias for field number 1
- class rcon.proto.Type(value)
Bases:
enum.Enum
RCON packet types.
- SERVERDATA_AUTH = 3
- SERVERDATA_AUTH_RESPONSE = 2
- SERVERDATA_EXECCOMMAND = 2
- SERVERDATA_RESPONSE_VALUE = 0
- async classmethod aread(reader: asyncio.streams.StreamReader) rcon.proto.Type
Reads the type from an asynchronous file-like object.
- classmethod read(file: IO) rcon.proto.Type
Reads the type from a file-like object.
- rcon.proto.random_request_id() rcon.proto.LittleEndianSignedInt32
Generates a random request ID.
rcon.rconclt module
RCON client CLI.
- rcon.rconclt.main() int
Runs the main script with exceptions handled.
rcon.rconshell module
An interactive RCON shell.
- rcon.rconshell.get_args() argparse.Namespace
Parses and returns the CLI arguments.
- rcon.rconshell.main() int
Runs the main script with exceptions handled.
rcon.readline module
Wrapper for readline support.
Module contents
RCON client library.
- class rcon.Client(host: str, port: int, *, timeout: Optional[float] = None, passwd: Optional[str] = None)
Bases:
object
An RCON client.
- close() None
Closes the socket connection.
- communicate(packet: rcon.proto.Packet) rcon.proto.Packet
Sends and receives a packet.
- connect(login: bool = False) None
Connects the socket and attempts a login if wanted and a password is set.
- host
- login(passwd: str, *, encoding: str = 'utf-8') bool
Performs a login.
- passwd
- port
- read() rcon.proto.Packet
Reads a packet.
- run(command: str, *args: str, encoding: str = 'utf-8') str
Runs a command.
- property timeout: float
Returns the socket timeout.
- exception rcon.RequestIdMismatch(sent: int, received: int)
Bases:
Exception
Indicates a mismatch in request IDs.
- exception rcon.WrongPassword
Bases:
Exception
Indicates a wrong password.
- async rcon.rcon(command: str, *arguments: str, host: str, port: int, passwd: str, encoding: str = 'utf-8') str
Runs a command asynchronously.