RCON.Net.Commands
1.1.1
dotnet add package RCON.Net.Commands --version 1.1.1
NuGet\Install-Package RCON.Net.Commands -Version 1.1.1
<PackageReference Include="RCON.Net.Commands" Version="1.1.1" />
<PackageVersion Include="RCON.Net.Commands" Version="1.1.1" />
<PackageReference Include="RCON.Net.Commands" />
paket add RCON.Net.Commands --version 1.1.1
#r "nuget: RCON.Net.Commands, 1.1.1"
#:package RCON.Net.Commands@1.1.1
#addin nuget:?package=RCON.Net.Commands&version=1.1.1
#tool nuget:?package=RCON.Net.Commands&version=1.1.1
RCON.Net.Commands
Generic command helpers and base types for building typed RCON commands.
Overview
RCON.Net.Commands provides the foundational abstractions for command building and response parsing:
- ICommand Interface - Abstract command implementation contract
- CommandBase - Base class for implementing custom commands
- Response Parsing - Generic type-safe response parsing framework
- Command Builders - Utilities for building command strings
Installation
Install via NuGet:
dotnet add package RCON.Net.Commands
Dependencies
- RCON.Net.Core - Core RCON client library
Key Components
ICommand Interface
The core abstraction for all command implementations.
public interface ICommand
{
/// <summary>
/// Builds the command string to send to the server.
/// </summary>
string Build();
/// <summary>
/// Parses a server response into a typed result.
/// </summary>
T? Parse<T>(string response) where T : class;
}
CommandBase
Base class for implementing custom commands with common functionality.
public abstract class CommandBase : ICommand
{
public abstract string Build();
public virtual T? Parse<T>(string response) where T : class
{
// Default parsing logic
return response as T;
}
}
Creating Custom Commands
Implement the ICommand interface or extend CommandBase:
public class CustomCommand : CommandBase
{
private readonly string _argument;
public CustomCommand(string argument)
{
_argument = argument ?? throw new ArgumentNullException(nameof(argument));
}
public override string Build()
{
return $"custom {_argument}";
}
public override T? Parse<T>(string response) where T : class
{
// Parse response and return typed result
return null;
}
}
Usage Pattern
using RCON.Core;
using RCON.Commands;
// Create client
var client = RconClientBuilder.Create()
.WithHost("127.0.0.1")
.WithPort(25575)
.WithPassword("password")
.Build();
await client.ConnectAsync();
// Create and execute command
var command = new CustomCommand("value");
var response = await client.ExecuteAsync(command.Build());
var result = command.Parse<CustomResult>(response);
await client.DisconnectAsync();
Response Parsing
Commands support type-safe response parsing:
public class ListCommand : CommandBase
{
public override string Build() => "list";
public override T? Parse<T>(string response) where T : class
{
if (typeof(T) == typeof(PlayerList))
{
var lines = response.Split('\n');
var playerList = new PlayerList { Players = ParsePlayers(lines) };
return playerList as T;
}
return null;
}
}
Multi-Targeting
- .NET 8.0, .NET 9.0, .NET 10.0
Features
✅ Type-safe command building
✅ Generic response parsing
✅ Extensible architecture
✅ No external dependencies
✅ Simple, intuitive API
Related Packages
- RCON.Net - Core RCON client
- RCON.Net.Commands.Minecraft.Java - Minecraft Java Edition commands
License
MIT License - See LICENSE file for details.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
NuGet packages (1)
Showing the top 1 NuGet packages that depend on RCON.Net.Commands:
| Package | Downloads |
|---|---|
|
RCON.Net.Commands.Minecraft.Java
RCON commands lib for Minecraft Java edition. |
GitHub repositories
This package is not used by any popular GitHub repositories.