/// <summary> /// Modifies this interaction followup message. /// </summary> /// <remarks> /// This method modifies this message with the specified properties. To see an example of this /// method and what properties are available, please refer to <see cref="MessageProperties"/>. /// </remarks> /// <example> /// <para>The following example replaces the content of the message with <c>Hello World!</c>.</para> /// <code language="cs"> /// await msg.ModifyAsync(x => x.Content = "Hello World!"); /// </code> /// </example> /// <param name="func">A delegate containing the properties to modify the message with.</param> /// <param name="options">The options to be used when sending the request.</param> /// <returns> /// A task that represents the asynchronous modification operation. /// </returns> /// <exception cref="InvalidOperationException">The token used to modify/delete this message expired.</exception> /// /// <exception cref="Discord.Net.HttpException">Something went wrong during the request.</exception> public new async Task ModifyAsync(Action <MessageProperties> func, RequestOptions options = null) { try { var model = await InteractionHelper.ModifyFollowupMessageAsync(Discord, this, func, options).ConfigureAwait(false); Update(model); } catch (Net.HttpException x) { if (x.HttpCode == System.Net.HttpStatusCode.NotFound) { throw new InvalidOperationException("The token of this message has expired!", x); } throw; } }