java获取钉钉userId,发送钉钉消息
钉钉获取userId,发送钉钉消息
·
1、获得appKey,appSecret,agentId


2、获取access_token
public static void getAccess_token() throws ApiException {
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/gettoken");
OapiGettokenRequest req = new OapiGettokenRequest();
req.setAppkey(appKey);
req.setAppsecret(appSecret);
req.setHttpMethod("GET");
OapiGettokenResponse rsp = client.execute(req);
System.out.println(rsp.getBody());
//{"errcode":0,"access_token":"4ec91c8f213d3236bdf8eaf6ffe95b2d","errmsg":"ok","expires_in":7200}
JSONObject jsonObject = JSONObject.parseObject(rsp.getBody());
if("0".equals(jsonObject.get("errcode").toString())){
System.out.println(jsonObject.get("access_token").toString());
}
}
3、根据手机号和access_token获取userId
public static String getDingUserIdByMobile(String phone,String access_token){
try {
DingTalkClient client = new DefaultDingTalkClient( "https://oapi.dingtalk.com/topapi/v2/user/getbymobile");
OapiV2UserGetbymobileRequest req = new OapiV2UserGetbymobileRequest();
req.setMobile(phone);
OapiV2UserGetbymobileResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
//{"errcode":0,"errmsg":"ok","result":{"userid":"manager5944"},"request_id":"nkdg8k4tx59n"}
JSONObject jsonObject = JSONObject.parseObject(rsp.getBody());
String errcode = jsonObject.get("errcode").toString();
if("0".equals(errcode)){
JSONObject result = jsonObject.getJSONObject("result");
System.out.println( result.getString("userid"));
return result.getString("userid");
}
} catch (ApiException e) {
e.printStackTrace();
}
return "";
}
4、发送消息
private static void asyncsend_v2(String title,String userid,String content,String access_token){
try {
DingTalkClient client = new DefaultDingTalkClient( "https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2");
OapiMessageCorpconversationAsyncsendV2Request req = new OapiMessageCorpconversationAsyncsendV2Request();
req.setAgentId(agentId);
req.setUseridList(userid);
req.setToAllUser(false);
OapiMessageCorpconversationAsyncsendV2Request.Msg obj1 = new OapiMessageCorpconversationAsyncsendV2Request.Msg();
obj1.setMsgtype("markdown");
OapiMessageCorpconversationAsyncsendV2Request.Markdown obj2 = new OapiMessageCorpconversationAsyncsendV2Request.Markdown();
obj2.setText(content);
obj2.setTitle(title);
obj1.setMarkdown(obj2);
req.setMsg(obj1);
OapiMessageCorpconversationAsyncsendV2Response rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
//{"errcode":0,"errmsg":"ok","task_id":472427311496,"request_id":"e61f577tk8a6"}
JSONObject jsonObject = JSONObject.parseObject(rsp.getBody());
String errcode = jsonObject.get("errcode").toString();
} catch (ApiException e) {
e.printStackTrace();
}
}
更多推荐
所有评论(0)