pinger_bot.mc_api#
API module with Minecraft Servers API.
Module Contents#
Classes#
Class for containing information about server address. |
|
Dataclass for |
|
Base class for |
|
Represents an Minecraft Server, doesn't depends on platform (Java or Bedrock). |
|
Represents a server, when ping failed. |
Attributes#
Helper for tests, this used when you need to remove the cache. |
- _Address_resolve_cache: cachetools.TTLCache[source]#
Helper for tests, this used when you need to remove the cache.
- class Address[source]#
Class for containing information about server address.
- _server: mcstatus.JavaServer | mcstatus.BedrockServer[source]#
Private attribute with JavaServer or BedrockServer instance.
- async classmethod resolve(input_ip: str, *, java: bool) Address[source]#
Resolve IP or domain or alias to
Addressobject.- Parameters:
input_ip – IP or domain or alias to resolve.
java – If True, then
mcstatus.JavaServerwill be used. Else -mcstatus.BedrockServer.
- Returns:
Resolved
Addressobject.
- async static _get_ip_from_alias(alias: str) str | None[source]#
Get IP from alias.
- Parameters:
alias – Alias to resolve.
- Returns:
IP if alias was found, else None.
- class Players[source]#
Dataclass for
MCServer.playersfield.
- class BaseMCServer[source]#
Bases:
abc.ABCBase class for
MCServerandFailedMCServer.
- class MCServer[source]#
Bases:
BaseMCServerRepresents an Minecraft Server, doesn’t depends on platform (Java or Bedrock).
- async classmethod status(host: str) MCServer | FailedMCServer[source]#
Get cross-platform status.
First ping it as
mcstatus.JavaServer, and if it fails, ping asmcstatus.BedrockServer.- Parameters:
host – Host where server is, like
127.0.0.1:25565,hypixel.netor alias.- Returns:
Initialised
MCServerobject orFailedMCServerif ping failed.
- async static _handle_exceptions(done: Set[asyncio.Task], pending: Set[asyncio.Task]) asyncio.Task | None[source]#
Handle exceptions in
MCServer.status()method.This also cancels all pending tasks, if found correct one.
- Parameters:
done – Direct
doneset fromasyncio.wait()method.pending – All pending tasks, which will be recursively handled.
- Returns:
Value from
taskparameter, or one of the success tasks frompendingset.- Raises:
ValueError – If
doneset is empty.
- class FailedMCServer[source]#
Bases:
BaseMCServerRepresents a server, when ping failed.