php钉钉机器人,PHP调用钉钉机器人

采用php代码调用钉钉机器人,只在工作日发送一些提醒

一、添加自定义机器人方法

您好,群主/群管理员可以在电脑端通过如下的路径添加自定义机器人:

步骤一:【电脑钉钉 】-【群聊】-【群设置】-【智能群助手】-【添加更多】-【添加机器人】-【自定义】-【添加】,编辑机器人名称和选择添加的群组。完成必要的安全设置(至少选择一种),勾选 我已阅读并同意《自定义机器人服务及免责条款》,点击“完成”即可。

步骤二:复制出机器人的Webhook地址(格式如下截图),可用于向这个群发送消息。并点击【完成】,自定义机器人就添加成功了。

【温馨提示】:

1、若关闭【仅群主和群成员可管理】,群成员也是可以添加机器人

2、出于对于群信息的安全,安全设置必须要选择一项。

3、由于目前自定义机器人需要进行安全配置,需要在电脑端添加。手机端不支持添加自定义机器人哦。

4、如果设置或者自定义机器人遇到问题可以查看下开发平台文档中心里关于机器人的介绍,更多的技术求助,可登录开发者后台(https://open-dev.dingtalk.com/)查看相关知识。开发平台文档中心:https://open.dingtalk.com/

二、代码:

/**

* 钉钉相关接口和curl接口

*/

class DingDing

{

const HOST = "https://oapi.dingtalk.com";

public static function sendTxt($token, $content, $isAtAll = true)

{

$url = self::HOST . "/robot/send?access_token=$token";

$data = array(

'msgtype' => 'text',

'text' => array( 'content' => $content ),

'at' => array(

'atMobiles' => array(),

'isAtAll' => $isAtAll,

),

);

$ret = self::reqDing($url, $data);

return $ret;

}

/**

* 发起http请求,post为true用POST方式,false为GET方式请求

*/

public static function reqDing($url, $postData, $post = true)

{

if (is_array($postData)) {

$postData = json_encode($postData);

}

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

if($post) {

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);

}

curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);

curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json;charset=utf-8' ));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

$data = curl_exec($ch);

curl_close($ch);

$data = empty($data) ? array() : json_decode($data, true);

return $data;

}

public static function getHoliday1($date = '')

{

$holidayUrl = 'http://api.k780.com/?app=life.workday&date=%s&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json';

if($date === '') {

$date = date('Ymd', time());

}

$url = sprintf($holidayUrl, $date);

$judgeHolidayRet = self::reqDing($url, []);

$worknm = $judgeHolidayRet['result']['worknm'];

if(!isset($judgeHolidayRet['result']['worknm'])) {

return false;

}

if($worknm == '工作日') {

return 'yes';

}

return 'no';

}

public static function getHoliday2($date = '')

{

$holidayUrl = 'http://timor.tech/api/holiday/info/%s';

if($date === '') {

$date = date('Y-m-d', time());

}

$url = sprintf($holidayUrl, $date);

$judgeHolidayRet = self::reqDing($url, [], false);

$worknm = $judgeHolidayRet['type']['type'];

if(!isset($judgeHolidayRet['type']['type'])) {

return false;

}

if(($worknm == 0) || ($worknm == 3)) {

return 'yes';

}

return 'no';

}

/**

* 判断当天是否为工作日

*

public static function judgeWorkDay()

{

$ret1 = self::getHoliday1();

if($ret1 == 'yes') {

return true;

} elseif($ret1 == 'no') {

return false;

}

return self::getHoliday2();

}

}

三、git地址:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值