NotFound403 / wecom-sdk

Apache License 2.0
94 stars 12 forks source link
java sdk wechat workwechat
wecom-sdk

点击立即微信咨询 点击加入QQ交流群

📢如果你感觉这个项目不错,请点击项目右上角的⭐以鼓励作者,谢谢🎉。

须知

  1. 代码完全开源,使用前请认真尝试样例工程
  2. 在尝试步骤1的前提下遇到问题经过一系列努力无法解决,请提issue,或者通过自行扩展代码解决
  3. 不再提供任何无偿人工服务,不要把自己当上帝
  4. 会持续维护迭代

🏆简介

wecom-sdk是开源的企业微信开放 API 的 Java 实现,是目前最完整的 Java 开源实现。经过近三年的迭代,目前已经实现了通讯录管理、客户管理、微信客服、素材管理、消息推送、企微机器人、身份验证、应用管理、OA 办公、企业支付等企业微信开放接口,开发人员不需要很高的学习成本就能快速优雅地接入企业微信。

🎨企微机器人样例

/**
 * 企微机器人
 *
 * @throws IOException the io exception
 */
@Test
void webHooks()throws IOException{
        // 发 markdown
        WebhookBody markdownBody=WebhookMarkdownBody.from("这里为markdown消息");
        // 发纯文本
        WebhookBody textBody=WebhookTextBody.from("这里为纯文本");
        // 发图文
        WebhookArticle article=new WebhookArticle("这里为标题","这里为图文链接")
                                   .picurl("这里为封面图链接")
                                   .description("这里为摘要信息");
        WebhookBody newsBody=WebhookNewsBody.from(Collections.singletonList(article));
        // 从base64发图片
        String base64="图片base64";
        String md5="图片base64的md5";
        WebhookBody imageBody1=WebhookImageBody.from(base64,md5);
        // 从流发送图片
        String path="C:\\Users\\Administrator\\Desktop\\0.png";
        InputStream inputStream=Files.newInputStream(Paths.get(path));
        WebhookBody imageBody2=WebhookImageBody.from(inputStream);
        WeComResponse weComResponse=WorkWeChatApi.webhookApi().send("机器人key",markdownBody);
        Assertions.assertTrue(weComResponse.isSuccessful());

}

更多示例参见 SpringBootWecomSdkTests.java

🔥特性

💡目前自建应用可轻松适配,服务商、代开发暂不开源。

✍️技术栈

🕸️Maven中央仓库坐标


<dependency>
    <groupId>cn.felord</groupId>
    <artifactId>wecom-sdk</artifactId>
    <version>1.2.9</version>
</dependency>

<dependency>
    <groupId>cn.felord</groupId>
    <artifactId>rx-wecom-sdk</artifactId>
    <version>1.2.9</version>
</dependency>

会报错NoSuchMethod的是因为你项目本身引入了Okhttp,但是版本比较低,导致不兼容的情况,可通过以下依赖引入wecom-sdk

<dependency>
    <groupId>cn.felord</groupId>
    <artifactId>wecom-sdk</artifactId>
    <version>1.2.9</version>
    <exclusions>
        <exclusion>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
        </exclusion>
        <exclusion>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>logging-interceptor</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>okhttp</artifactId>
    <version>4.12.0</version>
</dependency>

<dependency>
    <groupId>com.squareup.okhttp3</groupId>
    <artifactId>logging-interceptor</artifactId>
    <version>4.12.0</version>
</dependency>

📚文档

不再提供任何文档,代码即文档

🎉特别鸣谢

jetbrains