Exemple #1
0
 async def _cmd_show_settings(self, **kwargs):
     server = kwargs['Server']
     cfg = self.Settings.get_cfg(server)
     if not cfg:
         Raise.error(21)  # 'No setting saved for your server'
     message = 'Setting saved for server {}\n'.format(server)
     message += '\n'.join(key + ' : ' + str(value)
                          for key, value in cfg.items())
     await self.say(kwargs['Channel'], message)
Exemple #2
0
 async def _cmd_now(self, **kwargs):
     player = self.Player.get_player(kwargs['Server'])
     if player:
         minutes = player.duration // 60
         seconds = player.duration % 60
         message = 'Now plaing:\n\t"{}"\t({}:{}).\nUploaded by:\n\t"{}"\nUrl:\n\t{}'
         message.format(player.title, minutes, seconds, player.uploader,
                        player.url)
         await self.say(kwargs['Channel'], message)
     else:
         Raise.error(4)  # 'Nothing is being played'
Exemple #3
0
 async def ex(self, msg_arr, ctx):
     if msg_arr:
         command = self.commands_arr.get(msg_arr[0].lower())
         if not command:
             Raise.error(17)  # 'No such command'
         command = '_cmd_' + command
         args = msg_arr[1:]
         await getattr(self, command)(*args, **ctx)
     else:
         Raise.error(
             19
         )  # 'What are you hesitant.. Command me dont be a p&&sy, Meow!'
Exemple #4
0
 async def _cmd_connect(self, *args, **kwargs):
     channel_name = ' '.join(args)
     if channel_name:
         if not await self._connect_by_name(channel_name, **kwargs):
             Raise.error(9)  # 'I\'m already here, dont you see me?'
         await self.say(kwargs['Channel'],
                        'It\'s been a long way, but I did it')
     else:
         if not await self._connect_by_author(**kwargs):
             Raise.error(
                 18)  # 'I\'m already with you, my blind kitten, MEOW!'
         await self.say(kwargs['Channel'], 'I\'m here  ***Summoner***!')
Exemple #5
0
 async def _cmd_play(self, *args, **kwargs):
     if args:
         url = args[0]
         if is_youtube_link(url):
             if not self.Client.is_voice_connected(kwargs['Server']):
                 await self._connect_by_author(**kwargs)
             await self._start_solo_song(url, **kwargs)
         else:
             Raise.error(5)  # 'Not valid link'
     else:
         Raise.error(
             12
         )  # 'Enter this f*&*ing song url here. Don\'t make me nervous, you mongol kid.'
Exemple #6
0
 async def _cmd_resume(self, **kwargs):
     player = self.Player.get_player(kwargs['Server'])
     if player:
         if player.is_done():
             Raise.error(13)  # 'Your song already ended'
         elif player.is_playing():
             Raise.error(
                 14)  # 'The song is already playing, dont you hear?'
         else:
             player.resume()
     else:
         Raise.error(4)  # 'Nothing is being played'
Exemple #7
0
 async def _cmd_pause(self, **kwargs):
     player = self.Player.get_player(kwargs['Server'])
     if player:
         if player.is_done():
             Raise.error(13)  # 'Your song already ended'
         elif not player.is_playing():
             Raise.error(
                 15
             )  # 'The song is already paused, dont you hear this quality silence?'
         else:
             player.pause()
     else:
         Raise.error(4)  # 'Nothing is being played'
Exemple #8
0
 async def _cmd_volume(self, *args, **kwargs):
     if args:
         try:
             v = float(args[0])
         except:
             Raise.error(7)  # 'Not valid volume value'
         else:
             if v > 2:
                 Raise.error(11)  # 'RIP ears'
                 v = 2
             elif v < 0:
                 Raise.error(16)  # 'Is there life below 0?'
                 v = 0
             server = kwargs['Server']
             player = self.Player.get_player(server)
             self.Settings.set_attr(server, 'Volume', v)
             if player:
                 player.volume = v
     else:
         Raise.error(10)  # 'Invalid params, just like you'
Exemple #9
0
 async def onlyonserver_wrap(self, *args, **kwargs):
     if not kwargs['Server']:
         Raise.error(22)
     await func(self, *args, **kwargs)
Exemple #10
0
 async def _cmd_stop(self, **kwargs):
     player = self.Player.get_player(kwargs['Server'])
     if player:
         player.stop()
     else:
         Raise.error(4)  # 'Nothing is being played'
Exemple #11
0
 async def _connect_by_name(self, channel_name, **kwargs):
     server = kwargs['Server']
     channel = self.Connect.find_voice_channel(server, channel_name)
     if not channel:
         Raise.error(8)  # 'Create such a channel first'
     return not await self.Connect.connect(server, channel)
Exemple #12
0
 async def _connect_by_author(self, **kwargs):
     author = kwargs['Author']
     if not author.voice_channel:
         Raise.error(1)  # 'You\'re not on the voice channel'
     return await self.Connect.connect(kwargs['Server'],
                                       author.voice_channel)
Exemple #13
0
 async def _cmd_disconnect(self, **kwargs):
     if not await self.Connect.leave(kwargs['Server']):
         Raise.error(2)  # 'I`m already homeless :('
Exemple #14
0
 async def _cmd_invite(self, **kwargs):
     if self.Client.InviteLink:
         await self.say(kwargs['Channel'], self.Client.InviteLink)
     else:
         Raise.error(20)  # 'No invite link was provided'