WebHook.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
  5. @AUTHOR: ASJRD018
  6. @NAME: langer
  7. @software: PyCharm
  8. @DATE: 2019/7/15 15:16
  9. @Version: python3.6
  10. @MODIFY DECORD:ansjer dev
  11. @file: WebHook.py
  12. @Contact: chanjunkai@163.com
  13. """
  14. import json
  15. import os
  16. from django.http import HttpResponse
  17. from django.views.generic import TemplateView
  18. from object.ResponseObject import ResponseObject
  19. class HookWebView(TemplateView):
  20. def post(self, request, *args, **kwargs):
  21. request.encoding = 'utf-8'
  22. operation = kwargs.get('operation', None)
  23. request_dict = json.loads(request.body.decode('utf-8'))
  24. return self.validate(request_dict, operation)
  25. def get(self, request, *args, **kwargs):
  26. request.encoding = 'utf-8'
  27. request_dict = request.GET
  28. operation = kwargs.get('operation', None)
  29. return self.validate(request_dict, operation)
  30. def validate(self, request_dict, operation):
  31. response = ResponseObject()
  32. item = request_dict.get('item', None)
  33. if item == 'alexaOA':
  34. os.system("cd /web/amazon-alexa-camera;git pull")
  35. return response.json(0)
  36. else:
  37. return HttpResponse(status=404)