web.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #!/usr/bin/env python3
  2. import json
  3. import tasks
  4. from db import db
  5. from flask import Flask, jsonify
  6. from rq import Queue
  7. from rq.job import Job
  8. from worker import conn
  9. PORT = 8981
  10. BASE_PATH="/back" #changes based on webserver
  11. app = Flask(__name__)
  12. d=db()
  13. @app.route(BASE_PATH + '/')
  14. def index():
  15. return "Hello world"
  16. @app.route(BASE_PATH + '/raw')
  17. def raw_list():
  18. ret={'list': d.raw() }
  19. return jsonify(ret)
  20. @app.route(BASE_PATH + '/job')
  21. def job():
  22. # func=tasks.cut_video , args=("/home/david/movie-1467033043.flv","0:45","1:48:00","/home/david/salida-cortada.mp4",), result_ttl=5000
  23. #job = tasks.long_job.delay("test")
  24. job = tasks.cut_video.delay("/home/david/movie-1467033043.flv","0:45","1:48:00","/home/david/salida-cortada.mp4")
  25. # job = tasks.upload_video.delay("titulo","/home/david/photo_2016-07-10_13-49-56.jpg","/home/david/movie-1467033043.flv")
  26. ret = {"id":job.get_id()}
  27. return jsonify(ret)
  28. @app.route(BASE_PATH+"/results/<job_key>", methods=['GET'])
  29. def get_results(job_key):
  30. print(job_key)
  31. job = Job.fetch(job_key, connection=conn)
  32. if job.is_finished:
  33. return str(job.result), 200
  34. else:
  35. return "%s" % json.dumps(job.meta) , 202
  36. @app.route(BASE_PATH + '/cut')
  37. def cut_list():
  38. ret=[]
  39. return jsonify(ret)
  40. @app.route(BASE_PATH + '/uploaded')
  41. def uploaded_list():
  42. ret=[]
  43. return jsonify(ret)
  44. if __name__ == '__main__':
  45. app.run(host="0.0.0.0",port=PORT, debug=True)