@neuroo_fe/wechat-reply
v1.1.2
Published
微信关键字自动回复模块
Downloads
9
Readme
wechat-reply
微信关键字自动回复。
Usage
npm install @neuroo_fe/wechat-reply -S
const app = require('express')()
const wechat = require('wechat')
const Reply = require('@neuroo_fe/wechat-reply')
const options = {
rules: [
{
keywords: ['包含', '^匹配开头', '匹配结尾$', '^全匹配$', '模糊.*匹配。?'],
reply: {
type: 'text',
content: '回复内容1'
}
}
],
getAccessToken (callback) {
callback(access_token)
},
onError (err) {
console.error(err)
}
}
const reply = new Reply(options)
app.post('/wechat', wechat(config).middlewarify(), reply.middlewarify())
options 对象属性
| 名称 | 类型 | 必填 | 描述 | | -------------- | -------- | ---- | ------------------- | | appId | String | 是 | 微信公众号appId | | encodingAESKey | String | 是 | 微信公众号encodingAESKey | | token | String | 是 | 微信公众号token | | rules | Array | 否 | 规则数组 | | getAccessToken | Function | 是 | 获取微信access_token函数 | | onError | Function | 否 | 错误处理函数 |
rules
| 名称 | 类型 | 必填 | 描述 |
| -------- | ------ | ---- | --------------------------------------- |
| keywords | Array | 是 | 字符串数组。用于生成RegExp
对象,因此内容需符合RegExp
规则。 |
| reply | Object | 是 | 回复内容 |
| seq | Number | 否 | 规则优先级。值越大越靠前。 |
| name | String | 否 | 规则名称 |
reply
| 名称 | 类型 | 必填 | 描述 |
| ------- | ------ | ---- | ------------------------- |
| type | String | 是 | 回复内容的格式。支持text
、image
。 |
| content | String | 是 | 回复的内容。 |
方法
Middlewarify
导出中间件函数。
app.post('/wechat', reply.middlewarify())
updateRules
updateRules(rules)
更新规则。传入新的规则列表会完全覆盖旧的规则。
参数
const Reply = require('@neuroo_fe/wechat-reply')
const reply = new Reply()
reply.updateRules([
{
name: '新规则',
...
}
])