All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.wicp.tams.common.http.wechat.WechatMsg Maven / Gradle / Ivy

The newest version!
package net.wicp.tams.common.http.wechat;


import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.JsonNodeFactory;
import com.fasterxml.jackson.databind.node.ObjectNode;

import net.wicp.tams.common.Result;
import net.wicp.tams.common.apiext.json.JSONUtil;
import net.wicp.tams.common.http.HttpClient;
import net.wicp.tams.common.http.HttpResult;
import net.wicp.tams.common.http.IHttpResultParser;

public class WechatMsg {
	private final String key;

	public WechatMsg(String key) {
		this.key = key;
	}

	public Result sendmsg(String mobilelist, String msg) {
		String url = String.format("https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=%s", this.key);
		ObjectNode sendmsg = JsonNodeFactory.instance.objectNode();
		sendmsg.put(WechatParams.msgtype.name(), "text");
		ObjectNode text = JsonNodeFactory.instance.objectNode();
		sendmsg.set("text", text);
		text.put(WechatParams.content.name(), msg);
		text.put(WechatParams.mentioned_mobile_list.name(), mobilelist);
		HttpResult doPost = HttpClient.doPost(url, sendmsg);
		return doPost.getResult(new IHttpResultParser() {

			@Override
			public Result getObj(String value) {
				ObjectNode jsonObject = JSONUtil.parserStr(new ObjectMapper(),value);
				Long errcode = jsonObject.get("errcode").asLong();
				Result ret = errcode == 0 ? Result.getSuc() : Result.getError(jsonObject.get("errmsg").asText());
				return ret;
			}
		});
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy