57 lines
1.7 KiB
Diff
57 lines
1.7 KiB
Diff
--- /dev/null
|
|
+++ b/option/minecraft.go
|
|
@@ -0,0 +1,53 @@
|
|
+// OMV
|
|
+package option
|
|
+
|
|
+import "encoding/json"
|
|
+
|
|
+type MinecraftInboundOptions struct {
|
|
+ ListenOptions
|
|
+ Users []MinecraftUser `json:"users,omitempty"`
|
|
+ Status *MinecraftStatus `json:"status,omitempty"`
|
|
+ Fallback *MinecraftFallbackOptions `json:"fallback,omitempty"`
|
|
+}
|
|
+
|
|
+type MinecraftFallbackOptions struct {
|
|
+ ServerOptions
|
|
+ Tag string `json:"tag,omitempty"`
|
|
+}
|
|
+
|
|
+type MinecraftStatus struct {
|
|
+ Forward bool `json:"forward,omitempty"`
|
|
+ Version *MinecraftStatusVersion `json:"version,omitempty"`
|
|
+ Description json.RawMessage `json:"description,omitempty"`
|
|
+ Players *MinecraftStatusPlayers `json:"players,omitempty"`
|
|
+ Favicon string `json:"favicon,omitempty"`
|
|
+ EnforcesSecureChat bool `json:"enforces_secure_chat,omitempty"`
|
|
+}
|
|
+
|
|
+type MinecraftStatusVersion struct {
|
|
+ Name string `json:"name,omitempty"`
|
|
+ Protocol int `json:"protocol,omitempty"`
|
|
+}
|
|
+
|
|
+type MinecraftStatusPlayers struct {
|
|
+ Max int `json:"max,omitempty"`
|
|
+ Online int `json:"online,omitempty"`
|
|
+ Sample []MinecraftStatusPlayerSample `json:"sample,omitempty"`
|
|
+}
|
|
+
|
|
+type MinecraftStatusPlayerSample struct {
|
|
+ Name string `json:"name"`
|
|
+ ID string `json:"id"`
|
|
+}
|
|
+
|
|
+type MinecraftUser struct {
|
|
+ Username string `json:"username,omitempty"`
|
|
+ Password string `json:"password,omitempty"`
|
|
+}
|
|
+
|
|
+type MinecraftOutboundOptions struct {
|
|
+ DialerOptions
|
|
+ ServerOptions
|
|
+ Username string `json:"username,omitempty"`
|
|
+ Password string `json:"password,omitempty"`
|
|
+}
|