soulfire.protocol.SoulFireProtocol

class soulfire.protocol.SoulFireProtocol(instance_id: str, bot_id: str, client: soulfire.protocol_connect.BotProtocolServiceClient)[source]

Advanced access to SoulFire’s native Minecraft packet codec.

info(*, timeout_ms: int | None = None) → effect_py.Effect[soulfire.protocol_pb2.BotProtocolInfo, soulfire.errors.SoulFireOperationError][source]
schemas(direction: soulfire.protocol_pb2.PacketDirection, *, timeout_ms: int | None = None) → effect_py.Effect[list[soulfire.protocol_pb2.PacketSchema], soulfire.errors.SoulFireOperationError][source]
packets(*, directions: collections.abc.Iterable[soulfire.protocol_pb2.PacketDirection] = (), names: collections.abc.Iterable[str] = (), include_encoded_packet: bool = False, maximum_encoded_bytes: int = 0, timeout_ms: int | None = None) → soulfire.streams.Stream[soulfire.protocol_pb2.RawPacketEvent, soulfire.errors.SoulFireOperationError][source]
send(encoded_packet: bytes, *, expected_name: str | None = None, timeout_ms: int | None = None) → effect_py.Effect[soulfire.protocol_pb2.SendRawPacketResponse, soulfire.errors.SoulFireOperationError][source]