From 0498d30b4e36f230c2a441fcfe88569fa633bed8 Mon Sep 17 00:00:00 2001 From: Lucas Nicodemus Date: Mon, 2 Jan 2012 00:47:00 -0700 Subject: [PATCH] Add /v2/server/broadcast REST endpoint --- TShockAPI/Rest/RestManager.cs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/TShockAPI/Rest/RestManager.cs b/TShockAPI/Rest/RestManager.cs index 9bac6b9f..fbfd6f64 100644 --- a/TShockAPI/Rest/RestManager.cs +++ b/TShockAPI/Rest/RestManager.cs @@ -60,6 +60,8 @@ namespace TShockAPI Rest.Register(new RestCommand("/v2/players/ban", PlayerBanV2) { RequiresToken = true }); Rest.Register(new RestCommand("/v2/players/kill", PlayerKill) {RequiresToken = true}); + Rest.Register(new RestCommand("/v2/server/broadcast", Broadcast) { RequiresToken = true}); + #region Deprecated Endpoints Rest.Register(new RestCommand("/bans/read/{user}/info", BanInfo) { RequiresToken = true }); Rest.Register(new RestCommand("/bans/destroy/{user}", BanDestroy) { RequiresToken = true }); @@ -73,9 +75,22 @@ namespace TShockAPI Rest.Register(new RestCommand("/players/{player}/ban", PlayerBan) { RequiresToken = true }); #endregion - //RegisterExamples(); } + #region RestServerMethods + + private object Broadcast(RestVerbs verbs, IParameterCollection parameters) + { + if (parameters["msg"] != null && parameters["msg"].Trim() != "") + { + TShock.Utils.Broadcast(parameters["msg"]); + return new RestObject("200")["response"] = "The message was broadcasted to all connected clients successfully."; + } + return new RestObject("500")["response"] = "Invalid msg parameter passed to REST. Cowardly not broadcasting a blank message."; + } + + #endregion + #region RestMethods private object TokenTest(RestVerbs verbs, IParameterCollection parameters)