PHPackages                             huo-zi/work-wechat-robot - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. huo-zi/work-wechat-robot

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

huo-zi/work-wechat-robot
========================

企业微信机器人sdk

3.0.0(3y ago)52.7k↓90%2MITPHPPHP &gt;=8.0

Since Dec 8Pushed 3y ago1 watchersCompare

[ Source](https://github.com/huozi1024/work-wechat-robot)[ Packagist](https://packagist.org/packages/huo-zi/work-wechat-robot)[ Docs](https://github.com/huozi1024/work-wechat-robot)[ RSS](/packages/huo-zi-work-wechat-robot/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (8)Dependencies (3)Versions (10)Used By (0)

work-wechat-robot
=================

[](#work-wechat-robot)

企业微信机器人sdk

### 0.安装

[](#0安装)

```
composer require huo-zi/work-wechat-robot

```

php &lt; 8 || laravel &lt; 9

```
composer require huo-zi/work-wechat-robot:~2.0

```

### 1.使用

[](#1使用)

#### 1.1 直接使用

[](#11-直接使用)

```
$robot = new WorkWechatRobot($robotKey);
$robot->text($content); // 文本消息
$robot->markdown($content); // markdown消息
$robot->image($filename); // 图片消息 支持本地图片和网络图片
$robot->news($title, $url, $desc, $picurl); // 图文消息
$robot->file($filename); // 发送上传文件
```

#### 1.2 v2.1.0之后支持创建消息对象发送消息：

[](#12-v210之后支持创建消息对象发送消息)

```
$messsage = new Text();     // new Markdwon(); new Image()...
$messsage->content('文本消息');
$messsage->send($robotKey); // 或使用 $robot->message($messsage);
```

### 2.作为Monolog的通道使用

[](#2作为monolog的通道使用)

#### 2.1 配置通道

[](#21-配置通道)

- laravel框架 在配置文件`logging.php`的`channels`数组中增加：

```
'wxwork_robot' => [
    'driver' => 'monolog',
    'level' => 'notice',
    'handler' => \Huozi\WorkWechat\Monolog\Handler\RobotHandler::class,
    'handler_with' => [
        'robotKey' => 'your_wxwork_robot_key',
    ],
],
```

然后修改`channels`节点`stack`，在`channels`中增加`wxwork_robot`

```
'stack' => [
    'driver' => 'stack',
    'channels' => ['single', ... , 'wxwork_robot'],
    'ignore_exceptions' => false,
],
```

详见[laravel高度自定义Monolog通道](https://learnku.com/docs/laravel/8.x/logging/9376#advanced-monolog-channel-customization)

- 其他框架

```
$logger = new \Monolog\Logger($name);
$logger->pushHandler(new RobotHandler($robotKey));
```

#### 2.2 日志格式化

[](#22-日志格式化)

提供了`TextFormatter`和`MarkdownFormatter`格式化原始日志，使日志内容方便阅读

- laravel框架,修改`logging.php`, 增加`formatter`：

```
'wxwork_robot' => [
    'driver' => 'monolog',
    'level' => 'notice',
    'handler' => \Huozi\WorkWechat\Monolog\Handler\RobotHandler::class,
    'handler_with' => [
        'robotKey' => 'your_wxwork_robot_key',
    ],
    'formatter' => \Huozi\WorkWechat\Monolog\Formatter\MarkdownFormatter::class,```
 ],
```

`TextFormatter`和`MarkdownFormatter`都提供了默认的格式化结构，如果需要自定义可以：

```
    'formatter' => \Huozi\WorkWechat\Monolog\Formatter\TextFormatter::class,
    'formatter_with' => [
        'messageFormat' => '{level_name}:{message} \n {extra.file}:{extra.line}'
    ]
```

- 其他框架

```
$messageFormat = '{level_name}:{message} \n {extra.file}:{extra.line}';
$formatter = new TextFormatter($messageFormat);
$logger->pushHandler((new RobotHandler($robotKey))->setFormatter($formatter));
```

License
-------

[](#license)

Licensed under [The MIT License (MIT)](LICENSE).

###  Health Score

33

—

LowBetter than 72% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 57.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~77 days

Recently: every ~66 days

Total

9

Last Release

1408d ago

Major Versions

v1.0.0 → v2.0.02021-05-19

2.x-dev → 3.0.02022-08-18

### Community

Maintainers

![](https://www.gravatar.com/avatar/cb8ac0021d21020fe5751b4a51a0b1f7761824aa0335acdcf86873ca634fcde0?d=identicon)[huozi](/maintainers/huozi)

---

Top Contributors

[![huozi1024](https://avatars.githubusercontent.com/u/46558793?v=4)](https://github.com/huozi1024 "huozi1024 (30 commits)")[![lio990527](https://avatars.githubusercontent.com/u/7800865?v=4)](https://github.com/lio990527 "lio990527 (22 commits)")

---

Tags

monologmonolog-handlerrobotwechat-robotwxworkmonologrobotmonolog handlerWxWork

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/huo-zi-work-wechat-robot/health.svg)

```
[![Health](https://phpackages.com/badges/huo-zi-work-wechat-robot/health.svg)](https://phpackages.com/packages/huo-zi-work-wechat-robot)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M2.9k](/packages/craftcms-cms)[tempest/framework

The PHP framework that gets out of your way.

2.2k31.1k12](/packages/tempest-framework)[spatie/flare-client-php

Send PHP errors to Flare

177156.9M21](/packages/spatie-flare-client-php)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9317.2k55](/packages/open-dxp-opendxp)[eslazarev/wildberries-sdk

Wildberries OpenAPI clients (generated).

252.5k](/packages/eslazarev-wildberries-sdk)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
