当前位置:Gxlcms > PHP教程 > 让禅道也可以玩BearyChat

让禅道也可以玩BearyChat

时间:2021-07-01 10:21:17 帮助过:3人阅读

简单的理解,BearycChat是一种IM,是一种能聚合各种MS系统消息的东西,是团队协作过程中消息流转的利器。

我是工具控,所以不折腾不舒服。

废话不说,上码:

/path_to_zentao/module/action/ext/model/logHistory.php

dao->insert(TABLE_HISTORY)->data($change)->exec();
			
			//bearychat notice
			$this->notifyBearychat($actionID, $change['new']);
        }
    }
	
	protected function notifyBearychat($actionID, $text) {
		$action = $this->dao->select('*')->from(TABLE_ACTION)
            ->where('id')->eq($actionID)
            ->fetch();
		
		$_actions = $this->loadModel('action')->transformActions(array($action));
		$action = $_actions[0];
		
		$title = strip_tags(sprintf("%s, %s %s %s %s %s。", $action->date, $action->actor, $action->actionLabel, $action->objectLabel, $action->objectName, 'http://'.(isset($_SERVER['HTTP_X_FORWARDED_HOST']) ? $_SERVER['HTTP_X_FORWARDED_HOST'] : (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '')) . $action->objectLink));
		
		return $this->curlPostPayload2Bearychat($title, $text);//, 'project-' . $action->project . ''
	}
	
	protected function curlPostPayload2Bearychat($title, $text, $channel = 'pms') {
		
		$url = 'https://hook.bearychat.com/your_self_params';//简单的定义于此
		
		$str = array('payload' => json_encode(array('text' => $title, 'markdown' => true, 'channel' => $channel, 'attachments' => array(array('text' => strip_tags($text))))));//
		$ch = curl_init();
		curl_setopt($ch, CURLOPT_URL, $url);
		curl_setopt($ch, CURLOPT_POST, 1);
		curl_setopt($ch, CURLOPT_POSTFIELDS, $str);
		
		if (substr($url, 0, 8) == "https://")
		{
			$opt[CURLOPT_SSL_VERIFYHOST] = 1;
			$opt[CURLOPT_SSL_VERIFYPEER] = FALSE;
		}
		curl_setopt_array($ch, $opt);
		curl_exec($ch);
		curl_close($ch);
	}

以上就介绍了让禅道也可以玩BearyChat,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行