企业微信机器人接入.md 2.6 KB

请求URL

  • GET http://fabu.ouj.com/?r=wecom/send

参数

参数名 必选 类型 说明
biz string 机器人名称,如:通用业务告警、发布器广告、智能鞋、页游、坦克盒子
time int 当期秒级时间戳
payload string 消息体JSON串,同企业微信机器人的请求结构一致
sign string 签名:md5(biz + time + payload + 密钥)

返回示例

未固定结构,不要使用

机器人接入管理

http://fabu.ouj.com/?r=wecom/index

相关文档

https://developer.work.weixin.qq.com/document/path/91770
https://developer.work.weixin.qq.com/tutorial/detail/54

PHP代码

    /**
     * 发送告警到企业微信机器人
     * 文档:
     *      https://developer.work.weixin.qq.com/document/path/91770
     *      https://developer.work.weixin.qq.com/tutorial/detail/54
     * 
     * @param array $payload 数据同企业微信机器人的请求结构相似.
     *      这里用php array输入,来体现JSON结构。
     *      对企业微信的数据请求结构作轻微精简,去掉msgtype。
     *      例如企业微信请求结构为:
                {
                    "msgtype": "text",
                    "text": {
                        "content": "佛教第四哦发就的是",
                        "mentioned_list":["wangqing","@all"],
                        "mentioned_mobile_list":["13800001111","@all"]
                    }
                }
     *      则这里的请求结构为:
                [
                    'content' => '佛教第四哦发就的是',
                    'mentioned_list => ['wangqing', '@all'],
                    'mentioned_mobile_list' => ['13800001111','@all']
                ]
     * @param string $msgtype 默认为文本(text),其他选项有:markdown、image、news、file、template_card
     * @param string $biz 机器人名称,如:通用业务告警、发布器广告、智能鞋、页游、坦克盒子
     */
    public static function notifyToWecom(array $payload, $msgtype='text', $biz='通用业务告警'){
        $api = 'http://fabu.ouj.com/index.php?r=wecom/send';
        $secret = 'fj@d$S89Y/fu-9fD89sD3#&*F9_f';
        $payload = [
            'msgtype' => $msgtype,
            $msgtype => $payload ?: [],
        ];
        $p = [
            'biz' => $biz,
            'time' => time(),
            'payload' => json_encode($payload),
        ];
        $p['sign'] = md5($p['biz'].$p['time'].$p['payload'].$secret);
        (new dwHttp)->post($api, $p);
    }