✨ Add disconnection functions to voice channel
This commit is contained in:
		
							parent
							
								
									51b1d71e9a
								
							
						
					
					
						commit
						96b273ed04
					
				
					 1 changed files with 23 additions and 0 deletions
				
			
		|  | @ -11,6 +11,8 @@ import { GuildChannel } from './channel.ts' | ||||||
| import { Guild } from './guild.ts' | import { Guild } from './guild.ts' | ||||||
| import { VoiceState } from './voiceState.ts' | import { VoiceState } from './voiceState.ts' | ||||||
| import { GuildChannelVoiceStatesManager } from '../managers/guildChannelVoiceStates.ts' | import { GuildChannelVoiceStatesManager } from '../managers/guildChannelVoiceStates.ts' | ||||||
|  | import { User } from './user.ts' | ||||||
|  | import { Member } from './member.ts' | ||||||
| 
 | 
 | ||||||
| export interface VoiceServerData extends VoiceServerUpdateData { | export interface VoiceServerData extends VoiceServerUpdateData { | ||||||
|   sessionID: string |   sessionID: string | ||||||
|  | @ -113,4 +115,25 @@ export class VoiceChannel extends GuildChannel { | ||||||
| 
 | 
 | ||||||
|     return new VoiceChannel(this.client, resp, this.guild) |     return new VoiceChannel(this.client, resp, this.guild) | ||||||
|   } |   } | ||||||
|  | 
 | ||||||
|  |   async disconnectMember( | ||||||
|  |     member: User | Member | string | ||||||
|  |   ): Promise<Member | undefined> { | ||||||
|  |     const memberID = typeof member === 'string' ? member : member.id | ||||||
|  |     const memberVoiceState = await this.voiceStates.get(memberID) | ||||||
|  | 
 | ||||||
|  |     return memberVoiceState?.disconnect() | ||||||
|  |   } | ||||||
|  | 
 | ||||||
|  |   async disconnectAll(): Promise<Member[]> { | ||||||
|  |     const members: Member[] = [] | ||||||
|  |     for await (const memberVoiceState of this.voiceStates) { | ||||||
|  |       const member = await memberVoiceState.disconnect() | ||||||
|  |       if (member !== undefined) { | ||||||
|  |         members.push(member) | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     return members | ||||||
|  |   } | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue