public async Task <Message> EditMessage(string channelId, string messageId, MessageEdit edit) { if (edit.Content == null && !edit.Embed.HasValue) { throw new Exception("Expecting MessageEdit to have either content or embed"); } var body = new Dictionary <string, string>(); if (edit.Content != null) { body.Add("content", edit.Content); } if (edit.Embed.HasValue) { body.Add("embed", JsonConvert.SerializeObject(edit.Embed.Value)); } var response = await ClientToolbox.PatchAsync(DiscordAPI.Message(channelId, messageId), body); if (response != null && response.IsSuccessStatusCode) { Message message = this.client.CreateStructure <Message>(await response.Content.ReadAsStringAsync()); // TODO: Should be by reference, Client object may be large // Inject client return(this.InjectClient(ref message)); } return(null); }
public static async Task <bool> DeleteGuildEmoji(string guildId, string emojiId) { // TODO: DiscordAPI.Emoji var response = await ClientToolbox.DeleteAsync(DiscordAPI.Message(channelId, messageId)); return(response.StatusCode == System.Net.HttpStatusCode.NoContent); }
public static async Task <bool> DeleteMessage(string channelId, string messageId) { var response = await ClientToolbox.DeleteAsync(DiscordAPI.Message(channelId, messageId)); return(response.StatusCode == System.Net.HttpStatusCode.NoContent); }