Show / Hide Table of Contents

Class RestMessage

Represents a REST-based message.

Inheritance
System.Object
RestEntity<System.UInt64>
RestMessage
RestSystemMessage
RestUserMessage
Implements
IMessage
ISnowflakeEntity
IEntity<System.UInt64>
IDeletable
IUpdateable
Inherited Members
RestEntity<UInt64>.Id
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Discord.Rest
Assembly: Discord.Net.Rest.dll
Syntax
public abstract class RestMessage : RestEntity<ulong>, IMessage, ISnowflakeEntity, IEntity<ulong>, IDeletable, IUpdateable

Properties

| Improve this Doc View Source

Activity

Gets the activity associated with a message.

Declaration
public MessageActivity Activity { get; }
Property Value
Type Description
MessageActivity

A message's activity, if any is associated.

Remarks

Sent with Rich Presence-related chat embeds. This often refers to activity that requires end-user's interaction, such as a Spotify Invite activity.

| Improve this Doc View Source

Application

Gets the application associated with a message.

Declaration
public MessageApplication Application { get; }
Property Value
Type Description
MessageApplication

A message's application, if any is associated.

Remarks

Sent with Rich-Presence-related chat embeds.

| Improve this Doc View Source

Attachments

Gets a collection of the Attachment's on the message.

