准备工作:
在企业微信创建自建应用。
1、登录企业微信后台,在“应用管理>自建”中点击“创建应用”,填写应用信息创建。
图片
API配置表参数值获取1、corpid:企业ID。在企业微信后台的“我的企业>企业信息”中获取。
图片

2、corpsecret:应用凭证密匙。在自建应用详情中获取。
图片
如果要使用通讯录相关API则corpsecret在“管理工具>通讯录同步”中获取。
图片
3、AesKey及token:加密的AES KEY和消息token。
如果是接收外部联系人变更回调等事件信息,则在“自建应用详情>接收消息>设置API接收”中获取。
图片

图片
如果是接收通讯录相关回调事件信息,则在“管理工具>通讯录同步>设置接收事件服务器”中获取。
图片

图片

图片

云函数使用
登录白码低代码平台:https://www.bnocode.com
1、根据企业微信API模板创建云函数
图片
2、参照上文填写配置参数。
图片
3、在编程中编写API。可使用$modules.wcworkApi调用部分已封装API,使用$output输出。
图片
鼠标移入可查看API说明。
图片
4、保存测试。
编写完成后,点击右上方的保存按钮保存代码,并将此云函数开启。
图片

在编程下方展开在线调试工具,点击测试,查看运行结果。
图片
5、在功能中调用云函数。
确保云函数无误开启后,在功能中创建API步骤,选择“自定义API”,在选择对应云函数加以调用。
图片

Webhook使用
1、以与云函数类似的方式创建webhook,并配置相关参数。
图片
2、按照以下格式编写代码
async function hook($req, $resp, $modules = modules) {

//get 请求用于验证有效性

if ($req.method == "GET") {

//处理已封装,可直接调用

    $resp.body = await modules.wxworkApi.getVerifyMsg($req);

} else if ($req.method == "POST") {

    //无法保证在五秒内处理完成,先回复(企业微信服务器在五秒内收不到响应会断掉连接)

    $resp.body = "success";

    //处理

    let handle = async () => {

        //将数据转换成json

        let data = await modules.wxworkApi.getMsgData($req);

        if (data.Event == "change_contact" && data.ChangeType == "create_party") { 

            //TODO 处理添加部门事件

        }

    }

    handle();

}

}

3、保存代码,复制webhook路径。
图片
4、在企业微信后台的消息回调配置中(自建应用的API接收消息或通讯录同步中的接收消息服务器设置)将复制的webhook路径粘贴到url中,保存时将验证有效性。
图片
5、在浏览器中直接打开webhook路径应显示“ok”,使用企业微信做相关操作触发回调以检测webhook处理结果。
图片


科技事儿哥
10 声望0 粉丝