查看: 2336|回复: 0

[DIV/CSS] Node.JS开源:wechat-mp-hack - 微信公众平台模拟登录自动群发图文消息

发表于 2017-7-22 08:00:02
尚学堂AD
wechat-mp-hack

无需微信认证即可实现微信公众号自动群发图文消息。

使用
  1. npm i wechat-mp-hack --save
复制代码
  1. const Wechat = require('wechat-mp-hack');
  2. const API = new Wechat('公众号账号', '公众号密码');
  3. /**
  4. * @desc 登录认证二维码
  5. */
  6. API.once('scan.login', (filepath) => {
  7. // 登录二维码图片地址
  8. console.log(filepath);
  9. });
  10. /**
  11. * @desc 开启群发认证保护后需要微信扫描二维码
  12. */
  13. API.on('scan.send', (filepath) => {
  14. // 群发认证二维码地址
  15. console.log(filepath);
  16. });
  17. /**
  18. * @desc 登录公众号
  19. */
  20. API.login().then((data) => {
  21. /**
  22. * @desc 批量上传远程图片至公众号
  23. * @param imgurls{array} 远程图片地址
  24. */
  25. API.batchUpload(['http://wesbos.com/wp-content/uploads/2016/09/dead-zone.png']).then((results) => {
  26. // results[0].fileid;
  27. // results[0].cdn_url;
  28. });
  29. /**
  30. * @desc 上传单个远程图片至公众号
  31. * @param imgurl{string} 远程图片地址
  32. */
  33. API.filetransfer('http://wesbos.com/wp-content/uploads/2016/09/dead-zone.png').then((result) => {
  34. console.log(result);
  35. });
  36. /**
  37. * @desc 上传本地图片至公众号
  38. * @param filepath{string} 本地图片地址
  39. */
  40. API.localUpload('qrcode-safe.png').then((result) => {
  41. console.log(result);
  42. });
  43. /**
  44. * @desc 创建图文素材
  45. * @param news{array} 消息列表
  46. * @param news[].title{string} 文章标题
  47. * @param news[].thumb{string} 文章缩略图
  48. * @param news[].description{string} 描述信息
  49. * @param news[].html{string} 文章内容
  50. * @param news[].url{string} 原文地址
  51. */
  52. API.operate_appmsg(news).then((appMsgId) => {
  53. console.log(appMsgId);
  54. }).catch(e => {
  55. console.error(e);
  56. });
  57. /**
  58. * @desc 群发消息
  59. * @param appMsgId{string}
  60. * @param groupid{number} 分组id,可选,默认-1 所有用户
  61. */
  62. API.masssend(appMsgId).then(() => {
  63. console.log('success');
  64. }).catch(e => {
  65. console.error(e);
  66. });
  67. /**
  68. * @desc 获取公众号消息列表
  69. * @param count{number} 消息条数
  70. * @param day{number|string} 今天:0 昨天:1 前天:2 更早:3 最近5天:7 已收藏消息:star,默认:0
  71. * @return msgs{Promise<Array<Object>>}
  72. * @return msgs[].content 消息内容
  73. * @return msgs[].date_time 消息时间
  74. * @return msgs[].fakeid 用户fakeid
  75. * @return msgs[].func_flag
  76. * @return msgs[].has_reply
  77. * @return msgs[].id replyId
  78. * @return msgs[].is_vip_msg
  79. * @return msgs[].msg_status
  80. * @return msgs[].multi_item{Array}
  81. * @return msgs[].nick_name
  82. * @return msgs[].refuse_reason
  83. * @return msgs[].to_uin
  84. * @return msgs[].type
  85. * @return msgs[].wx_headimg_url 用户头像地址
  86. */
  87. API.message(1).then(msgs => {
  88. console.log(msgs);
  89. }).catch(e => console.log(e));
  90. /**
  91. * @desc 发文本消息给某个用户
  92. * @param tofakeid{string} 用户fakeid,可以在公众号后台singlesendpage页面url看到或者消息列表
  93. * @param msg{string} 消息内容
  94. * @param replyId{string} 回复消息id,可以消息列表看到,可选
  95. */
  96. API.singlesend('osl8HwPBTCsVbquNsnYbUfOQH8sM', '哈哈哈哈', 425131038).then(res => {
  97. console.log(res);
  98. }).catch(e => console.log(e));
  99. });
  100. /**
  101. * @desc 二维码解析
  102. * @param url{string} 远程图片地址/本地图片路径
  103. */
  104. API.qrdecode('qrcode-login.png').then((result) => {
  105. console.log(result.text);
  106. });
复制代码



回复

使用道具 举报