Compare commits
	
		
			2 Commits
		
	
	
		
			bbf98e0a2a
			...
			fd0aa70556
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| fd0aa70556 | |||
| fe06dbab3f | 
| @@ -2,9 +2,15 @@ module.exports = { | |||||||
|   name: 'help', |   name: 'help', | ||||||
|   description: 'List all of my commands or info about a specific command.', |   description: 'List all of my commands or info about a specific command.', | ||||||
|   execute(message, args, deleteTimeout) { |   execute(message, args, deleteTimeout) { | ||||||
|     let reply = 'Here are my supported commands:\n\n'; |     let reply = '```'; | ||||||
|  |     reply += 'Here are the available commands:\n\n'; | ||||||
|  |  | ||||||
|     const commands = Array.from(message.client.commands.values()); |     const commands = Array.from(message.client.commands.values()); | ||||||
|     reply += commands.map(command => `.${command.name} - ${command.description}`).join('\n'); |     commands.forEach(command => { | ||||||
|  |       reply += `.${command.name} - ${command.description}\n`; | ||||||
|  |     }); | ||||||
|  |  | ||||||
|  |     reply += '```'; | ||||||
|  |  | ||||||
|     message.channel.send(reply).then(sentMessage => { |     message.channel.send(reply).then(sentMessage => { | ||||||
|       setTimeout(() => sentMessage.delete().catch(console.error), deleteTimeout); |       setTimeout(() => sentMessage.delete().catch(console.error), deleteTimeout); | ||||||
|   | |||||||
							
								
								
									
										51
									
								
								commands/livestream.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										51
									
								
								commands/livestream.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,51 @@ | |||||||
|  | const { DiscordStreamClient } = require('discord-stream-client'); | ||||||
|  |  | ||||||
|  | module.exports = { | ||||||
|  |   name: 'livestream', | ||||||
|  |   description: 'Starts a live stream in a voice channel with a provided video link.', | ||||||
|  |   async execute(message, args, deleteTimeout) { | ||||||
|  |     if (args.length < 2) { | ||||||
|  |       return message.channel.send('Usage: .livestream <channelId> <videoLink>') | ||||||
|  |         .then(msg => setTimeout(() => msg.delete().catch(console.error), deleteTimeout)); | ||||||
|  |     } | ||||||
|  |      | ||||||
|  |     const channelId = args[0]; | ||||||
|  |     const videoLink = args[1]; | ||||||
|  |     const channel = message.client.channels.cache.get(channelId); | ||||||
|  |      | ||||||
|  |     if (!channel) { | ||||||
|  |       return message.channel.send('Channel not found.') | ||||||
|  |         .then(msg => setTimeout(() => msg.delete().catch(console.error), deleteTimeout)); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     try { | ||||||
|  |       const connection = await message.client.streamClient.joinVoiceChannel(channel, { | ||||||
|  |         selfDeaf: true, | ||||||
|  |         selfMute: true, | ||||||
|  |         selfVideo: false, | ||||||
|  |       }); | ||||||
|  |        | ||||||
|  |       const stream = await connection.createStream(); | ||||||
|  |       const player = message.client.streamClient.createPlayer(videoLink, stream.udp); | ||||||
|  |  | ||||||
|  |       player.on('error', err => console.error(err)); | ||||||
|  |        | ||||||
|  |       player.play({ | ||||||
|  |         kbpsVideo: 7000, | ||||||
|  |         fps: 60, | ||||||
|  |         hwaccel: true, | ||||||
|  |         kbpsAudio: 128, | ||||||
|  |         volume: 1, | ||||||
|  |       }); | ||||||
|  |  | ||||||
|  |       message.channel.send('Livestream started with the provided video link.') | ||||||
|  |         .then(msg => setTimeout(() => msg.delete().catch(console.error), deleteTimeout)); | ||||||
|  |  | ||||||
|  |     } catch (error) { | ||||||
|  |       console.error(error); | ||||||
|  |       message.channel.send('Failed to start the livestream.') | ||||||
|  |         .then(msg => setTimeout(() => msg.delete().catch(console.error), deleteTimeout)); | ||||||
|  |     } | ||||||
|  |   }, | ||||||
|  | }; | ||||||
|  |  | ||||||
							
								
								
									
										3
									
								
								index.js
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								index.js
									
									
									
									
									
								
							| @@ -1,8 +1,11 @@ | |||||||
| require('dotenv').config(); | require('dotenv').config(); | ||||||
| const { Client } = require('discord.js-selfbot-v13'); | const { Client } = require('discord.js-selfbot-v13'); | ||||||
|  | const { DiscordStreamClient } = require('discord-stream-client'); | ||||||
| const client = new Client(); | const client = new Client(); | ||||||
| const fs = require('fs'); | const fs = require('fs'); | ||||||
|  |  | ||||||
|  | client.streamClient = new DiscordStreamClient(client); | ||||||
|  |  | ||||||
| const PREFIX = process.env.PREFIX || '.'; | const PREFIX = process.env.PREFIX || '.'; | ||||||
| const MESSAGE_DELETE_TIMEOUT = 10000 | const MESSAGE_DELETE_TIMEOUT = 10000 | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user