def play_next(self, skip=False): if self.empty(): random_song = song.random_songs(limit=1)['results'] if len(random_song) == 1: self.vote_song('RANDOM', random_song[0]['id']) if not self.empty(): if player.now_playing: if isinstance(player.now_playing, YouTubeVideo): self.remove_video(player.now_playing.url, skip=skip) elif isinstance(player.now_playing, SoundCloudMusic): self.remove_video(player.now_playing.url, skip=skip) else: self.remove_song(player.now_playing.id, skip=skip) session = Session() next_packet = (session.query(Packet).filter_by( player_name=PLAYER_NAME).order_by(Packet.finish_time).first()) if next_packet: if next_packet.stream_url and 'www.youtube.com' in next_packet.stream_url: video = YouTubeVideo(next_packet) player.play_media(video) session.commit() return video.dictify() elif next_packet.stream_url and 'soundcloud.com' in next_packet.stream_url: video = SoundCloudMusic(next_packet) player.play_media(video) session.commit() else: next_song = session.query(Song).get(next_packet.song_id) player.play_media(next_song) next_song.history.append( PlayHistory(user=next_packet.user, player_name=PLAYER_NAME)) session.commit() return next_song.dictify()
def play_next(self, skip=False): if self.empty(): random_song = random_songs(1)['results'] if len(random_song) == 1: self.vote_song('RANDOM', random_song[0]['id']) if not self.empty(): if player.now_playing: if isinstance(player.now_playing, YouTubeVideo): self.remove_video(player.now_playing.url, skip=skip) else: self.remove_song(player.now_playing.id, skip=skip) session = Session() next_packet = session.query(Packet).order_by(Packet.finish_time).first() if next_packet: if next_packet.video_url: video = YouTubeVideo(next_packet) player.play_media(video) session.commit() return video.dictify() else: next_song = session.query(Song).get(next_packet.song_id) player.play_media(next_song) next_song.history.append(PlayHistory(user=next_packet.user)) session.commit() return next_song.dictify()
def random_songs(): limit = request.args.get('limit') if limit and int(limit) != 0: return jsonify(song.random_songs(limit=int(limit))) return jsonify(song.random_songs())