禪道消息通知增加企業微信機器人WebHook支持 11.6.5版本


zentao12.5版本后已集成企業微信webhook

前段時間企業微信上線了機器人功能,支持WebHook協議進行消息推送。因為我們團隊一直使用禪道進行任務管理,所以在第一時間將企業微信的支持添加到了禪道中。

准備

首先我們要安裝一個禪道,版本不限,我是從最新版進行修改的。防止修改出現問題,在修改前備份以下目錄:

F:\xampp\zentao\module\webhook

zentaopms/module/webhook

養成修改前備份的好習慣:)

 動手

本次修改只需修改webhook目錄中的文件即可,我們先在model.php中增加對企業微信的支持,添加如下代碼:

    /**
     * Get hook data for WorkWx.
     *
     * @param  string $title
     * @param  string $text
     * @param  string $mobile
     * @access public
     * @return object
     */
    public function getWorkWxData($title, $text, $mobile, $user, $viewLink)
    {
        if($user) $text .= "\n>@{$user}";
        $data = new stdclass();
        $data->msgtype  = 'markdown';

        $markdown = new stdclass();
        $markdown->content = "{$text}";

        if($mobile)
        {
            $markdown->mentioned_mobile_list = array($mobile);
        }

        $data->markdown = $markdown;

        return $data;
    }

 

然后再在發送的地方增加該類型的支持:

if($webhook->type == 'dingding')
{
    $data = $this->getDingdingData($title, $text, $mobile, $targetName, $viewLink);
}
elseif($webhook->type == 'bearychat')
{
    $data = $this->getBearychatData($text, $mobile, $email, $objectType, $objectID);
}
elseif($webhook->type == 'workwx')
{
    //增加企業微信支持
    $data = $this->getWorkWxData($title, $text, $mobile, $targetName, $viewLink);
}

 

 

好,添加以上代碼之后我們的企業微信支持已經完成了一小半了。繼續把界面中下拉值的地方進行修改。前往module/webhook/lang,找到對應系統語言,在該目錄中全局搜索“webhook->type”,參照dingding,bearychat的方式增加一個“workwx”即可。由於過程過於簡單,截圖展示:

zh_cn

 

 zh_tw

 

 

en

 

 

 


到此已經修改完畢,保存好代碼並且覆蓋webhook目錄。

配置

我們先創建一個機器人。具體步驟請參照官方文檔:群機器人配置說明創建完成后,我們得到了一個Webhook地址。

https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=46090091-7e5e-4c61-bd1c-d2accab8caxx(這個地址只用於測試)

然后我們用禪道的管理員帳號進入到”后台》通知》WebHook”界面,添加一個企業微信的WebHook,如下:

 

 

保存后即可在企業微信群中接收禪道的消息通知,很方便實用。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM