Skip to content

Andiedie/wechat-inform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wechat-inform

利用微信测试号进行自定义消息的通知

使用

1. 安装

npm i -S wechat-inform

2. 基本使用

const wi = require('wechat-inform')(
  appid: 'YOUR_APPID',
  appsecret: 'YOUR_APPSECRET',
  template_id: 'TEMPLATE_ID'
);

wi.send();

运行以上代码即可向测试号的所有关注者发送template_id的内容

API

initial

初始化模块需要提供测试号的appid, appsecret

const wi = require('wechat-inform')(
  appid: 'YOUR_APPID',
  appsecret: 'YOUR_APPSECRET'
);

template_id是可选的, 作为发送模板消息时的默认值.

const wi = require('wechat-inform')(
  appid: 'YOUR_APPID',
  appsecret: 'YOUR_APPSECRET',
  template_id: 'TEMPLATE_ID'
);

wi.send(option)

发送模板消息

  • option.template_id <string> default=初始化时的template_id 模板需要在测试号页面手动添加
  • option.url <string> 用户点击模板消息时跳转的链接
  • option.data 定义模板中参数的值和颜色
  • option.touser 指定发送用户的OPENID,如果不提供,则默认向全部用户发送
wi.send({
  template_id: 'TEMPLATE ID',
  url: 'http://example.com',
  data: {
    param1: {
      value: '参数名为param1的值'
      color: '#e6db74'
    },
    param2: {
      value: '参数名为param2的值'
    }
  }
});

wi.getAccessToken(force)

获取测试号的access_token

  • force <boolean> default =false 是否强制更新
  • Returns: <Promise <access_token>>

access_token可用于调用微信的其他测试号API, 有效时间为两个小时. 模块会自动在失效时更新, 确保通过此方法拿到的access_token是可用的.

wi.getAccessToken()
  .then(access_token => {
  // do something.
  });

// or in async function
let access_token = await wi.getAccessToken();

wi.getUserList()

获取关注测试号的用户列表

  • Returns: <Promise <Array>>
wi.getUserList()
  .then(userList => {
    for (let user of userList) {
      // do something
    }
  });

// or in async function
let userList = await wi.getUserList();

如何获取测试号

1.1. 申请测试号

点击申请测试号

登陆后扫描二维码关注自己的测试号

2. 添加模板

模板可以指定任何内容

使用如下语法指定参数内容

{{参数名.DATA}}

// 例如

用户{{name.DATA}}, 你好
...内容...

3. 获取帐号信息

记录测试服务号的appID, appsecret和新增模板的template_id

About

利用微信测试号进行自定义消息通知

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published