import argparse import pathlib from mopidy_json_client import MopidyClient parser = argparse.ArgumentParser(description="Mopdiy FloppyPlayer") parser.add_argument("URI_string", help="Mopdiy URI to Album/Playlist.") args = parser.parse_args() inputURI = args.URI_string disk_file = f"{pathlib.Path(__file__).parent.resolve()}/last_disk.txt" mopidy = MopidyClient() def selector(action): last_disk_read = open(disk_file, "r+").read() if action is not "" and last_disk_read != action: if action == "stop": mopidy.playback.stop() mopidy.tracklist.clear() elif action == "next": mopidy.playback.next() elif action == "previous": mopidy.playback.previous() elif action == "shuffle": mopidy.tracklist.shuffle() mopidy.tracklist.move( start=mopidy.tracklist.index(), end=mopidy.tracklist.index(), to_position=0, ) elif action == "playpause": if mopidy.playback.get_state() == "playing": mopidy.playback.pause() else: mopidy.playback.resume() elif action == "": return else: last_disk = open(disk_file, "w") last_disk.write(action) run_floppy(action) mopidy.disconnect() elif action == "": pass else: if mopidy.playback.get_state() == "playing": return else: run_floppy(action) mopidy.disconnect() def run_floppy(input): link = input.split(" - ")[1] mopidy.playback.stop() mopidy.tracklist.clear() mopidy.tracklist.add(uris=[link]) mopidy.playback.play() mopidy.disconnect() selector(inputURI)