async def cmd_summon(self, channel, author, voice_channel):
"""
Usage:
{command_prefix}summon
Call the bot to the summoner's voice channel.
"""
if not author.voice_channel:
raise exceptions.CommandError('You are not in a voice channel!')
"""voice_client = self.the_voice_clients.get(channel.server.id, None)
if voice_client and voice_client.channel.server == author.voice_channel.server:
await self.move_voice_client(author.voice_channel)
return"""
# can this be exploided? - no
self.serverVoice = await self.join_voice_channel(author.voice_channel)
player = self.serverVoice.create_ffmpeg_player('./samples/welcome.wav')
player.volume = self.config.default_volume
# Set the default volume or rip ears
player.start()
# move to _verify_vc_perms?
chperms = author.voice_channel.permissions_for(author.voice_channel.server.me)
if not chperms.connect:
self.safe_print("Cannot join channel \"%s\", no permission." % author.voice_channel.name)
return Response(
"```Cannot join channel \"%s\", no permission.```" % author.voice_channel.name,
delete_after=25
)
elif not chperms.speak:
self.safe_print("Will not join channel \"%s\", no permission to speak." % author.voice_channel.name)
return Response(
"```Will not join channel \"%s\", no permission to speak.```" % author.voice_channel.name,
delete_after=25
)
await asyncio.sleep(4)
# the intro is a bit longer then 3 seconds
if self.serverVoice is not None:
await self.serverVoice.disconnect()
self.serverVoice = None
player = await self.get_player(author.voice_channel, create=True)
if player.is_stopped:
player.play()
if self.config.auto_playlist:
await self.on_player_finished_playing(player)
Comments
0 B
|👍
/👎