You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 satır
3.0KB

  1. from flask_restful import Resource, reqparse
  2. from common.interceptors import auth_required_time
  3. from flask import jsonify,request
  4. from common import redis_helper,utils
  5. from wechat import gewe_chat
  6. class SendSNSTextResource(Resource):
  7. def __init__(self):
  8. self.parser = reqparse.RequestParser()
  9. self.wxchat = gewe_chat.wxchat
  10. @auth_required_time
  11. def post(self):
  12. req = request.get_json()
  13. content = req.get("content")
  14. ret, msg, data = self.wxchat.send_text_sns(request.environ['token_id'], request.environ['app_id'], content)
  15. if ret != 200:
  16. response = jsonify({
  17. 'code': ret,
  18. 'message': msg
  19. })
  20. response.status_code = ret
  21. response.message = msg
  22. return response
  23. return jsonify(data)
  24. class SendSNSImageResource(Resource):
  25. def __init__(self):
  26. self.parser = reqparse.RequestParser()
  27. self.wxchat = gewe_chat.wxchat
  28. @auth_required_time
  29. def post(self):
  30. req = request.get_json()
  31. content = req.get("content","")
  32. image_urls=req.get("imageUrls",[])
  33. ret, msg, data = self.wxchat.upload_sns_image(request.environ['token_id'], request.environ['app_id'], image_urls)
  34. if ret != 200:
  35. response = jsonify({
  36. 'code': ret,
  37. 'message': msg
  38. })
  39. response.status_code = ret
  40. response.message = msg
  41. return response
  42. ret, msg, data = self.wxchat.send_image_sns(request.environ['token_id'], request.environ['app_id'], content,data)
  43. if ret != 200:
  44. response = jsonify({
  45. 'code': ret,
  46. 'message': msg
  47. })
  48. response.status_code = ret
  49. response.message = msg
  50. return response
  51. return jsonify(data)
  52. class SendSNSVideoResource(Resource):
  53. def __init__(self):
  54. self.parser = reqparse.RequestParser()
  55. self.wxchat = gewe_chat.wxchat
  56. @auth_required_time
  57. def post(self):
  58. req = request.get_json()
  59. content = req.get("content","")
  60. video_url=req.get("videoUrl","")
  61. video_thumb_url=req.get("videoThumbUrl","")
  62. ret, msg, data = self.wxchat.upload_sns_video(request.environ['token_id'], request.environ['app_id'], video_url,video_thumb_url)
  63. if ret != 200:
  64. response = jsonify({
  65. 'code': ret,
  66. 'message': msg
  67. })
  68. response.status_code = ret
  69. response.message = msg
  70. return response
  71. ret, msg, data = self.wxchat.send_video_sns(request.environ['token_id'], request.environ['app_id'], content,data)
  72. if ret != 200:
  73. response = jsonify({
  74. 'code': ret,
  75. 'message': msg
  76. })
  77. response.status_code = ret
  78. response.message = msg
  79. return response
  80. return jsonify(data)