Beispiel #1
0
class MusicServer(object):
   """
   @summary: Music server class that provides function to interrupt with new song
   """

   def __init__(self):
      self.server = Server(hostname=SERVER, port=9090)
      self.server.connect()
   
   def interrupt(self, filename):
      players = self.server.get_players()
      for player in players:
         player.playlist_play(filename)
         
class CommonNetLMS(object):
    def __init__(self, hostname="192.168.1.1", port=9090, username="******",
                 password="******"):
        self.lms_device = Server(hostname=hostname, port=port,
                                 username=username, password=password)
        self.lms_device.connect()

    def com_net_lms_version(self):
        return self.lms_device.get_version()

    def com_net_lms_logged_in(self):
        return self.lms_device.logged_in

    def com_net_lms_close(self):
        self.lms_device.disconnect()

    def com_net_lms_play_count(self):
        return self.lms_device.get_player_count()

    def com_net_lms_get_players(self, update=True):
        return self.lms_device.get_players(update=update)

    def com_net_lms_connect(self):
        self.lms_device.login()

    def com_net_lms_request(self, command_string, preserve_encoding=False):
        self.lms_device.request(
            command_string, preserve_encoding=preserve_encoding)

    def com_net_lms_request_results(self, command_string, preserve_encoding=False):
        self.lms_device.request_with_results(
            command_string, preserve_encoding=preserve_encoding)

    def com_net_lms_rescan(self, mode='fast'):
        # ‘fast’ for update changes on library, ‘full’ for complete library scan
        #  and ‘playlists’ for playlists scan only
        self.lms_device.rescan(mode=mode)

    def com_net_lms_rescanprogress(self):
        self.lms_device.rescanprogress()

    def com_net_lms_search(self, search_term, mode='albums'):
        self.lms_device.search(search_term, mode=mode)

    def com_net_lms_telnet_connect(self):
        self.lms_device.telnet_connect()
Beispiel #3
0
def connect_to_player_at_server(playername, hostname):
    """Connects to a Squeezbox player connected to a server by
    their name.

    Args:
        playername (string): name of player
        hostname (string): hostname of Squeezbox server

    Returns:
        pylms.player.Player
    """
    server = Server(hostname=hostname)

    server.connect()
    players = [ply for ply in server.get_players() if ply.name == playername]
    if len(players) < 1:
        raise RuntimeError(('No player named %s connected to '
                            'server named %s') % (playername, hostname))
    return players[0]
Beispiel #4
0
def connect_to_player_at_server(playername, hostname):
    """Connects to a Squeezbox player connected to a server by
    their name.

    Args:
        playername (string): name of player
        hostname (string): hostname of Squeezbox server

    Returns:
        pylms.player.Player
    """
    server = Server(hostname=hostname)

    server.connect()
    players = [ply for ply in server.get_players() if ply.name ==
                playername]
    if len(players) < 1:
        raise RuntimeError(('No player named %s connected to '
                        'server named %s') % (playername, hostname))
    return players[0]
Beispiel #5
0
#!/usr/bin/env python

from pylms.server import Server
from pylms.player import Player

sc = Server(hostname="10.0.0.1", port=9090, username="******", password="******")
sc.connect()

print "Logged in: %s" % sc.logged_in
print "Version: %s" % sc.get_version()
print "Num players: %s" % sc.get_player_count()
print "Players: %s" % sc.get_players()

players = sc.get_players()
print ("Type of player = %s" % type(players))
for p in players:
	print "Player number %s" % p
	#sq = sc.get_player("00:11:22:33:44:55")

	print "Name: %s | Mode: %s | Time: %s | Connected: %s | WiFi: %s" % (p.get_name(), p.get_mode(), p.get_time_elapsed(), p.is_connected, p.get_wifi_signal_strength())

	print p.get_track_title()
	print p.get_time_remaining()

p=sc.get_player('00:04:20:17:5b:41')
print("Current path = %s" % p.get_track_path())
with open('z.txt','w') as f:
	f.write("Current path = %s" % p.get_track_path())
	
p.playlist_play("file:///volume1/hdtl/Music/H3MusicArchive/Amazon%20MP3/Sam%20The%20Sham%20&%20The%20Pharaohs/20th%20Century%20Masters_%20The%20Millenium%20Collection_%20Best%20Of%20Sam%20The%20Sham%20&%20The%20Pharaohs/02%20-%20Lil%27%20Red%20Riding%20Hood.mp3")