mxxWechatBot微信机器人主动给机器人发送消息

大家伙,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。


先看这里

    • 前言
    • 接口地址
    • 一、获取`token`
    • 二、主动发送消息
    • 三、获取群、好友以及公众号列表

前言

注意:

  1. 免责声明:该工具仅供学习使用,禁止使用该工具从事违法活动,否则永久拉黑​封禁账号。
  2. 本工具我不会绝对保证对你的账号没有影响,尽量使用小号去研究学习,mxxWechatBot不承担任何责任。

经过用户的不断使用与反馈,发现了个问题,虽然mxxWechatBot工具支持兼容不同编程语言,但是写法略有所不同,许多小伙伴在使用的过程中,还是发现在调用主动发送的接口还是有点小问题,今天,我就简单的使用java写个demo供大家参考吧。

其他文章地址:mxxWechatBot专栏

接口地址

为了避免接口滥用,以及数据安全的问题,接口地址放在微信群里面了,有需要的使用mxxWechatBot的小伙伴们可以联系我,获取api接口地址。

一、获取token

  • 请求方式:post
  • 接口地址:{apiUrl}/getWechatToken
  • 参数:
  {"username": "username",  //服务端的用户名"password": "password"  //服务端的密码
}
  • 响应内容:
  {"msg": "操作成功","code": 200,"expireTime": 1704200673599,  //失效时间"token": "eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6Ijc1M2NmMzMwLTJkZmItNDc1Ny04ZWIzLWU3MjgwOTk4ZDEyYyJ9.-XuaK8O-8EV694vUzkU5yDMmoheOJZylHJcrMEcfG0uoS-1MzBTVudbFmQro42sF63DPwqQ"  //token的值
}
  • 示例代码:
 /*** 获取服务端机器人的token*/public String getmxxWecharBotToken(){String url = WECHAT_SERVE_API + "/getWechatToken";JSONObject o = new JSONObject();o.put("username",LOGIN_USER_NAME);o.put("password",LOGIN_USER_PASSWORD);String params = JSON.toJSONString(o);String body = HttpUtil.createPost(url).body(params).execute().body();log.info("请求获取服务端的token:{}",body);JSONObject jsonObject = JSON.parseObject(body);String token  = "";if(jsonObject.getInteger("code") == 200){//获取tokentoken = jsonObject.getString("token");//将token放在缓存中redisService.setCacheObject("mxxWechatRotToken",token,28, TimeUnit.MINUTES);}return token;}

注意,token的默认失效时间为30分钟。

二、主动发送消息

  • 请求方式:post
  • 接口地址:{apiUrl}/system/object/customApiSendMsg
  • 参数:
{"wxid": "xxxx@chatroom",    //需要发送的群或者好友"tag": 0,                  //消息类型"appkey": "xxxxx",        //-1设置百度的appkey和秘钥 0表示发送文字,1表示发送图片 2发送本地文件 3发送H5小卡片 4发送小程序  5发送音乐卡片 6发送xml文件 7发送聊天记录  8语言消息 9名片消息 10视频消息 11动态表情 12地理位置 13分享链接或者附件 14红包 15群邀请 16系统消息  17其他类型的xml"message": "你好",      //消息内容"isAt": false,        //是否需要艾特"atList": ["wxid_ehfxxxxbt22"      //艾特的人员]
}
  • 响应内容:
  {"msg": "操作成功","code": 200
}
  • 示例代码:
 /*** (微信机器人)定时发送每日天气文字到微信群中*/@GetMapping("/sendWetherInfoByDaysText")@Scheduled(cron = " 0 10 9 * * ?")public void sendWetherInfoByDaysText() {StringBuilder sb = new StringBuilder();sb.append("\\uD83D\\uDD34\\uD83D\\uDFE0\\uD83D\\uDFE1 大家好!我是雄雄,让我们一起关注天气变化,关爱彼此,共度美好时光。祝愿大家拥有一个愉快的一天!");sb.append("/cbr");sb.append("/cbr");//获取中央气象台每日天气信息JSONObject objectZhongYang = collectWebDataUtils.getZYWetherDay();//文本信息JSONArray contentList = objectZhongYang.getJSONArray("contentArray");int i = 1;for (Object o : contentList) {if (i == 1) {sb.append("[拥抱]").append(o).append("/cbr");} else if (i == 2) {sb.append("\\uD83D\\uDD34").append(o).append("/cbr");} else if (i == 3) {sb.append("\\uD83D\\uDFE0").append(o).append("/cbr");} else if (i == 4) {sb.append("\\uD83D\\uDFE1").append(o).append("/cbr");} else if (i == 5) {sb.append("\\uD83D\\uDFE2").append(o).append("/cbr");}sb.append("/cbr");i++;}sb.append("/cbr");sb.append("数据来源于:中国中央气象台");//处理url中的特殊字符try {//调用发送的方法String result = sendMsgToWechat(xunXiWxid, XIAOTANGYUAN_REBOT_TEXT, XIAOTANGYUAN_REBOT_APPKEY, sb.toString(),false,new JSONArray());log.info("发送天气信息结果:" + result);} catch (Exception e) {e.printStackTrace();}}

三、获取群、好友以及公众号列表

  • 请求方式:get

  • 接口地址:{apiUrl}/system/apiMxxWechatBot/getGandFList?appkey=xxxx&tag=2&pageNum=1&pageSize=10

  • 参数:appkey:你的appkey,tag:0-好友 1-群聊 2-公众号,pageNum:当前页,pageSize:页大小

  • 响应内容:

  {"total": 54,      //总数量"rows": [{"createBy": null,    "createTime": null,"updateBy": null,"updateTime": null,"remark": null,      //备注"id": 1741790943530897408,  "name": null,"wxid": "xxxxx@chatroom","wxnum": null,"nick": "mxxWechatBot交流群",    //群名"v3": "","v4": null,"sign": "","country": "","province": "","city": "","momentsbackgroudimgurl": null,"avatarminurl": null,"avatarmaxurl": null,"sex": "","membernum": null,"type": 2,"userId": 123}],"code": 200,"msg": "查询成功"
}
  • 示例代码:
 /*** 获取群聊列表*/public void getList(){String url = WECHAT_SERVE_API + "/system/apiMxxWechatBot/getGandFList?appkey=1998090800300000&tag=2&pageNum=1&pageSize=10";String body = HttpUtil.createGet(url).execute().body();log.info("请求获取服务端的token:{}",body);JSONObject jsonObject = JSON.parseObject(body);String token  = "";if(jsonObject.getInteger("code") == 200){//处理业务即可}}

今天的分享就到这里,有疑问的可以在群内交流沟通。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/315695.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

栅极驱动 IC 自举电路的设计与应用

硬件工程师应该都用过buck,一些buck芯片会有类似下面的自举电容,有时还会串联一个电阻。 那么你是否对这个自举电路有深入的了解呢?比如,这个电容的容值大小该怎么选?大了或者小了会影响什么?耐压要求是怎么…

Prometheus+Grafana(详细讲解)

Prometheus(普罗米修斯)监控系统 1、Prometheus概述 1.1 任务背景 某公司由于业务快速发展,公司要求对现有机器进行业务监控,责成运维部门来实施这个任务。任务要求如下: 部署监控服务器,实现7x24实时监控 针对公司…

达梦数据库报错 执行失败(语句1) -2111: 第1 行附近出现错误: 无效的列名[system]

[TOC](达梦数据库报错 执行失败(语句1) -2111: 第1 行附近出现错误: 无效的列名[system]) 1、报错现象 执行下列sql语句 UPDATE "TEST"."TEST_1" SET "TEST_1"."SALT"123456 where "TEST_1"."ID""system&…

c++_STL容器总结

STL容器总结 1.STL的基本概念1.2STL的六大组件 2.string类2.1string的基本概念2.2string容器常用操作 3.vector容器3.1vector容器基本概述 4.deque容器4.1deque容器的基本概念4.2deque容器的实现原理4.3deque常用API 5. stack容器5.2stack常用API 6.queue容器6.1 queue 容器基本…

OSCHINA Gitee 联合呈现,《2023 中国开源开发者报告》正式发布,总结分非常帮,可以免费看的报告!

《2023 中国开源开发者报告》 详细地址: https://talk.gitee.com/report/china-open-source-2023-annual-report.pdf 不需要收费下载!! 其中大模型的部分总结的非常棒 gietee 也支持 AI 模型托管了 如何在 Gitee 上托管 AI 模型 https://…

【LLM+RS】LLM在推荐系统的实践应用(华为诺亚)

note LLM用于推荐主要还是解决推荐系统加入open domain 的知识。可以基于具体推荐场景数据做SFT。学习华为诺亚-技术分享-LLM在推荐系统的实践应用。 文章目录 note一、背景和问题二、推荐系统中哪里使用LLM1. 特征工程2. 特征编码3. 打分排序 三、推荐系统中如何使用LLM四、挑…

Python爬虫---selenium基本使用(支持无界面浏览器PhantomJS和Chrome handless)

为什么使用selenium? 使用urllib.request.urlopen()模拟浏览器有时候获取不到数据,所以使用selenium (1) selenium是一个用于web应用程序测试的工具 (2) selenium 测试直接运行在浏览器中,就像真正的用户在操作一样 (3) 支持通过各种driver (FirfoxDri…

java:5-2switch基本语法

文章目录 1. switch1.1 基本语法1.2 流程图1.3 快速入门1.4 switch使用细节1.5 练习1.6 switch和if的比较 1. switch 1.1 基本语法 【6点注意】 switch 关键字,表示swtich分支表达式(一定会有个值返回)case 常量1:当表达式的值等于常量1&am…

kafka使用zookeeper完成集群搭建

本次搭建使用的是Kafka3.6.1,zookeeper3.9.1。 1、zookeeper集群安装 zookeeper下载:Apache Download Mirrors 1.1、zookeeper解压修改配置文件名 # 1、解压到指定目录 tar -zxvf apache-zookeeper-3.9.1-bin.tar.gz -C /opt/software # 2、需改配置…

Vue3复习笔记

目录 挂载全局属性和方法 v-bind一次绑定多个值 v-bind用在样式中 Vue指令绑定值 Vue指令绑定属性 动态属性的约束 Dom更新时机 ”可写的“计算属性 v-if与v-for不建议同时使用 v-for遍历对象 数组变化检测 事件修饰符 v-model用在表单类标签上 v-model还可以绑定…

Unity Window安装包制作

Unity Window安装包制作 介绍一、RAR自解压方式1、找到Unity打包的可执行程序2.创建自解压文件3.配置设置4、最后点击确定等待压缩完成即可(默认生成位置为你选中文件右键点击添加到压缩文件时的路径) 二、Setup Factory工具安装制作Window安装包相关常用…

【VSCode】关闭双击shift出现搜索

原因 有时候总是手滑按两下shift,每次都会弹出如下图的搜索框,导致很不方便 解决办法 找到该文件 C:\Users\admin\.vscode\extensions\k--kato.intellij-idea-keybindings-1.5.12\package.json(admin是自己的用户名) 然后关键字…