|
@@ -1,5 +1,6 @@
|
|
package com.jpsoft.smart.modules.common.utils;
|
|
package com.jpsoft.smart.modules.common.utils;
|
|
|
|
|
|
|
|
+import cn.hutool.core.date.DateUtil;
|
|
import com.jpsoft.smart.modules.wechat.entity.AccessToken;
|
|
import com.jpsoft.smart.modules.wechat.entity.AccessToken;
|
|
import net.sf.json.JSONObject;
|
|
import net.sf.json.JSONObject;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
@@ -14,29 +15,31 @@ import java.util.regex.Pattern;
|
|
public class WechatMessageUtil {
|
|
public class WechatMessageUtil {
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
+
|
|
public static final String send_template = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN";
|
|
public static final String send_template = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN";
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static final String TEMPLATE_REDIRECT_PRE_URL = "http://wuyeopenlocktest-wecat.sudaonline.net";
|
|
private static final String TEMPLATE_REDIRECT_PRE_URL = "http://wuyeopenlocktest-wecat.sudaonline.net";
|
|
|
|
|
|
|
|
+ private static final String TEMPERATURE_ALARM_PRE_URL = "http://wisdomhousewechat.sudaonline.net/123.jpg";
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
|
|
public static boolean sendBillInfo(String fullName, BigDecimal amount, String openId,
|
|
public static boolean sendBillInfo(String fullName, BigDecimal amount, String openId,
|
|
String detailAmount, String propertyName, String billRemark, String billDetailId,String billTemplateId,String appId,String appSecret) {
|
|
String detailAmount, String propertyName, String billRemark, String billDetailId,String billTemplateId,String appId,String appSecret) {
|
|
|
|
|
|
|
|
|
|
JSONObject sendData = new JSONObject();
|
|
JSONObject sendData = new JSONObject();
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject first = new JSONObject();
|
|
JSONObject first = new JSONObject();
|
|
first.put("value", "您有一个新的账单,点击查看详情!");
|
|
first.put("value", "您有一个新的账单,点击查看详情!");
|
|
first.put("color", "#FF0000");
|
|
first.put("color", "#FF0000");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword1 = new JSONObject();
|
|
JSONObject keyword1 = new JSONObject();
|
|
keyword1.put("value", fullName);
|
|
keyword1.put("value", fullName);
|
|
keyword1.put("color", "#173177");
|
|
keyword1.put("color", "#173177");
|
|
@@ -52,40 +55,40 @@ public class WechatMessageUtil {
|
|
|
|
|
|
|
|
|
|
String remarkStr = "账单来源:" + propertyName;
|
|
String remarkStr = "账单来源:" + propertyName;
|
|
-
|
|
|
|
|
|
+
|
|
if(StringUtils.isNotBlank(billRemark)){
|
|
if(StringUtils.isNotBlank(billRemark)){
|
|
remarkStr = remarkStr + "\n备注:"+ billRemark +"";
|
|
remarkStr = remarkStr + "\n备注:"+ billRemark +"";
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject remark = new JSONObject();
|
|
JSONObject remark = new JSONObject();
|
|
remark.put("value", remarkStr);
|
|
remark.put("value", remarkStr);
|
|
remark.put("color", "#173177");
|
|
remark.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
sendData.put("first", first);
|
|
sendData.put("first", first);
|
|
sendData.put("keyword1", keyword1);
|
|
sendData.put("keyword1", keyword1);
|
|
sendData.put("keyword2", keyword2);
|
|
sendData.put("keyword2", keyword2);
|
|
sendData.put("keyword3", keyword3);
|
|
sendData.put("keyword3", keyword3);
|
|
sendData.put("remark", remark);
|
|
sendData.put("remark", remark);
|
|
-
|
|
|
|
|
|
+
|
|
//w8Zk_VQMFIEVSIBPZid7zSrvHmBdrgnqF76u8PLCZEs cs
|
|
//w8Zk_VQMFIEVSIBPZid7zSrvHmBdrgnqF76u8PLCZEs cs
|
|
boolean ret = sendTemplate(sendData, appId,appSecret,billTemplateId,openId, TEMPLATE_REDIRECT_PRE_URL + "/billDetail/" + billDetailId +"payTime=0&payType=bill");
|
|
boolean ret = sendTemplate(sendData, appId,appSecret,billTemplateId,openId, TEMPLATE_REDIRECT_PRE_URL + "/billDetail/" + billDetailId +"payTime=0&payType=bill");
|
|
-
|
|
|
|
|
|
+
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
//
|
|
//
|
|
public static boolean sendBillPayedMessage(String fullName,String feeName,Date createTime,BigDecimal amount,String openId,String billDetailId,String payedTemplateId,String appId,String appSecret) {
|
|
public static boolean sendBillPayedMessage(String fullName,String feeName,Date createTime,BigDecimal amount,String openId,String billDetailId,String payedTemplateId,String appId,String appSecret) {
|
|
|
|
|
|
JSONObject sendData = new JSONObject();
|
|
JSONObject sendData = new JSONObject();
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject first = new JSONObject();
|
|
JSONObject first = new JSONObject();
|
|
first.put("value", "账单支付成功!");
|
|
first.put("value", "账单支付成功!");
|
|
first.put("color", "#FF0000");
|
|
first.put("color", "#FF0000");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword1 = new JSONObject();
|
|
JSONObject keyword1 = new JSONObject();
|
|
keyword1.put("value", fullName);
|
|
keyword1.put("value", fullName);
|
|
keyword1.put("color", "#173177");
|
|
keyword1.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword2 = new JSONObject();
|
|
JSONObject keyword2 = new JSONObject();
|
|
keyword2.put("value", feeName);
|
|
keyword2.put("value", feeName);
|
|
keyword2.put("color", "#173177");
|
|
keyword2.put("color", "#173177");
|
|
@@ -96,35 +99,35 @@ public class WechatMessageUtil {
|
|
JSONObject keyword3 = new JSONObject();
|
|
JSONObject keyword3 = new JSONObject();
|
|
keyword3.put("value", sdf.format(createTime));
|
|
keyword3.put("value", sdf.format(createTime));
|
|
keyword3.put("color", "#173177");
|
|
keyword3.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword4 = new JSONObject();
|
|
JSONObject keyword4 = new JSONObject();
|
|
-
|
|
|
|
|
|
+
|
|
keyword4.put("value", "¥" + amount.setScale(2) + "元");
|
|
keyword4.put("value", "¥" + amount.setScale(2) + "元");
|
|
keyword4.put("color", "#173177");
|
|
keyword4.put("color", "#173177");
|
|
-
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
String remarkStr = "感谢您的支持,点击查看缴费详情";
|
|
String remarkStr = "感谢您的支持,点击查看缴费详情";
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject remark = new JSONObject();
|
|
JSONObject remark = new JSONObject();
|
|
remark.put("value", remarkStr);
|
|
remark.put("value", remarkStr);
|
|
remark.put("color", "#173177");
|
|
remark.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
sendData.put("first", first);
|
|
sendData.put("first", first);
|
|
sendData.put("keyword1", keyword1);
|
|
sendData.put("keyword1", keyword1);
|
|
sendData.put("keyword2", keyword2);
|
|
sendData.put("keyword2", keyword2);
|
|
sendData.put("keyword3", keyword3);
|
|
sendData.put("keyword3", keyword3);
|
|
sendData.put("keyword4", keyword4);
|
|
sendData.put("keyword4", keyword4);
|
|
sendData.put("remark", remark);
|
|
sendData.put("remark", remark);
|
|
-
|
|
|
|
|
|
+
|
|
//w8Zk_VQMFIEVSIBPZid7zSrvHmBdrgnqF76u8PLCZEs cs
|
|
//w8Zk_VQMFIEVSIBPZid7zSrvHmBdrgnqF76u8PLCZEs cs
|
|
boolean ret = sendTemplate(sendData,appId,appSecret,payedTemplateId ,openId,TEMPLATE_REDIRECT_PRE_URL + "/billDetail/" + billDetailId +"payTime=1&payType=bill");
|
|
boolean ret = sendTemplate(sendData,appId,appSecret,payedTemplateId ,openId,TEMPLATE_REDIRECT_PRE_URL + "/billDetail/" + billDetailId +"payTime=1&payType=bill");
|
|
-
|
|
|
|
|
|
+
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
//
|
|
//
|
|
public static boolean sendScanPayedMessage(String fullName,String feeName,Date createTime,BigDecimal amount,String openId,String independentPayId,String payedTemplateId,String appId,String appSecret) {
|
|
public static boolean sendScanPayedMessage(String fullName,String feeName,Date createTime,BigDecimal amount,String openId,String independentPayId,String payedTemplateId,String appId,String appSecret) {
|
|
|
|
|
|
@@ -175,7 +178,7 @@ public class WechatMessageUtil {
|
|
|
|
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 发送通知信息
|
|
* 发送通知信息
|
|
* @param noticeName 通知名称名称
|
|
* @param noticeName 通知名称名称
|
|
@@ -191,36 +194,36 @@ public class WechatMessageUtil {
|
|
JSONObject first = new JSONObject();
|
|
JSONObject first = new JSONObject();
|
|
first.put("value", "您好,园区通知如下:");
|
|
first.put("value", "您好,园区通知如下:");
|
|
first.put("color", "#173177");
|
|
first.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword1 = new JSONObject();
|
|
JSONObject keyword1 = new JSONObject();
|
|
keyword1.put("value", noticeName);
|
|
keyword1.put("value", noticeName);
|
|
keyword1.put("color", "#173177");
|
|
keyword1.put("color", "#173177");
|
|
-
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword2 = new JSONObject();
|
|
JSONObject keyword2 = new JSONObject();
|
|
keyword2.put("value", sdf.format(new Date()));
|
|
keyword2.put("value", sdf.format(new Date()));
|
|
keyword2.put("color", "#173177");
|
|
keyword2.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject keyword3 = new JSONObject();
|
|
JSONObject keyword3 = new JSONObject();
|
|
keyword3.put("value", finallyContent);
|
|
keyword3.put("value", finallyContent);
|
|
keyword3.put("color", "#173177");
|
|
keyword3.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject remark = new JSONObject();
|
|
JSONObject remark = new JSONObject();
|
|
remark.put("value", "点击查看详情");
|
|
remark.put("value", "点击查看详情");
|
|
remark.put("color", "#173177");
|
|
remark.put("color", "#173177");
|
|
-
|
|
|
|
|
|
+
|
|
sendData.put("first", first);
|
|
sendData.put("first", first);
|
|
sendData.put("keyword1", keyword1);
|
|
sendData.put("keyword1", keyword1);
|
|
sendData.put("keyword2", keyword2);
|
|
sendData.put("keyword2", keyword2);
|
|
sendData.put("keyword3", keyword3);
|
|
sendData.put("keyword3", keyword3);
|
|
sendData.put("remark", remark);
|
|
sendData.put("remark", remark);
|
|
-
|
|
|
|
|
|
+
|
|
//noticeDetailId
|
|
//noticeDetailId
|
|
boolean ret = sendTemplate(sendData,appId,appSecret,noticeTemplateId ,openId, TEMPLATE_REDIRECT_PRE_URL + "/#/noticeInfo/" + noticeDetailId);
|
|
boolean ret = sendTemplate(sendData,appId,appSecret,noticeTemplateId ,openId, TEMPLATE_REDIRECT_PRE_URL + "/#/noticeInfo/" + noticeDetailId);
|
|
-
|
|
|
|
|
|
+
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -267,7 +270,7 @@ public class WechatMessageUtil {
|
|
sendData.put("remark", remark);
|
|
sendData.put("remark", remark);
|
|
|
|
|
|
//noticeDetailId
|
|
//noticeDetailId
|
|
- boolean ret = sendTemplate(sendData,appId,appSecret,noticeTemplateId ,openId, TEMPLATE_REDIRECT_PRE_URL + "/#/noticeInfo/" + noticeDetailId);
|
|
|
|
|
|
+ boolean ret = sendTemplate(sendData,appId,appSecret,noticeTemplateId ,openId, TEMPERATURE_ALARM_PRE_URL + "/#/noticeInfo/" + noticeDetailId);
|
|
|
|
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
@@ -312,7 +315,7 @@ public class WechatMessageUtil {
|
|
|
|
|
|
return ret;
|
|
return ret;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 微信发送模版
|
|
* 微信发送模版
|
|
* @param sendData 发送数据
|
|
* @param sendData 发送数据
|
|
@@ -322,39 +325,39 @@ public class WechatMessageUtil {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
private static boolean sendTemplate(JSONObject sendData,String appId,String appSecret,String templateId,String openId,String url){
|
|
private static boolean sendTemplate(JSONObject sendData,String appId,String appSecret,String templateId,String openId,String url){
|
|
-
|
|
|
|
|
|
+
|
|
boolean result = false;
|
|
boolean result = false;
|
|
|
|
|
|
|
|
|
|
AccessToken accessToken = WeixinUtil.getAccessToken(appId, appSecret);
|
|
AccessToken accessToken = WeixinUtil.getAccessToken(appId, appSecret);
|
|
-
|
|
|
|
|
|
+
|
|
if(accessToken != null){
|
|
if(accessToken != null){
|
|
//发送模版内容
|
|
//发送模版内容
|
|
String sendTemplateUrl = send_template.replace("ACCESS_TOKEN", accessToken.getToken());
|
|
String sendTemplateUrl = send_template.replace("ACCESS_TOKEN", accessToken.getToken());
|
|
-
|
|
|
|
|
|
+
|
|
JSONObject sendTemplateData = new JSONObject();
|
|
JSONObject sendTemplateData = new JSONObject();
|
|
-
|
|
|
|
|
|
+
|
|
sendTemplateData.put("touser", openId);
|
|
sendTemplateData.put("touser", openId);
|
|
sendTemplateData.put("template_id", templateId);
|
|
sendTemplateData.put("template_id", templateId);
|
|
sendTemplateData.put("url", url);
|
|
sendTemplateData.put("url", url);
|
|
sendTemplateData.put("data", sendData);
|
|
sendTemplateData.put("data", sendData);
|
|
-
|
|
|
|
|
|
+
|
|
System.out.println("模版发送Id>>>>" + templateId + ">>>模版发送数据>>>>>" + sendTemplateData.toString());
|
|
System.out.println("模版发送Id>>>>" + templateId + ">>>模版发送数据>>>>>" + sendTemplateData.toString());
|
|
-
|
|
|
|
|
|
+
|
|
String sendTemplateRet = HttpConnectionUtil.requestByPost(sendTemplateUrl, sendTemplateData.toString());
|
|
String sendTemplateRet = HttpConnectionUtil.requestByPost(sendTemplateUrl, sendTemplateData.toString());
|
|
-
|
|
|
|
|
|
+
|
|
System.out.println("模版发送返回数据>>>>>" + sendTemplateRet);
|
|
System.out.println("模版发送返回数据>>>>>" + sendTemplateRet);
|
|
-
|
|
|
|
|
|
+
|
|
if(StringUtils.isNotBlank(sendTemplateRet)){
|
|
if(StringUtils.isNotBlank(sendTemplateRet)){
|
|
JSONObject sendTemplateJson = JSONObject.fromObject(sendTemplateRet);
|
|
JSONObject sendTemplateJson = JSONObject.fromObject(sendTemplateRet);
|
|
-
|
|
|
|
|
|
+
|
|
if("0".equals(sendTemplateJson.getString("errcode"))){
|
|
if("0".equals(sendTemplateJson.getString("errcode"))){
|
|
//发送成功
|
|
//发送成功
|
|
result = true;
|
|
result = true;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -371,18 +374,67 @@ public class WechatMessageUtil {
|
|
|
|
|
|
return finallyContent;
|
|
return finallyContent;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 发送温度报警模板
|
|
|
|
+ * @param openId
|
|
|
|
+ * @param place
|
|
|
|
+ * @param appId
|
|
|
|
+ * @param appSecret
|
|
|
|
+ * @param templateId
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ public static boolean sendTemperatureAlarmInfo( String openId,String place,String appId,String appSecret,String templateId) {
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ JSONObject sendData = new JSONObject();
|
|
|
|
+
|
|
|
|
+ JSONObject first = new JSONObject();
|
|
|
|
+ first.put("value", "疑似疫情报警!");
|
|
|
|
+ first.put("color", "#FF0000");
|
|
|
|
+
|
|
|
|
+ JSONObject keyword1 = new JSONObject();
|
|
|
|
+ keyword1.put("value", DateUtil.format(new Date(), "yyyy-MM-dd HH:mm"));
|
|
|
|
+ keyword1.put("color", "#173177");
|
|
|
|
+
|
|
|
|
+ JSONObject keyword2 = new JSONObject();
|
|
|
|
+ keyword2.put("value", place);
|
|
|
|
+ keyword2.put("color", "#173177");
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ String remarkStr = "发现有一例体温异常情况,点击查看详情";
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ JSONObject remark = new JSONObject();
|
|
|
|
+ remark.put("value", remarkStr);
|
|
|
|
+ remark.put("color", "#173177");
|
|
|
|
+
|
|
|
|
+ sendData.put("first", first);
|
|
|
|
+ sendData.put("keyword1", keyword1);
|
|
|
|
+ sendData.put("keyword2", keyword2);
|
|
|
|
+ sendData.put("remark", remark);
|
|
|
|
+
|
|
|
|
+ //w8Zk_VQMFIEVSIBPZid7zSrvHmBdrgnqF76u8PLCZEs cs
|
|
|
|
+ boolean ret = sendTemplate(sendData, appId,appSecret,templateId,openId, TEMPERATURE_ALARM_PRE_URL);
|
|
|
|
+
|
|
|
|
+ return ret;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
public static void main(String[] args) {
|
|
public static void main(String[] args) {
|
|
/*AccessToken at = WeixinUtil.getAccessToken(APP_ID, APP_SECRET,"061iw9gy1sZ1dg09dqhy1ae3gy1iw9gq");
|
|
/*AccessToken at = WeixinUtil.getAccessToken(APP_ID, APP_SECRET,"061iw9gy1sZ1dg09dqhy1ae3gy1iw9gq");
|
|
-
|
|
|
|
|
|
+
|
|
System.out.println(at.getOpenid());*/
|
|
System.out.println(at.getOpenid());*/
|
|
-
|
|
|
|
|
|
+
|
|
/*for (int i = 0; i < 1; i++) {
|
|
/*for (int i = 0; i < 1; i++) {
|
|
doorMessage("1111", 2,"2018-09-22 09:00-12:00", 1, "2222222", "3333333", "oiFbN0p9jKphExeGIa3HtyL9HjqM");
|
|
doorMessage("1111", 2,"2018-09-22 09:00-12:00", 1, "2222222", "3333333", "oiFbN0p9jKphExeGIa3HtyL9HjqM");
|
|
}*/
|
|
}*/
|
|
-
|
|
|
|
|
|
+
|
|
//orderConfirmMessage("12312321312", 1111, DEFAULT_OPEN_ID);
|
|
//orderConfirmMessage("12312321312", 1111, DEFAULT_OPEN_ID);
|
|
//sendBillInfo("测试", "测sendNoticeMessage试", "荆鹏创业", "张三", new BigDecimal(1), "o64fbt6TTUcqLC_tyVJ60I5kzWVc", "1111", new Date());
|
|
//sendBillInfo("测试", "测sendNoticeMessage试", "荆鹏创业", "张三", new BigDecimal(1), "o64fbt6TTUcqLC_tyVJ60I5kzWVc", "1111", new Date());
|
|
//sendBillPayedMessage("测试", "荆鹏创业", "张三", new BigDecimal(1), "o64fbt6TTUcqLC_tyVJ60I5kzWVc", "11111", new Date());
|
|
//sendBillPayedMessage("测试", "荆鹏创业", "张三", new BigDecimal(1), "o64fbt6TTUcqLC_tyVJ60I5kzWVc", "11111", new Date());
|
|
@@ -396,11 +448,12 @@ public class WechatMessageUtil {
|
|
|
|
|
|
//sendAlarmNoticeMessage("周界入侵警报", "周界入侵,目标ID:1419,区域范围:(0.327,0.698)(0.674,0.936)(0.67,0.985)(0.352,0.973)", "oHjCawgwCGen5k1-hAsimdEX5lZo", "","8dpP8XM1XaiiIByXiuAeFIZeNjEow1AleG_h8O2xyVA","wx7e70eb62a8459869","909d17e353268da57c4f18cc09798049");
|
|
//sendAlarmNoticeMessage("周界入侵警报", "周界入侵,目标ID:1419,区域范围:(0.327,0.698)(0.674,0.936)(0.67,0.985)(0.352,0.973)", "oHjCawgwCGen5k1-hAsimdEX5lZo", "","8dpP8XM1XaiiIByXiuAeFIZeNjEow1AleG_h8O2xyVA","wx7e70eb62a8459869","909d17e353268da57c4f18cc09798049");
|
|
//sendNoticeMessage("测试", "sdfsdfasfasdfafasdfasdf", "oHjCawgwCGen5k1-hAsimdEX5lZo", "2222","vsw6sb9lMA3bcsE8MdeaGENvI1HSUy2ht9B8hS3jEzA","wx7e70eb62a8459869","909d17e353268da57c4f18cc09798049");
|
|
//sendNoticeMessage("测试", "sdfsdfasfasdfafasdfasdf", "oHjCawgwCGen5k1-hAsimdEX5lZo", "2222","vsw6sb9lMA3bcsE8MdeaGENvI1HSUy2ht9B8hS3jEzA","wx7e70eb62a8459869","909d17e353268da57c4f18cc09798049");
|
|
|
|
+ sendTemperatureAlarmInfo("oLowyuOQ9ULF3LUGt6h3fTrsnbVE","荆鹏软件_门房考勤机","wx0b3c41a903053808","43557bd62f77b0c3d6670e991872f0e7","Mg9Ldk_kaoHAUwXFHEatrGugTlOz3yrMmMk7VoBca4M");
|
|
getContent("<p>内容</p>");
|
|
getContent("<p>内容</p>");
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|