123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #!/usr/bin/python3
- import tornado.ioloop, tornado.web, os
- import mplayer_ctl
- class Index(tornado.web.RequestHandler):
- def get(self):
- self.redirect("/web/index.html", permanent=True)
-
- class PlayerControl(tornado.web.RequestHandler):
-
- def get(self):
- cmd = None
- c = self.get_argument('cmd')
-
- if c == "new_artist_stream":
- cmd = mplayer_ctl.Cmd(mplayer_ctl.CMD_NEW_ARTIST_STREAM, {
- "name" : self.get_argument('name')
- })
-
- elif c == "stop_stream":
- cmd = mplayer_ctl.Cmd(mplayer_ctl.CMD_STOP_STREAM)
- if cmd is not None:
- print("Adding command:", cmd)
- mplayer_ctl.cmd_queue.insert(0, cmd)
- self.redirect("/")
- urls = [
- (r"/", Index),
- (r"/player_control", PlayerControl),
- ]
- settings = {
- "static_path" : os.path.join(os.path.dirname(__file__), "web"),
- "static_url_prefix" : "/web/",
- "debug" : True,
- }
- app = tornado.web.Application(urls, **settings)
- if __name__ == "__main__":
- print("Yams PI client")
- # Kick off mplayer control thread
- mplayer_ctl.start({
- "streaming_url" : "http://yozh.devt.de:9092",
- "default_url" : "http://web:gemasuxx@devt.de:5051/pleasuredome",
- })
- # Kick off tornado
- app.listen(80)
- tornado.ioloop.IOLoop.instance().start()
|