博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
YII 钉钉接口 实时 报告
阅读量:5920 次
发布时间:2019-06-19

本文共 2251 字,大约阅读时间需要 7 分钟。

实现需求之前:先准备好钉钉软件  --->  在钉钉里面创建技术群  --> 设置里面有个 机器人什么的, 把它打开。 然后按照流程配置,这个可以百度,完事了,会有个链接, 算是一个接口吧。这个链接是独一无二的。

https://oapi.dingtalk.com/robot/send?access_token=********************************** 项目中找到 钉钉 的类 我的是在 commen\tools\DingNotify 然后 写方法,目的在于这个方法,放在某个功能下面,如果程序跑到该功能的部分了,就会触发钉钉报告,机器人会根据数据,自动在群里发信息,说发生了什么事。 我这里写的是用户举报的提醒。 如果用户举报了什么东西,钉钉群里就会自动通知。
public static function Report($title,$text) {
//$_SERVER['HTTP_HOST'] 当前请求的 Host: 头部的内容 。 // 这里只有用户在 http://v2.admin.haiwaiuni.com 举报时才提醒
if($_SERVER['HTTP_HOST'] ==  'http://v2.admin.haiwaiuni.com')  {    try {
$webHook = \Yii::$app->params['ding-notify-url']['Report']; $client = new Client();i //下面有颜色的这个格式是钉钉手册里面的。直接看手册,需要什么数据,拿来改巴改巴就行 $response = $client->request("POST", $webHook, [ 'json' => [ "actionCard" => [ "title" => $title, "text" => $text, "hideAvatar" => "0", "btnOrientation" => 0, "singleTitle" => "请点击打开举报页面,查看详情", "singleURL" => "http://v2.admin.test1.ukwelife.com" // 该网址就是钉钉报的信息,你点击它就会进到相应页面 ], "msgtype" => "actionCard" ] ]); return true; } catch (\Exception $e) {
\Yii::error($e); // 出错的话,可以在这里var_dump($e->getMessage) 查看错误是因为什么产生的 return false; } } } 因为用户举报需要点击举报按钮吧? 然后找到该按钮的接口, 把该方法写在接口方法里去调用。
这个函数就是举报接口下面的,那么在该方法下面调用钉钉提醒 public function actionReportCreate() {
...... // 巴拉巴拉连接数据库取了一堆举报的 内容的相关数据 .... //
DingNotify::Report(     "有用户举报",   // 对应上面的 $title     "                     // 下面的对应上面的$test           举报原因 :$data[reason]           举报说明 :$data[content]             话题文字 :$data[topic]        "     );
} 程序到这里还没完,你运行会报错, 说是方法Report没定义, 为啥会这样 ? 因为你还没配置好呢
$webHook = \Yii::$app->params['ding-notify-url']['Report'];  没有配置 ding-notify-url 呀,数组不是瞎写的。 应该在 ding-notify-url 下面把Report配置进去,  我的配置文件在commen\config\params.php里面。  找到    return[
'ding-notify-url' => [          // 在这里面加入
'Report' => 'https://oapi.dingtalk.com/robot/send?access_token=**********************************'  //这个链接 就是文章开头写的
],
];
好了,这样只要用户举报, 钉钉就可以自动在群里提醒了,
 

转载于:https://www.cnblogs.com/wangshuazi/p/9649349.html

你可能感兴趣的文章
python MySQLdb安装和使用
查看>>
总结thinkphp快捷查询getBy、getField、getFieldBy用法及场景
查看>>
无线路由器使用交换机模式上网不稳定
查看>>
poj 1789 Truck History
查看>>
java synchronized详解
查看>>
Java小细节
查看>>
poj - 1860 Currency Exchange
查看>>
【JS学习】慕课网8-17编程练习 网页的返回与跳转
查看>>
chgrp命令
查看>>
Java集合框架GS Collections具体解释
查看>>
为什么要在下班后努力学习?你不知道的秘密...... ...
查看>>
洛谷 P2486 BZOJ 2243 [SDOI2011]染色
查看>>
Spring Cloud 2.x系列之整合rocketMQ
查看>>
答疑解惑:Linux与Windows的那些事儿(2)
查看>>
Java的Socket网络编程以及多线程
查看>>
百万连接之路
查看>>
关于传输自环导致中兴2826交换机无法网管的故障案例
查看>>
Fsutil文件的具体用法
查看>>
linux 笔记本的温度提示
查看>>
【转载】nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题解决
查看>>