mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-16 11:28:15 +00:00
change this
This commit is contained in:
@@ -0,0 +1,32 @@
|
|||||||
|
import { rest } from "../../rest/rest.ts";
|
||||||
|
import { UpdateOthersVoiceState } from "../../types/guilds/update_others_voice_state.ts";
|
||||||
|
import type {
|
||||||
|
UpdateSelfVoiceState,
|
||||||
|
} from "../../types/guilds/update_self_voice_state.ts";
|
||||||
|
import { endpoints } from "../../util/constants.ts";
|
||||||
|
import { hasOwnProperty, snakelize } from "../../util/utils.ts";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Updates the a user's voice state, defaults to the current user
|
||||||
|
* Caveats:
|
||||||
|
* - `channel_id` must currently point to a stage channel.
|
||||||
|
* - User must already have joined `channel_id`.
|
||||||
|
* - You must have the `MUTE_MEMBERS` permission. But can always suppress yourself.
|
||||||
|
* - When unsuppressed, non-bot users will have their `request_to_speak_timestamp` set to the current time. Bot users will not.
|
||||||
|
* - You must have the `REQUEST_TO_SPEAK` permission to request to speak. You can always clear your own request to speak.
|
||||||
|
* - You are able to set `request_to_speak_timestamp` to any present or future time.
|
||||||
|
* - When suppressed, the user will have their `request_to_speak_timestamp` removed.
|
||||||
|
*/
|
||||||
|
export async function updateBotVoiceState(
|
||||||
|
guildId: bigint,
|
||||||
|
options: UpdateSelfVoiceState | { userId: bigint } & UpdateOthersVoiceState,
|
||||||
|
) {
|
||||||
|
return await rest.runMethod(
|
||||||
|
"patch",
|
||||||
|
endpoints.UPDATE_VOICE_STATE(
|
||||||
|
guildId,
|
||||||
|
hasOwnProperty(options, "userId") ? options.userId : undefined,
|
||||||
|
),
|
||||||
|
snakelize(options),
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -13,6 +13,7 @@ import { getPins } from "./channels/get_pins.ts";
|
|||||||
import { isChannelSynced } from "./channels/is_channel_synced.ts";
|
import { isChannelSynced } from "./channels/is_channel_synced.ts";
|
||||||
import { startTyping } from "./channels/start_typing.ts";
|
import { startTyping } from "./channels/start_typing.ts";
|
||||||
import { swapChannels } from "./channels/swap_channels.ts";
|
import { swapChannels } from "./channels/swap_channels.ts";
|
||||||
|
import { updateBotVoiceState } from "./channels/update_voice_state.ts";
|
||||||
import { batchEditSlashCommandPermissions } from "./commands/batch_edit_slash_command_permissions.ts";
|
import { batchEditSlashCommandPermissions } from "./commands/batch_edit_slash_command_permissions.ts";
|
||||||
import { createSlashCommand } from "./commands/create_slash_command.ts";
|
import { createSlashCommand } from "./commands/create_slash_command.ts";
|
||||||
import { deleteSlashCommand } from "./commands/delete_slash_command.ts";
|
import { deleteSlashCommand } from "./commands/delete_slash_command.ts";
|
||||||
@@ -258,6 +259,7 @@ export {
|
|||||||
unbanMember,
|
unbanMember,
|
||||||
unpin,
|
unpin,
|
||||||
unpinMessage,
|
unpinMessage,
|
||||||
|
updateBotVoiceState,
|
||||||
upsertSlashCommand,
|
upsertSlashCommand,
|
||||||
upsertSlashCommands,
|
upsertSlashCommands,
|
||||||
validDiscoveryTerm,
|
validDiscoveryTerm,
|
||||||
@@ -279,6 +281,7 @@ export let helpers = {
|
|||||||
isChannelSynced,
|
isChannelSynced,
|
||||||
startTyping,
|
startTyping,
|
||||||
swapChannels,
|
swapChannels,
|
||||||
|
updateBotVoiceState,
|
||||||
// commands
|
// commands
|
||||||
createSlashCommand,
|
createSlashCommand,
|
||||||
deleteSlashCommand,
|
deleteSlashCommand,
|
||||||
|
|||||||
Reference in New Issue
Block a user