Java编程实现对企业微信成员发送消息

一、配置企业微信 

企业微信icon-default.png?t=N7T8https://work.weixin.qq.com/wework_admin/loginpage_wx

获取企业ID

创建应用,获取到agentId、secret

二、创建工程代码

pom.xml

        <dependency>
            <groupId>com.github.binarywang</groupId>
            <artifactId>weixin-java-cp</artifactId>
            <version>4.0.8.B</version>
        </dependency>
        <!-- fastjson-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.76</version>
        </dependency>

创建com/soft863/WxConfig.java类

package com.soft863;

import me.chanjar.weixin.common.error.WxErrorException;
import me.chanjar.weixin.cp.api.WxCpService;
import me.chanjar.weixin.cp.api.impl.WxCpServiceImpl;
import me.chanjar.weixin.cp.config.impl.WxCpDefaultConfigImpl;



/**
 * 推送企业微信配置
 */
public class WxConfig {
    private static Integer agentId = 1000004;
    private static String secret = "DXm95nJjLmZUJ_ViaMN-_i0xhQjjB_qmZLIl4nbwd_s1";
    private static String corpId = "ww569e3c6d1e8e05461";

    // 配置企业微信服务
    public static WxCpService getWxCpService() {
        WxCpService wxCpService = new WxCpServiceImpl();
        WxCpDefaultConfigImpl config = new WxCpDefaultConfigImpl();
        config.setAgentId(agentId);
        config.setCorpSecret(secret);
        config.setCorpId(corpId);
        resetTokenAndJsApi(wxCpService, config);
        return wxCpService;
    }

    // 重置token
    public static void resetTokenAndJsApi(WxCpService wxCpService, WxCpDefaultConfigImpl wxCpDefaultConfig) {

        wxCpService.setWxCpConfigStorage(wxCpDefaultConfig);
        try {
            String accessToken = wxCpService.getAccessToken(false);
            wxCpDefaultConfig.setAccessToken(accessToken);
        } catch (WxErrorException e) {
            e.printStackTrace();
        }

    }
}

创建com/soft863/App.java类

package com.soft863;

import me.chanjar.weixin.common.error.WxErrorException;
import me.chanjar.weixin.cp.api.impl.WxCpMessageServiceImpl;
import me.chanjar.weixin.cp.bean.message.WxCpMessage;

import java.text.SimpleDateFormat;
import java.util.Date;

public class App {
    public static void main(String[] args) throws WxErrorException {
        //微信消息对象
        WxCpMessageServiceImpl wxCpMessageService = new WxCpMessageServiceImpl(WxConfig.getWxCpService());
        WxCpMessage wxCpMessage = new WxCpMessage();
        wxCpMessage.setSafe("0");
        wxCpMessage.setMsgType("text");

        //发送给用户:userid
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        String time = format.format(new Date());

        //设置发送用户,此处是企业微信某个用户的用户名
        wxCpMessage.setToUser("XXX");
        //设置发送标题
        wxCpMessage.setContent("这是一个测试程序>>>,代码已经测试通过,可以针对企业微信进行编程");
        wxCpMessageService.send(wxCpMessage);
    }

}

 点击测试,查看企业微信收到该应用的消息

参考资料 

发送应用消息 - 接口文档 - 企业微信开发者中心

Java 推送企业微信消息_java企业微信消息推送-CSDN博客

Java代码实现向企业微信发送消息_weixin-java-cp-CSDN博客

Java集成企业微信的消息推送_java企业微信消息推送-CSDN博客

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
很高兴回答您的问题。以下是Java代码实现企业微信客户发送节日祝福的示例: ``` import java.util.ArrayList; import java.util.List; import com.alibaba.fastjson.JSONObject; import com.tencent.wework.api.domain.response.external.timed_task.ScheduleResponse; import com.tencent.wework.api.util.HttpUtils; public class SendMsgToChat { // 发送企业微信消息的接口URL public static final String SEND_MESSAGE_URL = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token="; // 获取企业微信 access_token 的接口URL public static final String GET_ACCESS_TOKEN_URL = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=your_corpid&corpsecret=your_corpsecret"; // 企业 ID,可以在企业微信管理后台查看 public static final String CORP_ID = "your_corpid"; // 发送企业微信客户消息的应用 agentId,可以在企业微信管理后台查看 public static final String AGENT_ID = "your_agentid"; // 客户标签 ID,可以在企业微信管理后台的客户标签中查看 public static final String TAG_ID = "your_tagid"; public static void main(String[] args) { // 获取企业微信 access_token String accessToken = getAccessToken(); // 发送消息 sendMessageToTag(accessToken, "Happy New Year!"); } /** * 获取企业微信 access_token * * @return */ private static String getAccessToken() { String accessToken = ""; String result = HttpUtils.get(GET_ACCESS_TOKEN_URL); JSONObject jsonObject = JSONObject.parseObject(result); if (jsonObject.containsKey("access_token")) { accessToken = jsonObject.getString("access_token"); } return accessToken; } /** * 发送消息给指定标签的客户 * * @param accessToken * @param msgContent */ private static void sendMessageToTag(String accessToken, String msgContent) { JSONObject jsonObject = new JSONObject(); jsonObject.put("toparty", TAG_ID); jsonObject.put("msgtype", "text"); JSONObject text = new JSONObject(); text.put("content", msgContent); jsonObject.put("text", text); String postData = jsonObject.toJSONString(); String url = SEND_MESSAGE_URL + accessToken; String result = HttpUtils.post(url, postData); ScheduleResponse response = JSONObject.parseObject(result, ScheduleResponse.class); System.out.println(response.toString()); } } ``` 在上面的代码中,我们首先定义了发送企业微信消息的接口URL、获取企业微信 access_token 的接口URL、企业 ID、应用 agentId 和客户标签 ID,这些信息需要替换为您自己企业微信的相应信息。然后,我们定义了两个方法,一个用于获取企业微信 access_token,另一个用于发送消息给指定标签的客户。 在 main 方法中,我们首先获取企业微信 access_token,然后调用 sendMessageToTag 方法发送消息。sendMessageToTag 方法中,我们首先构造发送消息的请求体(客户标签 ID 和消息内容),然后使用 HttpUtils 发送 POST 请求向企业微信发送消息。 注意:这里的企业微信客户是指标签下的客户,需要先在企业微信管理后台的客户标签中创建客户标签并添加客户,然后使用该客户标签 ID 发送消息。 希望这个 Java 示例对您有所帮助。如果您还有其他问题,请随时提出。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数智侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值