Declaration
public virtual IReadOnlyCollection<Attachment> Attachments { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<Attachment>
| Improve this Doc View Source

Author

Gets the Author of the message.

Declaration
public IUser Author { get; }
Property Value
Type Description
IUser
| Improve this Doc View Source

Channel

Gets the source channel of the message.

Declaration
public IMessageChannel Channel { get; }
Property Value
Type Description
IMessageChannel
| Improve this Doc View Source

Content

Gets the content for this message.

Declaration
public string Content { get; }
Property Value
Type Description
System.String

A string that contains the body of the message; note that this field may be empty if there is an embed.

| Improve this Doc View Source

CreatedAt

Gets when the snowflake was created.

Declaration
public DateTimeOffset CreatedAt { get; }
Property Value
Type Description
System.DateTimeOffset

A System.DateTimeOffset representing when the entity was first created.

| Improve this Doc View Source

EditedTimestamp

Gets the time of this message's last edit.

Declaration
public virtual DateTimeOffset? EditedTimestamp { get; }
Property Value
Type Description
System.Nullable<System.DateTimeOffset>

Time of when the message was last edited; null if the message is never edited.

| Improve this Doc View Source

Embeds

Gets a collection of the Embed's on the message.

Declaration
public virtual IReadOnlyCollection<Embed> Embeds { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<Embed>
| Improve this Doc View Source

IsPinned

Gets the value that indicates whether this message is pinned.

Declaration
public virtual bool IsPinned { get; }
Property Value
Type Description
System.Boolean

true if this message was added to its channel's pinned messages; otherwise false.

| Improve this Doc View Source

IsSuppressed

Gets the value that indicates whether or not this message's embeds are suppressed.

Declaration
public virtual bool IsSuppressed { get; }
Property Value
Type Description
System.Boolean

true if the embeds in this message have been suppressed (made invisible); otherwise false.

| Improve this Doc View Source

IsTTS

Gets the value that indicates whether this message was meant to be read-aloud by Discord.

Declaration
public virtual bool IsTTS { get; }
Property Value
Type Description
System.Boolean

true if this message was sent as a text-to-speech message; otherwise false.

| Improve this Doc View Source

MentionedChannelIds

Gets the IDs of channels mentioned in this message.

Declaration
public virtual IReadOnlyCollection<ulong> MentionedChannelIds { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<System.UInt64>

A read-only collection of channel IDs.

| Improve this Doc View Source

MentionedRoleIds

Gets the IDs of roles mentioned in this message.

Declaration
public virtual IReadOnlyCollection<ulong> MentionedRoleIds { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<System.UInt64>

A read-only collection of role IDs.

| Improve this Doc View Source

MentionedUsers

Gets a collection of the mentioned users in the message.

Declaration
public virtual IReadOnlyCollection<RestUser> MentionedUsers { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<RestUser>
| Improve this Doc View Source

Reactions

Gets all reactions included in this message.

Declaration
public IReadOnlyDictionary<IEmote, ReactionMetadata> Reactions { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyDictionary<IEmote, ReactionMetadata>
| Improve this Doc View Source

Reference

Gets the reference to the original message if it was crossposted.

Declaration
public MessageReference Reference { get; }
Property Value
Type Description
MessageReference

A message's reference, if any is associated.

Remarks

Sent with Cross-posted messages, meaning they were published from news channels and received by subscriber channels.

| Improve this Doc View Source

Source

Gets the source type of this message.

Declaration
public MessageSource Source { get; }
Property Value
Type Description
MessageSource
| Improve this Doc View Source

Tags

Gets all tags included in this message's content.

Declaration
public virtual IReadOnlyCollection<ITag> Tags { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<ITag>
| Improve this Doc View Source

Timestamp

Gets the time this message was sent.

Declaration
public DateTimeOffset Timestamp { get; }
Property Value
Type Description
System.DateTimeOffset

Time of when the message was sent.

Methods

| Improve this Doc View Source

AddReactionAsync(IEmote, RequestOptions)

Adds a reaction to this message.

Declaration
public Task AddReactionAsync(IEmote emote, RequestOptions options = null)
Parameters
Type Name Description
IEmote emote

The emoji used to react to this message.

RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Threading.Tasks.Task

A task that represents the asynchronous operation for adding a reaction to this message.

See Also
IEmote
| Improve this Doc View Source

DeleteAsync(RequestOptions)

Deletes this object and all its children.

Declaration
public Task DeleteAsync(RequestOptions options = null)
Parameters
Type Name Description
RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Threading.Tasks.Task
| Improve this Doc View Source

GetReactionUsersAsync(IEmote, Int32, RequestOptions)

Gets all users that reacted to a message with a given emote.

Declaration
public IAsyncEnumerable<IReadOnlyCollection<IUser>> GetReactionUsersAsync(IEmote emote, int limit, RequestOptions options = null)
Parameters
Type Name Description
IEmote emote
System.Int32 limit

The number of users to request.

RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Collections.Generic.IAsyncEnumerable<System.Collections.Generic.IReadOnlyCollection<IUser>>

A paged collection containing a read-only collection of users that has reacted to this message. Flattening the paginated response into a collection of users with FlattenAsync<T>(IAsyncEnumerable<IEnumerable<T>>) is required if you wish to access the users.

| Improve this Doc View Source

RemoveAllReactionsAsync(RequestOptions)

Removes all reactions from this message.

Declaration
public Task RemoveAllReactionsAsync(RequestOptions options = null)
Parameters
Type Name Description
RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Threading.Tasks.Task

A task that represents the asynchronous removal operation.

| Improve this Doc View Source

RemoveReactionAsync(IEmote, IUser, RequestOptions)

Removes a reaction from message.

Declaration
public Task RemoveReactionAsync(IEmote emote, IUser user, RequestOptions options = null)
Parameters
Type Name Description
IEmote emote

The emoji used to react to this message.

IUser user

The user that added the emoji.

RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Threading.Tasks.Task

A task that represents the asynchronous operation for removing a reaction to this message.

See Also
IEmote
| Improve this Doc View Source

RemoveReactionAsync(IEmote, UInt64, RequestOptions)

Removes a reaction from message.

Declaration
public Task RemoveReactionAsync(IEmote emote, ulong userId, RequestOptions options = null)
Parameters
Type Name Description
IEmote emote

The emoji used to react to this message.

System.UInt64 userId

The ID of the user that added the emoji.

RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Threading.Tasks.Task

A task that represents the asynchronous operation for removing a reaction to this message.

See Also
IEmote
| Improve this Doc View Source

ToString()

Gets the Content of the message.

Declaration
public override string ToString()
Returns
Type Description
System.String

A string that is the Content of the message.

Overrides
System.Object.ToString()
| Improve this Doc View Source

UpdateAsync(RequestOptions)

Updates this object's properties with its current state.

Declaration
public Task UpdateAsync(RequestOptions options = null)
Parameters
Type Name Description
RequestOptions options
Returns
Type Description
System.Threading.Tasks.Task

Explicit Interface Implementations

| Improve this Doc View Source

IMessage.Attachments

Gets all attachments included in this message.

Declaration
IReadOnlyCollection<IAttachment> IMessage.Attachments { get; }
Returns
Type Description
System.Collections.Generic.IReadOnlyCollection<IAttachment>

A read-only collection of attachments.

Remarks

This property gets a read-only collection of attachments associated with this message. Depending on the user's end-client, a sent message may contain one or more attachments. For example, mobile users may attach more than one file in their message, while the desktop client only allows for one.

| Improve this Doc View Source

IMessage.Author

Declaration
IUser IMessage.Author { get; }
Returns
Type Description
IUser
| Improve this Doc View Source

IMessage.Embeds

Gets all embeds included in this message.

Declaration
IReadOnlyCollection<IEmbed> IMessage.Embeds { get; }
Returns
Type Description
System.Collections.Generic.IReadOnlyCollection<IEmbed>

A read-only collection of embed objects.

| Improve this Doc View Source

IMessage.MentionedUserIds

Gets the IDs of users mentioned in this message.

Declaration
IReadOnlyCollection<ulong> IMessage.MentionedUserIds { get; }
Returns
Type Description
System.Collections.Generic.IReadOnlyCollection<System.UInt64>

A read-only collection of user IDs.

| Improve this Doc View Source

IMessage.Type

Gets the type of this system message.

Declaration
MessageType IMessage.Type { get; }
Returns
Type Description
MessageType

Implements

IMessage
ISnowflakeEntity
IEntity<TId>
IDeletable
IUpdateable
  • Improve this Doc
  • View Source
Back to top Generated by DocFX