npm package: @neuit/wecom
Description: 用于管理企业微信的Node.js接口库
Author: 宁波诺幺信息技术有限公司
Latest version: 1.0.20

# @neuit/wecom

企业微信 Node.js SDK，用于对接企业微信的各种接口。

## 目录

- [安装](#安装)
- [配置](#配置)
  - [通过配置文件](#通过配置文件)
  - [直接传参使用](#直接传参使用)
- [功能清单](#功能清单)
  - [基础](#基础)
  - [连接微信](#连接微信)
  - [办公](#办公)
- [许可证](#许可证)

## 安装

```bash
npm install @neuit/wecom
```

## 配置

该库支持多种方式配置：

### 通过配置文件

在项目根目录创建 `.neuit.config.json` 文件：

```json
{
  "corpid": "YOUR_CORPID",
  "agent_secret": "YOUR_AGENT_SECRET",
  "concat_secret": "YOUR_CONCAT_SECRET",
  "cache_mode": "file"  // 可选，默认为 file
}
```

### 直接传参使用

```javascript
const { setConfig } = require("@neuit/wecom");

const config = {
  corpid: "YOUR_CORPID",
  agent_secret: "YOUR_AGENT_SECRET",
  concat_secret: "YOUR_CONCAT_SECRET",
  cache_mode: "file"
};

setConfig(config);
```

## 功能清单

### 基础
 - [x] 通讯录管理
   - [x] [成员管理](/docs/Concats.User.md)
     - [x] 创建成员
     - [x] 读取成员
     - [x] 更新成员
     - [x] 删除成员
     - [x] 批量删除成员
     - [x] 获取部门成员
     - [x] 获取部门成员详情
     - [x] userid与openid互换
     - [x] 手机号获取userid
     - [x] 邮箱获取userid
     - [x] 获取成员ID列表
   - [x] [部门管理](/docs/Concats.Department.md)
     - [x] 创建部门
     - [x] 更新部门
     - [x] 删除部门
     - [x] 获取部门列表
     - [x] 获取子部门ID列表
     - [x] 获取单个部门详情
   - [x] [标签管理](/docs/Concats.Tag.md)
     - [x] 创建标签
     - [x] 更新标签名字
     - [x] 删除标签
     - [x] 获取标签成员
     - [x] 增加标签成员
     - [x] 删除标签成员
     - [x] 获取标签列表
 - [x] 身份验证
   - [x] [网页授权登录](/docs/Authorize.Webauth.md)
     - [x] 开始开发
     - [x] 构造网页授权链接
     - [x] 获取访问用户身份
     - [x] 获取访问用户敏感信息
   - [x] [企业微信Web登录](/docs/Authorize.Weblogin.md)
     - [x] 开始开发
     - [x] Web登录组件
     - [x] 获取用户登录身份
   - [x] [二次验证](/docs/Authorize.Authsucc.md)
     - [x] 概述
     - [x] 获取用户二次验证信息
     - [x] 登录二次验证
     - [x] 使用二次验证
    - [x] [异步导入接口](/docs/Concats.Asyncimport.md)
      - [x] 增量更新成员
      - [x] 全量覆盖成员
      - [x] 全量覆盖部门
      - [x] 获取异步任务结果、
    - [x] [异步导出接口](/docs/Concats.Asyncoutport.md)
      - [x] 导出成员
      - [x] 导出成员详情
      - [x] 导出部门
      - [x] 导出标签成员
      - [x] 获取导出结果
      - [x] 导出任务完成通知
    - [x] [通讯录回调通知](/docs/Callback.Concats.md)
      - [x] 成员变更通知
      - [x] 部门变更通知
      - [x] 标签变更通知
      - [x] 异步任务完成通知
 - [ ] 企业互联
   - [ ] 概述
   - [ ] 获取应用共享信息
   - [ ] 获取下级/下游企业的access_token
   - [ ] 获取下级/下游企业小程序session
 - [ ] 上下游
   - [ ] 基础接口
     - [ ] 获取应用共享信息
     - [ ] 获取下级/下游企业的access_token
     - [ ] 获取下级/下游企业小程序session
     - [ ] 上下游关联客户信息-已添加客户
     - [ ] 上下游关联客户信息-未添加客户
   - [ ] 上下游通讯录管理
     - [ ] 获取上下游信息
     - [ ] 批量导入上下游联系人
     - [ ] 获取异步任务结果
     - [ ] 移除企业
     - [ ] 查询成员自定义id
     - [ ] 获取下级企业加入的上下游
   - [ ] 上下游规则
     - [ ] 获取对接规则id列表
     - [ ] 删除对接规则
     - [ ] 获取对接规则详情
     - [ ] 新增对接规则
     - [ ] 更新对接规则
   - [ ] 回调事件
     - [ ] 上下游变更回调
     - [ ] 异步任务完成通知
 - [ ] 安全管理
   - [ ] 文件防泄漏
   - [ ] 设备管理
   - [ ] 截屏/录屏管理
   - [ ] 高级功能账号管理
     - [ ] 分配高级功能账号
     - [ ] 取消高级功能账号
     - [ ] 获取高级功能账号列表
   - [ ] 操作日志
     - [ ] 获取成员操作记录
     - [ ] 获取管理端操作日志
   - [ ] 获取企业微信域名IP信息
   - [ ] 回调通知
 - [ ] 消息推送
   - [ ] 发送应用消息
   - [ ] 更新模版卡片消息
   - [ ] 撤回应用消息
   - [ ] 接收消息与事件
     - [ ] 消息格式
     - [ ] 事件格式
     - [ ] 被动回复消息格式
   - [ ] 应用发送消息到群聊会话
     - [ ] 创建群聊会话
     - [ ] 修改群聊会话
     - [ ] 获取群聊会话
     - [ ] 应用推送消息
   - [ ] 家校消息推送
     - [ ] 发送「学校通知」
   - [ ] 群机器人
     - [ ] 群机器人配置说明
 - [ ] 应用管理
   - [ ] 获取应用
   - [ ] 设置应用
   - [ ] 自定义菜单
     - [ ] 创建菜单
     - [ ] 获取菜单
     - [ ] 删除菜单
   - [ ] 设置工作台自定义展示
 - [ ] 素材管理
   - [ ] 上传临时素材
   - [ ] 上传图片
   - [ ] 获取临时素材
   - [ ] 获取高清语音素材
   - [ ] 异步上传临时素材
 - [ ] 电子发票
   - [ ] 查询电子发票
   - [ ] 更新发票状态
   - [ ] 批量更新发票状态
   - [ ] 批量查询电子发票
 - [ ] 数据与智能专区
   - [ ] 概述
   - [ ] 基本概念介绍
   - [ ] 接入指引
   - [ ] 专区程序开发指引
   - [ ] 专区程序示例
   - [ ] 专区程序SDK和示例下载
   - [ ] 镜像文件配置指引
   - [ ] 会话展示组件
   - [ ] 基础接口
     - [ ] 设置公钥
     - [ ] 获取授权存档的成员列表
     - [ ] 设置专区接收回调事件
     - [ ] 会话组件敏感信息隐藏设置
     - [ ] 设置日志打印级别
     - [ ] 上传临时文件到专区
   - [ ] 应用调用专区程序
     - [ ] 概述
     - [ ] 应用同步调用专区程序
     - [ ] 应用异步调用专区程序
   - [ ] 专区程序调用sdk
     - [ ] 概述
     - [ ] 获取会话记录
     - [ ] 获取会话同意情况
     - [ ] 获取内部群信息
     - [ ] 会话名称搜索
     - [ ] 会话消息搜索
     - [ ] 员工或客户名称搜索
     - [ ] 关键词规则管理
     - [ ] 获取命中关键词规则的会话记录
     - [ ] 管理企业知识集
     - [ ] 通用模型
     - [ ] 话术推荐模型
     - [ ] 客户标签模型
     - [ ] 会话摘要模型
     - [ ] 情感分析模型
     - [ ] 自有模型分析
     - [ ] 会话反垃圾分析
     - [ ] 会话内容导出
     - [ ] 异步调用自有分析程序
     - [ ] 上报异步任务结果
     - [ ] 专区通知应用
   - [ ] 专区程序接收事件通知
     - [ ] 概述
     - [ ] 客户同意进行聊天内容存档事件回调
     - [ ] 产生会话回调通知
     - [ ] 命中关键词规则通知
     - [ ] 知识集管理回调
     - [ ] 会话内容导出完成通知
   - [ ] 应用接收专区通知
     - [ ] 应用接收专区通知
   - [ ] 专区调试模式
     - [ ] 调试说明
     - [ ] 开启专区调试模式
     - [ ] 关闭专区调试模式
     - [ ] 获取专区调试模式状态

### 连接微信
 - [ ] 客户联系
   - [ ] 企业服务人员管理
     - [ ] 获取配置了客户联系功能的成员列表
   - [ ] 客户管理
     - [ ] 获取客户列表
     - [ ] 获取客户详情
     - [ ] 批量获取客户详情
     - [ ] 修改客户备注信息
     - [ ] 客户联系规则组管理
   - [ ] 客户标签管理
     - [ ] 管理企业标签
     - [ ] 管理企业规则组下的客户标签
     - [ ] 编辑客户企业标签
   - [ ] 在职继承
     - [ ] 分配在职成员的客户
     - [ ] 查询客户接替状态
     - [ ] 分配在职成员的客户群
   - [ ] 离职继承
     - [ ] 获取待分配的离职成员列表
     - [ ] 分配离职成员的客户
     - [ ] 查询客户接替状态
     - [ ] 分配离职成员的客户群
   - [x] 客户群管理
     - [x] 获取客户群列表
     - [x] 获取客户群详情
     - [x] 客户群opengid转换
   - [x] 联系我与客户入群方式
     - [x] 客户联系「联系我」管理
     - [x] 客户群「加入群聊」管理
   - [ ] 客户朋友圈
     - [ ] 企业发表内容到客户的朋友圈
     - [ ] 停止发表企业朋友圈
     - [ ] 获取客户朋友圈全部的发表记录
     - [ ] 客户朋友圈规则组管理
   - [ ] 获客助手
     - [ ] 获客链接管理
     - [ ] 获取由获客链接添加的客户信息
     - [ ] 获客助手额度管理与使用统计
     - [ ] 提升广告有效率
     - [ ] 获取成员多次收消息详情
   - [x] 消息推送
     - [x] 创建企业群发
     - [x] 提醒成员群发
     - [x] 停止企业群发
     - [x] 获取企业的全部群发记录
     - [x] 发送新客户欢迎语
     - [x] 入群欢迎语素材管理
   - [ ] 统计管理
     - [ ] 获取「联系客户统计」数据
     - [ ] 获取「群聊数据统计」数据
   - [ ] 回调通知
   - [ ] 管理商品图册
   - [ ] 管理聊天敏感词
   - [ ] 上传附件资源
   - [ ] 获取已服务的外部联系人
 - [ ] 微信客服
   - [ ] 客服账号管理
     - [ ] 添加客服账号
     - [ ] 删除客服账号
     - [ ] 修改客服账号
     - [ ] 获取客服账号列表
     - [ ] 获取客服账号链接
   - [ ] 接待人员管理
     - [ ] 添加接待人员
     - [ ] 删除接待人员
     - [ ] 获取接待人员列表
   - [ ] 会话分配与消息收发
     - [ ] 分配客服会话
     - [ ] 接收消息和事件
     - [ ] 发送消息
     - [ ] 发送欢迎语等事件响应消息
   - [ ] 「升级服务」配置
   - [ ] 其他基础信息获取
     - [ ] 获取客户基础信息
   - [ ] 统计管理
     - [ ] 获取「客户数据统计」企业汇总数据
     - [ ] 获取「客户数据统计」接待人员明细数据
   - [ ] 机器人管理
     - [ ] 知识库分组管理
     - [ ] 知识库问答管理
   - [ ] 回调通知
 - [ ] 企业支付
   - [ ] 企业红包
     - [ ] 发放企业红包
     - [ ] 查询红包记录
   - [ ] 向员工付款
     - [ ] 向员工付款
     - [ ] 查询付款记录
   - [ ] 向员工收款
   - [ ] 对外收款
     - [ ] 收款商户号管理
     - [ ] 获取对外收款记录
     - [ ] 获取收款项目的商户单号
     - [ ] 获取资金流水
   - [ ] 创建对外收款账户
     - [ ] 提交创建对外收款账户的申请单
     - [ ] 查询申请单状态
     - [ ] 提交图片
 - [ ] 小程序接入对外收款
   - [ ] 普通支付
     - [ ] 小程序下单
     - [ ] 查询订单
     - [ ] 关闭订单
     - [ ] 获取支付签名
   - [ ] 退款
     - [ ] 申请退款
     - [ ] 查询退款
   - [ ] 回调通知
     - [ ] 支付通知
     - [ ] 退款通知
   - [ ] 账单
     - [ ] 交易账单申请
 - [ ] 会话内容存档
   - [ ] 使用前帮助
   - [ ] 获取会话内容
   - [ ] 开发案例演示
   - [ ] 常见问题解答
   - [ ] 获取会话内容存档开启成员列表
   - [ ] 获取会话同意情况
   - [ ] 客户同意进行聊天内容存档事件回调
   - [ ] 获取会话内容存档内部群信息
   - [ ] 产生会话回调事件
 - [ ] 家校沟通
   - [ ] 基础接口
     - [ ] 获取「学校通知」二维码
     - [ ] 管理「学校通知」的关注模式
     - [ ] 发送「学校通知」
     - [ ] 管理「班级群创建方式」
     - [ ] 外部联系人openid转换
     - [ ] 获取可使用的家长范围
   - [ ] 网页授权登录
     - [ ] 开始开发
     - [ ] 构造网页授权链接
     - [ ] 获取访问用户身份
     - [ ] 获取家校访问用户身份
   - [ ] 学生与家长管理
   - [ ] 部门管理
   - [ ] 家校通讯录变更回调
 - [ ] 家校应用
   - [ ] 健康上报
   - [ ] 上课直播
   - [ ] 班级收款
 - [ ] 政民沟通
   - [ ] 配置网格结构
   - [ ] 配置事件类别
   - [ ] 巡查上报
   - [ ] 居民上报

### 办公
 - [ ] 邮件
   - [ ] 发送邮件
   - [ ] 获取接收的邮件
   - [ ] 管理应用邮箱账号
   - [ ] 管理邮件群组
   - [ ] 管理公共邮箱
   - [ ] 高级功能账号管理
   - [ ] 禁用/启用邮箱账号
   - [ ] 其他邮件客户端登录设置
   - [ ] 获取邮件未读数
   - [ ] 回调通知
 - [ ] 文档
   - [ ] 管理文档
   - [ ] 编辑文档
   - [ ] 编辑智能表格内容
   - [ ] 获取文档数据
   - [ ] 获取智能表格数据
   - [ ] 设置文档权限
   - [ ] 管理收集表
   - [ ] 回调通知
   - [ ] 高级功能账号管理
   - [ ] 素材管理
 - [ ] 日程
   - [ ] 管理日历
   - [ ] 管理日程
   - [ ] 回调通知
 - [ ] 会议
   - [ ] 预约会议基础管理
   - [ ] 会议统计管理
   - [ ] 预约会议高级管理
   - [ ] 会中控制管理
   - [ ] 网络研讨会 (Webinar) 管理
   - [ ] 电话入会（PSTN）管理
   - [ ] Rooms会议室管理
   - [ ] 会议室连接器（MRA）管理
   - [ ] 会议布局和背景管理
   - [ ] 录制管理
   - [ ] 高级功能账号管理
   - [ ] 回调通知
 - [ ] 微盘
   - [ ] 管理空间
   - [ ] 管理空间权限
   - [ ] 管理文件
   - [ ] 管理文件权限
   - [ ] 回调通知
   - [ ] 高级功能账号管理
   - [ ] 版本和容量管理
 - [ ] 直播
   - [ ] 创建预约直播
   - [ ] 修改预约直播
   - [ ] 取消预约直播
   - [ ] 删除直播回放
   - [ ] 在微信中观看直播或直播回放
   - [ ] 获取成员直播ID列表
   - [ ] 获取直播详情
   - [ ] 获取直播观看明细
   - [ ] 直播回调事件
   - [ ] 获取跳转小程序商城的直播观众信息
 - [ ] 公费电话
   - [ ] 获取公费电话拨打记录
 - [ ] 打卡
   - [ ] 获取企业所有打卡规则
   - [ ] 获取员工打卡规则
   - [ ] 获取打卡记录数据
   - [ ] 获取打卡日报数据
   - [ ] 获取打卡月报数据
   - [ ] 获取打卡人员排班信息
   - [ ] 为打卡人员排班
   - [ ] 为打卡人员补卡
   - [ ] 添加打卡记录
   - [ ] 录入打卡人员人脸信息
   - [ ] 获取设备打卡数据
   - [ ] 管理打卡规则
 - [ ] 审批
   - [ ] 获取审批模板详情
   - [ ] 提交审批申请
   - [ ] 审批申请状态变化回调通知
   - [ ] 批量获取审批单号
   - [ ] 获取审批申请详情
   - [ ] 获取审批数据（旧）
   - [ ] 获取企业假期管理配置
   - [ ] 获取成员假期余额
   - [ ] 修改成员假期余额
   - [ ] 审批流程引擎
   - [ ] 创建审批模板
   - [ ] 更新审批模板
 - [ ] 汇报
   - [ ] 批量获取汇报记录单号
   - [ ] 获取汇报记录详情
   - [ ] 获取汇报统计数据
   - [ ] 下载微盘文件
 - [ ] 人事助手
   - [ ] 花名册
 - [ ] 会议室
   - [ ] 会议室管理
   - [ ] 会议室预定管理
   - [ ] 回调事件
 - [ ] 高级功能
   - [ ] 成员申请的提交回调
   - [ ] 成员申请的终止回调
   - [ ] 设置审批单审批信息
   - [ ] 批量获取申请单ID
   - [ ] 获取申请单详细信息
 - [ ] 紧急通知应用
   - [ ] 发起语音电话
   - [ ] 获取接听状态

## 许可证

MIT