Show / Hide Table of Contents

# Class RestVoiceChannel

Represents a REST-based voice channel in a guild.

##### Inheritance

System.Object
RestEntity<System.UInt64>
RestChannel
RestGuildChannel
RestVoiceChannel

##### Implements

IUpdateable
IVoiceChannel
INestedChannel
IGuildChannel
IDeletable
IRestAudioChannel
IAudioChannel
IChannel
ISnowflakeEntity
IEntity<System.UInt64>

##### Inherited Members

RestGuildChannel.PermissionOverwrites
RestGuildChannel.Name
RestGuildChannel.Position
RestGuildChannel.GuildId
RestGuildChannel.UpdateAsync(RequestOptions)
RestGuildChannel.ModifyAsync(Action<GuildChannelProperties>, RequestOptions)
RestGuildChannel.DeleteAsync(RequestOptions)
RestGuildChannel.GetPermissionOverwrite(IUser)
RestGuildChannel.GetPermissionOverwrite(IRole)
RestGuildChannel.AddPermissionOverwriteAsync(IUser, OverwritePermissions, RequestOptions)
RestGuildChannel.AddPermissionOverwriteAsync(IRole, OverwritePermissions, RequestOptions)
RestGuildChannel.RemovePermissionOverwriteAsync(IUser, RequestOptions)
RestGuildChannel.RemovePermissionOverwriteAsync(IRole, RequestOptions)
RestGuildChannel.ToString()
RestGuildChannel.IGuildChannel.Guild
RestGuildChannel.IGuildChannel.GetPermissionOverwrite(IRole)
RestGuildChannel.IGuildChannel.GetPermissionOverwrite(IUser)
RestGuildChannel.IGuildChannel.AddPermissionOverwriteAsync(IRole, OverwritePermissions, RequestOptions)
RestGuildChannel.IGuildChannel.AddPermissionOverwriteAsync(IUser, OverwritePermissions, RequestOptions)
RestGuildChannel.IGuildChannel.RemovePermissionOverwriteAsync(IRole, RequestOptions)
RestGuildChannel.IGuildChannel.RemovePermissionOverwriteAsync(IUser, RequestOptions)
RestGuildChannel.IChannel.GetUsersAsync(CacheMode, RequestOptions)
RestGuildChannel.IChannel.GetUserAsync(UInt64, CacheMode, RequestOptions)
RestChannel.CreatedAt
RestChannel.IChannel.Name
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 class RestVoiceChannel : RestGuildChannel, IUpdateable, IVoiceChannel, INestedChannel, IGuildChannel, IDeletable, IRestAudioChannel, IAudioChannel, IChannel, ISnowflakeEntity, IEntity<ulong>

### Properties

| Improve this Doc View Source

#### Bitrate

##### Declaration

    public int Bitrate { get; }

##### Property Value

Type | Description
--- | ---
System.Int32 |

| Improve this Doc View Source

#### CategoryId

##### Declaration

    public ulong? CategoryId { get; }

##### Property Value

Type | Description
--- | ---
System.Nullable<System.UInt64> |

| Improve this Doc View Source

#### UserLimit

##### Declaration

    public int? UserLimit { get; }

##### Property Value

Type | Description
--- | ---
System.Nullable<System.Int32> |

### Methods

| Improve this Doc View Source

#### CreateInviteAsync(Nullable<Int32>, Nullable<Int32>, Boolean, Boolean, RequestOptions)

##### Declaration

    public Task<IInviteMetadata> CreateInviteAsync(int? maxAge, int? maxUses = default(int? ), bool isTemporary = false, bool isUnique = false, RequestOptions options = null)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Nullable<System.Int32> | maxAge |
System.Nullable<System.Int32> | maxUses |
System.Boolean | isTemporary |
System.Boolean | isUnique |
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task<IInviteMetadata> |

| Improve this Doc View Source

#### GetCategoryAsync(RequestOptions)

Gets the parent (category) channel of this channel.

##### Declaration

    public Task<ICategoryChannel> GetCategoryAsync(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<ICategoryChannel> | A task that represents the asynchronous get operation. The task result contains the category channel representing the parent of this channel; `null` if none is set.

| Improve this Doc View Source

#### GetInvitesAsync(RequestOptions)

##### Declaration

    public Task<IReadOnlyCollection<IInviteMetadata>> GetInvitesAsync(RequestOptions options = null)

##### Parameters

Type | Name | Description
--- | --- | ---
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyCollection<IInviteMetadata>> |

| Improve this Doc View Source

#### ModifyAsync(Action<VoiceChannelProperties>, RequestOptions)

##### Declaration

    public Task ModifyAsync(Action<VoiceChannelProperties> func, RequestOptions options = null)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Action<VoiceChannelProperties> | func |
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task |

| Improve this Doc View Source

#### SyncPermissionsAsync(RequestOptions)

##### Declaration

    public Task SyncPermissionsAsync(RequestOptions options = null)

##### Parameters

Type | Name | Description
--- | --- | ---
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task |

### Explicit Interface Implementations

| Improve this Doc View Source

#### IAudioChannel.ConnectAsync(Boolean, Boolean, Boolean)

##### Declaration

    Task<IAudioClient> IAudioChannel.ConnectAsync(bool selfDeaf, bool selfMute, bool external)

##### Parameters

Type | Name | Description
--- | --- | ---
System.Boolean | selfDeaf |
System.Boolean | selfMute |
System.Boolean | external |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task<IAudioClient> |

##### Exceptions

Type | Condition
--- | ---
System.NotSupportedException | Connecting to a REST-based channel is not supported.

| Improve this Doc View Source

#### IAudioChannel.DisconnectAsync()

##### Declaration

    Task IAudioChannel.DisconnectAsync()

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task |

| Improve this Doc View Source

#### IGuildChannel.GetUserAsync(UInt64, CacheMode, RequestOptions)

##### Declaration

    Task<IGuildUser> IGuildChannel.GetUserAsync(ulong id, CacheMode mode, RequestOptions options)

##### Parameters

Type | Name | Description
--- | --- | ---
System.UInt64 | id |
CacheMode | mode |
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task<IGuildUser> |

| Improve this Doc View Source

#### IGuildChannel.GetUsersAsync(CacheMode, RequestOptions)

##### Declaration

    IAsyncEnumerable<IReadOnlyCollection<IGuildUser>> IGuildChannel.GetUsersAsync(CacheMode mode, RequestOptions options)

##### Parameters

Type | Name | Description
--- | --- | ---
CacheMode | mode |
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Collections.Generic.IAsyncEnumerable<System.Collections.Generic.IReadOnlyCollection<IGuildUser>> |

| Improve this Doc View Source

#### INestedChannel.GetCategoryAsync(CacheMode, RequestOptions)

##### Declaration

    Task<ICategoryChannel> INestedChannel.GetCategoryAsync(CacheMode mode, RequestOptions options)

##### Parameters

Type | Name | Description
--- | --- | ---
CacheMode | mode |
RequestOptions | options |

##### Returns

Type | Description
--- | ---
System.Threading.Tasks.Task<ICategoryChannel> |

### Implements

IUpdateable
IVoiceChannel
INestedChannel
IGuildChannel
IDeletable
IRestAudioChannel
IAudioChannel
IChannel
ISnowflakeEntity
IEntity<TId>