|
@@ -37,6 +37,8 @@ class UserView(View):
|
|
|
return self.get_phone_number(request_dict, response)
|
|
|
elif operation == 'userLogin':
|
|
|
return self.user_login(request_dict, response)
|
|
|
+ elif operation == 'sendDeviceMsg':
|
|
|
+ return self.send_device_msg(request_dict, response)
|
|
|
else:
|
|
|
user_id = self.check_session_key_and_get_user_id(request)
|
|
|
if not user_id:
|
|
@@ -228,3 +230,40 @@ class UserView(View):
|
|
|
return response.json(0, res)
|
|
|
except Exception as e:
|
|
|
return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|
|
|
+
|
|
|
+ @staticmethod
|
|
|
+ def send_device_msg(request_dict, response):
|
|
|
+ """
|
|
|
+ 发送设备消息
|
|
|
+ https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/hardware-device/sendHardwareDeviceMessage.html
|
|
|
+ @param request_dict:
|
|
|
+ @param response:
|
|
|
+ @return:
|
|
|
+ """
|
|
|
+ try:
|
|
|
+ access_token = CommonObj.get_access_token()
|
|
|
+ url = WeChatMiniProgramAPIEnum.sendDeviceMsgAPI.value.format(access_token)
|
|
|
+ template_id = ''
|
|
|
+ uid = ''
|
|
|
+ page = ''
|
|
|
+ to_openid_list = []
|
|
|
+ miniprogram_state = 'developer'
|
|
|
+ model_id = ''
|
|
|
+ data = {}
|
|
|
+ lang = 'zh_CN'
|
|
|
+ json = {
|
|
|
+ 'template_id': template_id,
|
|
|
+ 'sn': uid,
|
|
|
+ 'page': page,
|
|
|
+ 'to_openid_list': to_openid_list,
|
|
|
+ 'miniprogram_state': miniprogram_state,
|
|
|
+ 'modelId': model_id,
|
|
|
+ 'data': data
|
|
|
+ }
|
|
|
+ r = requests.post(url=url, json=json, timeout=5)
|
|
|
+ result = eval(r.content)
|
|
|
+ errcode = result.get('errcode')
|
|
|
+ assert errcode == 0
|
|
|
+ return response.json(0)
|
|
|
+ except Exception as e:
|
|
|
+ return response.json(500, 'error_line:{}, error_msg:{}'.format(e.__traceback__.tb_lineno, repr(e)))
|