Exemple #1
0
        public async Task ModifyAsync(Action <ModifyMessageParams> func)
        {
            if (func == null)
            {
                throw new NullReferenceException(nameof(func));
            }

            var args = new ModifyMessageParams();

            func(args);
            var guildChannel = Channel as GuildChannel;

            Model model;

            if (guildChannel != null)
            {
                model = await Discord.ApiClient.ModifyMessageAsync(guildChannel.Guild.Id, Channel.Id, Id, args).ConfigureAwait(false);
            }
            else
            {
                model = await Discord.ApiClient.ModifyDMMessageAsync(Channel.Id, Id, args).ConfigureAwait(false);
            }

            Update(model, UpdateSource.Rest);
        }
Exemple #2
0
        public async Task <IActionResult> ModifyMessageAsync(Snowflake channelId, Snowflake messageId, [FromBody] ModifyMessageParams args)
        {
            args.Validate();

            var msg = new Message
            {
                Id        = messageId,
                ChannelId = channelId
            };

            if (args.Content.IsSpecified)
            {
                args.Content = args.Content.Value;
            }
            if (args.Embed.IsSpecified)
            {
                msg.Embeds = new[] { args.Embed.Value }
            }
            ;

            return(Ok(msg));
        }