Add REST endpoints:
- /v2/players/mute - /v2/players/unmute
This commit is contained in:
parent
e813ac8f87
commit
4f07567eeb
1 changed files with 56 additions and 0 deletions
|
|
@ -59,6 +59,8 @@ namespace TShockAPI
|
|||
Rest.Register(new RestCommand("/v2/players/kick", PlayerKickV2) { RequiresToken = true });
|
||||
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/players/mute", PlayerMute) {RequiresToken = true});
|
||||
Rest.Register(new RestCommand("/v2/players/unmute", PlayerUnMute) {RequiresToken = true});
|
||||
|
||||
Rest.Register(new RestCommand("/v2/server/broadcast", Broadcast) { RequiresToken = true});
|
||||
Rest.Register(new RestCommand("/v2/server/off", Off) {RequiresToken = true});
|
||||
|
|
@ -426,6 +428,60 @@ namespace TShockAPI
|
|||
|
||||
#region RestPlayerMethods
|
||||
|
||||
private object PlayerUnMute(RestVerbs verbs, IParameterCollection parameters)
|
||||
{
|
||||
var returnBlock = new Dictionary<string, object>();
|
||||
var playerParam = parameters["player"];
|
||||
var found = TShock.Utils.FindPlayer(playerParam);
|
||||
var reason = parameters["reason"];
|
||||
if (found.Count == 0)
|
||||
{
|
||||
returnBlock.Add("status", "400");
|
||||
returnBlock.Add("error", "Name " + playerParam + " was not found");
|
||||
}
|
||||
else if (found.Count > 1)
|
||||
{
|
||||
returnBlock.Add("status", "400");
|
||||
returnBlock.Add("error", "Name " + playerParam + " matches " + playerParam.Count() + " players");
|
||||
}
|
||||
else if (found.Count == 1)
|
||||
{
|
||||
var player = found[0];
|
||||
player.mute = false;
|
||||
player.SendMessage("You have been remotely unmuted.");
|
||||
returnBlock.Add("status", "200");
|
||||
returnBlock.Add("response", "Player " + player.Name + " was muted.");
|
||||
}
|
||||
return returnBlock;
|
||||
}
|
||||
|
||||
private object PlayerMute(RestVerbs verbs, IParameterCollection parameters)
|
||||
{
|
||||
var returnBlock = new Dictionary<string, object>();
|
||||
var playerParam = parameters["player"];
|
||||
var found = TShock.Utils.FindPlayer(playerParam);
|
||||
var reason = parameters["reason"];
|
||||
if (found.Count == 0)
|
||||
{
|
||||
returnBlock.Add("status", "400");
|
||||
returnBlock.Add("error", "Name " + playerParam + " was not found");
|
||||
}
|
||||
else if (found.Count > 1)
|
||||
{
|
||||
returnBlock.Add("status", "400");
|
||||
returnBlock.Add("error", "Name " + playerParam + " matches " + playerParam.Count() + " players");
|
||||
}
|
||||
else if (found.Count == 1)
|
||||
{
|
||||
var player = found[0];
|
||||
player.mute = true;
|
||||
player.SendMessage("You have been remotely muted.");
|
||||
returnBlock.Add("status", "200");
|
||||
returnBlock.Add("response", "Player " + player.Name + " was muted.");
|
||||
}
|
||||
return returnBlock;
|
||||
}
|
||||
|
||||
private object PlayerList(RestVerbs verbs, IParameterCollection parameters)
|
||||
{
|
||||
var activeplayers = Main.player.Where(p => p != null && p.active).ToList();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue