+ def callback_need_track(self):
+ self.candidates = []
+ trks = []
+ target = self.plugin_conf.getint('track_to_add')
+ artists = list(self.player.artists)
+ random.shuffle(artists)
+ for art in artists:
+ if self.filtered_artist(art):
+ continue
+ self.log.debug('Random art: {}'.format(art))
+ trks = self.player.find_track(Artist(art))
+ if trks:
+ trk = random.choice(trks)
+ self.candidates.append(trk)
+ self.log.info('Random candidate ({}): {}'.format(self.mode, trk))
+ if len(self.candidates) >= target:
+ break
+ return self.candidates