Search Results for

    Show / Hide Table of Contents

    Class SocketDMChannel

    Represents a WebSocket-based direct-message channel.

    Inheritance
    Object
    SocketEntity<UInt64>
    SocketChannel
    SocketDMChannel
    Implements
    IEntity<UInt64>
    IDMChannel
    ISocketPrivateChannel
    IPrivateChannel
    ISocketMessageChannel
    IMessageChannel
    IChannel
    ISnowflakeEntity
    IEntity<UInt64>
    Inherited Members
    SocketChannel.CreatedAt
    SocketEntity<UInt64>.Id
    Namespace: Discord.WebSocket
    Assembly: Discord.Net.WebSocket.dll
    Syntax
    public class SocketDMChannel : SocketChannel, IEntity<ulong>, IDMChannel, ISocketPrivateChannel, IPrivateChannel, ISocketMessageChannel, IMessageChannel, IChannel, ISnowflakeEntity, IEntity<ulong>

    Properties

    | Improve this Doc View Source

    CachedMessages

    Gets all messages in this channel's cache.

    Declaration
    public IReadOnlyCollection<SocketMessage> CachedMessages { get; }
    Property Value
    Type Description
    IReadOnlyCollection<SocketMessage>

    A read-only collection of WebSocket-based messages.

    | Improve this Doc View Source

    Recipient

    Gets the recipient of the channel.

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

    Users

    Gets a collection that is the current logged-in user and the recipient.

    Declaration
    public IReadOnlyCollection<SocketUser> Users { get; }
    Property Value
    Type Description
    IReadOnlyCollection<SocketUser>

    Methods

    | Improve this Doc View Source

    CloseAsync(RequestOptions)

    Declaration
    public Task CloseAsync(RequestOptions options = null)
    Parameters
    Type Name Description
    RequestOptions options
    Returns
    Type Description
    Task
    | Improve this Doc View Source

    DeleteMessageAsync(IMessage, RequestOptions)

    Declaration
    public Task DeleteMessageAsync(IMessage message, RequestOptions options = null)
    Parameters
    Type Name Description
    IMessage message
    RequestOptions options
    Returns
    Type Description
    Task
    | Improve this Doc View Source

    DeleteMessageAsync(UInt64, RequestOptions)

    Declaration
    public Task DeleteMessageAsync(ulong messageId, RequestOptions options = null)
    Parameters
    Type Name Description
    UInt64 messageId
    RequestOptions options
    Returns
    Type Description
    Task
    | Improve this Doc View Source

    EnterTypingState(RequestOptions)

    Declaration
    public IDisposable EnterTypingState(RequestOptions options = null)
    Parameters
    Type Name Description
    RequestOptions options
    Returns
    Type Description
    IDisposable
    | Improve this Doc View Source

    GetCachedMessage(UInt64)

    Gets a cached message from this channel.

    Declaration
    public SocketMessage GetCachedMessage(ulong id)
    Parameters
    Type Name Description
    UInt64 id

    The snowflake identifier of the message.

    Returns
    Type Description
    SocketMessage

    A WebSocket-based message object; null if it does not exist in the cache or if caching is not enabled.

    Remarks

    warning

    This method requires the use of cache, which is not enabled by default; if caching is not enabled, this method will always return null. Please refer to MessageCacheSize for more details.

    This method retrieves the message from the local WebSocket cache and does not send any additional request to Discord. This message may be a message that has been deleted.

    | Improve this Doc View Source

    GetCachedMessages(IMessage, Direction, Int32)

    Gets the last N cached messages starting from a certain message in this message channel.

    Declaration
    public IReadOnlyCollection<SocketMessage> GetCachedMessages(IMessage fromMessage, Direction dir, int limit = null)
    Parameters
    Type Name Description
    IMessage fromMessage

    The message to start the fetching from.

    Direction dir

    The direction of which the message should be gotten from.

    Int32 limit

    The number of messages to get.

    Returns
    Type Description
    IReadOnlyCollection<SocketMessage>

    A read-only collection of WebSocket-based messages.

    Remarks

    warning

    This method requires the use of cache, which is not enabled by default; if caching is not enabled, this method will always return an empty collection. Please refer to MessageCacheSize for more details.

    This method retrieves the message(s) from the local WebSocket cache and does not send any additional request to Discord. This read-only collection may include messages that have been deleted. The maximum number of messages that can be retrieved from this method depends on the MessageCacheSize set.

    | Improve this Doc View Source

    GetCachedMessages(Int32)

    Gets the last N cached messages from this message channel.

    Declaration
    public IReadOnlyCollection<SocketMessage> GetCachedMessages(int limit = null)
    Parameters
    Type Name Description
    Int32 limit

    The number of messages to get.

    Returns
    Type Description
    IReadOnlyCollection<SocketMessage>

    A read-only collection of WebSocket-based messages.

    Remarks

    warning

    This method requires the use of cache, which is not enabled by default; if caching is not enabled, this method will always return an empty collection. Please refer to MessageCacheSize for more details.

    This method retrieves the message(s) from the local WebSocket cache and does not send any additional request to Discord. This read-only collection may include messages that have been deleted. The maximum number of messages that can be retrieved from this method depends on the MessageCacheSize set.

    | Improve this Doc View Source

    GetCachedMessages(UInt64, Direction, Int32)

    Gets the last N cached messages starting from a certain message in this message channel.

    Declaration
    public IReadOnlyCollection<SocketMessage> GetCachedMessages(ulong fromMessageId, Direction dir, int limit = null)
    Parameters
    Type Name Description
    UInt64 fromMessageId

    The message ID to start the fetching from.

    Direction dir

    The direction of which the message should be gotten from.

    Int32 limit

    The number of messages to get.

    Returns
    Type Description
    IReadOnlyCollection<SocketMessage>

    A read-only collection of WebSocket-based messages.

    Remarks

    warning

    This method requires the use of cache, which is not enabled by default; if caching is not enabled, this method will always return an empty collection. Please refer to MessageCacheSize for more details.

    This method retrieves the message(s) from the local WebSocket cache and does not send any additional request to Discord. This read-only collection may include messages that have been deleted. The maximum number of messages that can be retrieved from this method depends on the MessageCacheSize set.

    | Improve this Doc View Source

    GetMessageAsync(UInt64, RequestOptions)

    Gets the message associated with the given id.

    Declaration
    public async Task<IMessage> GetMessageAsync(ulong id, RequestOptions options = null)
    Parameters
    Type Name Description
    UInt64 id

    TThe ID of the message.

    RequestOptions options

    The options to be used when sending the request.

    Returns
    Type Description
    Task<IMessage>

    The message gotten from either the cache or the download, or null if none is found.

    | Improve this Doc View Source

    GetMessagesAsync(IMessage, Direction, Int32, RequestOptions)

    Gets a collection of messages in this channel.

    Declaration
    public IAsyncEnumerable<IReadOnlyCollection<IMessage>> GetMessagesAsync(IMessage fromMessage, Direction dir, int limit = null, RequestOptions options = null)
    Parameters
    Type Name Description
    IMessage fromMessage

    The starting message to get the messages from.

    Direction dir

    The direction of the messages to be gotten from.

    Int32 limit

    The numbers of message to be gotten from.

    RequestOptions options

    The options to be used when sending the request.

    Returns
    Type Description
    IAsyncEnumerable<IReadOnlyCollection<IMessage>>

    Paged collection of messages.

    Remarks

    This method follows the same behavior as described in . Please visit its documentation for more details on this method.

    | Improve this Doc View Source

    GetMessagesAsync(Int32, RequestOptions)

    Gets the last N messages from this message channel.

    Declaration
    public IAsyncEnumerable<IReadOnlyCollection<IMessage>> GetMessagesAsync(int limit = null, RequestOptions options = null)
    Parameters
    Type Name Description
    Int32 limit

    The numbers of message to be gotten from.

    RequestOptions options

    The options to be used when sending the request.

    Returns
    Type Description
    IAsyncEnumerable<IReadOnlyCollection<IMessage>>

    Paged collection of messages.

    Remarks

    This method follows the same behavior as described in . Please visit its documentation for more details on this method.

    | Improve this Doc View Source

    GetMessagesAsync(UInt64, Direction, Int32, RequestOptions)

    Gets a collection of messages in this channel.

    Declaration
    public IAsyncEnumerable<IReadOnlyCollection<IMessage>> GetMessagesAsync(ulong fromMessageId, Direction dir, int limit = null, RequestOptions options = null)
    Parameters
    Type Name Description
    UInt64 fromMessageId

    The ID of the starting message to get the messages from.

    Direction dir

    The direction of the messages to be gotten from.

    Int32 limit

    The numbers of message to be gotten from.

    RequestOptions options

    The options to be used when sending the request.

    Returns
    Type Description
    IAsyncEnumerable<IReadOnlyCollection<IMessage>>

    Paged collection of messages.

    Remarks

    This method follows the same behavior as described in . Please visit its documentation for more details on this method.

    | Improve this Doc View Source

    GetPinnedMessagesAsync(RequestOptions)

    Gets a read-only collection of pinned messages in this channel.

    Declaration
    public Task<IReadOnlyCollection<RestMessage>> GetPinnedMessagesAsync(RequestOptions options = null)
    Parameters
    Type Name Description
    RequestOptions options

    The options to be used when sending the request.

    Returns
    Type Description
    Task<IReadOnlyCollection<RestMessage>>

    A task that represents the asynchronous get operation for retrieving pinned messages in this channel. The task result contains a read-only collection of messages found in the pinned messages.

    Remarks

    This method follows the same behavior as described in GetPinnedMessagesAsync(RequestOptions). Please visit its documentation for more details on this method.

    | Improve this Doc View Source

    GetUser(UInt64)

    Gets a user in this channel from the provided id.

    Declaration
    public SocketUser GetUser(ulong id)
    Parameters
    Type Name Description
    UInt64 id

    The snowflake identifier of the user.

    Returns
    Type Description
    SocketUser

    A SocketUser object that is a recipient of this channel; otherwise null.

    | Improve this Doc View Source

    ModifyMessageAsync(UInt64, Action<MessageProperties>, RequestOptions)

    Declaration
    public async Task<IUserMessage> ModifyMessageAsync(ulong messageId, Action<MessageProperties> func, RequestOptions options = null)
    Parameters
    Type Name Description
    UInt64 messageId
    Action<MessageProperties> func
    RequestOptions options
    Returns
    Type Description
    Task<IUserMessage>
    | Improve this Doc View Source

    SendFileAsync(FileAttachment, String, Boolean, Embed, RequestOptions, AllowedMentions, MessageReference, MessageComponent, ISticker[], Embed[], MessageFlags)

    Declaration
    public Task<RestUserMessage> SendFileAsync(FileAttachment attachment, string text, bool isTTS = false, Embed embed = null, RequestOptions options = null, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = default(MessageFlags))
    Parameters
    Type Name Description
    FileAttachment attachment
    String text
    Boolean isTTS
    Embed embed
    RequestOptions options
    AllowedMentions allowedMentions
    MessageReference messageReference
    MessageComponent components
    ISticker[] stickers
    Embed[] embeds
    MessageFlags flags
    Returns
    Type Description
    Task<RestUserMessage>
    | Improve this Doc View Source

    SendFileAsync(Stream, String, String, Boolean, Embed, RequestOptions, Boolean, AllowedMentions, MessageReference, MessageComponent, ISticker[], Embed[], MessageFlags)

    Declaration
    public Task<RestUserMessage> SendFileAsync(Stream stream, string filename, string text, bool isTTS = false, Embed embed = null, RequestOptions options = null, bool isSpoiler = false, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = default(MessageFlags))
    Parameters
    Type Name Description
    Stream stream
    String filename
    String text
    Boolean isTTS
    Embed embed
    RequestOptions options
    Boolean isSpoiler
    AllowedMentions allowedMentions
    MessageReference messageReference
    MessageComponent components
    ISticker[] stickers
    Embed[] embeds
    MessageFlags flags
    Returns
    Type Description
    Task<RestUserMessage>
    | Improve this Doc View Source

    SendFileAsync(String, String, Boolean, Embed, RequestOptions, Boolean, AllowedMentions, MessageReference, MessageComponent, ISticker[], Embed[], MessageFlags)

    Declaration
    public Task<RestUserMessage> SendFileAsync(string filePath, string text, bool isTTS = false, Embed embed = null, RequestOptions options = null, bool isSpoiler = false, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = default(MessageFlags))
    Parameters
    Type Name Description
    String filePath
    String text
    Boolean isTTS
    Embed embed
    RequestOptions options
    Boolean isSpoiler
    AllowedMentions allowedMentions
    MessageReference messageReference
    MessageComponent components
    ISticker[] stickers
    Embed[] embeds
    MessageFlags flags
    Returns
    Type Description
    Task<RestUserMessage>
    | Improve this Doc View Source

    SendFilesAsync(IEnumerable<FileAttachment>, String, Boolean, Embed, RequestOptions, AllowedMentions, MessageReference, MessageComponent, ISticker[], Embed[], MessageFlags)

    Declaration
    public Task<RestUserMessage> SendFilesAsync(IEnumerable<FileAttachment> attachments, string text, bool isTTS = false, Embed embed = null, RequestOptions options = null, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = default(MessageFlags))
    Parameters
    Type Name Description
    IEnumerable<FileAttachment> attachments
    String text
    Boolean isTTS
    Embed embed
    RequestOptions options
    AllowedMentions allowedMentions
    MessageReference messageReference
    MessageComponent components
    ISticker[] stickers
    Embed[] embeds
    MessageFlags flags
    Returns
    Type Description
    Task<RestUserMessage>
    | Improve this Doc View Source

    SendMessageAsync(String, Boolean, Embed, RequestOptions, AllowedMentions, MessageReference, MessageComponent, ISticker[], Embed[], MessageFlags)

    Declaration
    public Task<RestUserMessage> SendMessageAsync(string text = null, bool isTTS = false, Embed embed = null, RequestOptions options = null, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = default(MessageFlags))
    Parameters
    Type Name Description
    String text
    Boolean isTTS
    Embed embed
    RequestOptions options
    AllowedMentions allowedMentions
    MessageReference messageReference
    MessageComponent components
    ISticker[] stickers
    Embed[] embeds
    MessageFlags flags
    Returns
    Type Description
    Task<RestUserMessage>
    | Improve this Doc View Source

    ToString()

    Returns the recipient user.

    Declaration
    public override string ToString()
    Returns
    Type Description
    String
    | Improve this Doc View Source

    TriggerTypingAsync(RequestOptions)

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

    Explicit Interface Implementations

    | Improve this Doc View Source

    IDMChannel.Recipient

    Gets the recipient of all messages in this channel.

    Declaration
    IUser IDMChannel.Recipient { get; }
    Returns
    Type Description
    IUser

    A user object that represents the other user in this channel.

    | Improve this Doc View Source

    ISocketPrivateChannel.Recipients

    Declaration
    IReadOnlyCollection<SocketUser> ISocketPrivateChannel.Recipients { get; }
    Returns
    Type Description
    IReadOnlyCollection<SocketUser>

    Implements

    IEntity<TId>
    IDMChannel
    ISocketPrivateChannel
    IPrivateChannel
    ISocketMessageChannel
    IMessageChannel
    IChannel
    ISnowflakeEntity
    IEntity<TId>

    Theme

    • Improve this Doc
    • View Source
    In This Article
    Back to top Discord.Net (c) 2015-2022 3.7.2