| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- import sys
- import os
- import configparser
- from yjdaemon.yjmpd import YJMPD
- from yjdaemon.HTTPServer import HTTPServerThread
- from yjdaemon.Database import Database
- from yjdaemon.libraryscanner import LibraryScanner
- debug = True
- config = configparser.ConfigParser()
- try:
- config.read("config.cfg")
- HTTP_PORT = int(config.get("HTTP", "port"))
- DAEMON_PORT = int(config.get("Daemon","port"))
- MUSIC_DIR = str(config.get("Library", "musicdir"))
- DB_USERNAME = config.get("Database", "username")
- DB_PASSWORD = config.get("Database", "password")
- DB_HOST = config.get("Database", "host")
- DB_DATABASE = config.get("Database", "database")
- DB_PORT = config.getint("Database", "port")
- except Exception as e:
- print(e.with_traceback())
- sys.exit(1)
- class MainDaemon(YJMPD):
- def run(self):
- HTTP_thread = HTTPServerThread(HTTP_PORT)
- HTTP_thread.start()
- def Test():
- print("Test")
- # socket_thread = ServiceSocket(DAEMON_PORT)
- # socket_thread.start()
- #HTTP_thread = HTTPServerThread(HTTP_PORT)
- #HTTP_thread.start()
- db = Database(DB_USERNAME, DB_PASSWORD, DB_HOST, DB_PORT, DB_DATABASE)
- LibraryScanner(db, MUSIC_DIR)
- if debug:
- Test()
- else:
- if __name__ == "__main__":
- username = os.getenv('USER')
- if None == username:
- dir = "/tmp/.pydaemon.pid"
- else:
- dir = "/home/" + username + "/.pydaemon.pid"
- daemon = MainDaemon(dir, MUSIC_DIR)
- if len(sys.argv) == 2:
- if 'start' == sys.argv[1]:
- daemon.start()
- elif 'stop' == sys.argv[1]:
- daemon.stop()
- elif 'restart' == sys.argv[1]:
- daemon.restart()
- elif 'status' == sys.argv[1]:
- daemon.status()
- else:
- print("Unknown command")
- sys.exit(2)
- sys.exit(0)
- else:
- print("usage: %s start|stop|status|restart" % sys.argv[0])
- sys.exit(2)
|