php封装实现钉钉机器人报警接口的案例

小编给大家分享一下php封装实现钉钉机器人报警接口的案例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

如何通过签名方式实现钉钉机器人报警的功能:

1、关于签名的生成:

  /**
   * 签名实现
   */
  list($s1, $s2) = explode(' ', microtime());
  $timestamp = (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);
  $secret = '****';
  $data = $timestamp . "\n" . $secret;
  $signStr = base64_encode(hash_hmac('sha256', $data, $secret,true));
  $signStr = utf8_encode(urlencode($signStr));
  $webhook = 'https://oapi.dingtalk.com/robot/send?access_token=****';
  $webhook .= "&timestamp=$timestamp&sign=$signStr";

2:使用guzzle请求接口,发送钉钉消息

  /**
   * 发送钉钉报警
   */
  $guzzleClent = new \GuzzleHttp\Client();

  $data = [
    'msgtype' => 'text',
    'text' => [
      'content' => $msg,
    ]
  ];

  $res = $guzzleClent->request('POST', $webhook,[
    'headers' => [
      'content-type' => 'application/json'
    ],
    'body' => json_encode($data),
  ]);
  $res = json_decode($res->getBody());
  var_dump($res);

以上是“php封装实现钉钉机器人报警接口的案例”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!