PHPackages                             ww-site/rumaxbot - 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. [API Development](/categories/api)
4. /
5. ww-site/rumaxbot

ActiveLibrary[API Development](/categories/api)

ww-site/rumaxbot
================

RuMaxBot — интеграция Laravel 12 с API rumaxbot.ru. Artisan-команда rumaxbot:test для живой проверки, PHPUnit-тесты клиента и команды.

v1.0.1(1mo ago)00MITPHPPHP ^8.2

Since May 30Pushed 1mo agoCompare

[ Source](https://github.com/ww-site/RuMaxBot)[ Packagist](https://packagist.org/packages/ww-site/rumaxbot)[ Docs](https://github.com/ww-site/RuMaxBot)[ RSS](/packages/ww-site-rumaxbot/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (5)Versions (2)Used By (0)

RuMaxBot
========

[](#rumaxbot)

Composer-пакет для быстрого подключения **Laravel 12** к API [rumaxbot.ru](https://rumaxbot.ru/) (MAX Messenger).

Репозиторий: [github.com/ww-site/RuMaxBot](https://github.com/ww-site/RuMaxBot)

Установка
---------

[](#установка)

```
composer require ww-site/rumaxbot
```

Для локальной разработки из этого репозитория:

```
{
    "repositories": [
        {
            "type": "path",
            "url": "../COMPLETED/001_maxbot_pack"
        }
    ],
    "require": {
        "ww-site/rumaxbot": "@dev"
    }
}
```

Опубликовать конфиг (опционально):

```
php artisan vendor:publish --tag=rumaxbot-config
```

Настройка (.env)
----------------

[](#настройка-env)

```
RUMAXBOT_BASE_URL=https://rumaxbot.ru
RUMAXBOT_API_TOKEN=mbk_your_api_key_here
RUMAXBOT_TIMEOUT=30
```

ПеременнаяОписаниеПо умолчанию`RUMAXBOT_BASE_URL`Базовый URL сервиса`https://rumaxbot.ru``RUMAXBOT_API_TOKEN`Bearer-токен из ЛК rumaxbot.ru—`RUMAXBOT_TIMEOUT`Таймаут HTTP-запроса (сек)`30`Ошибки API и сетевые сбои пишутся в стандартный Laravel log (`storage/logs/laravel.log`).

Быстрая проверка после установки
--------------------------------

[](#быстрая-проверка-после-установки)

Отправить тестовое сообщение в MAX одной командой:

```
php artisan rumaxbot:test
```

Своё сообщение:

```
php artisan rumaxbot:test --message="Привет из Laravel"
php artisan rumaxbot:test --message="HTML" --format=html
```

Успех:

```
Sending test message via RuMaxBot...
Message queued successfully. Status: pending

```

Использование
-------------

[](#использование)

### Через фасад

[](#через-фасад)

```
use RuMaxBot\DataTransferObjects\SendMessageData;
use RuMaxBot\Enums\MessageFormat;
use RuMaxBot\Facades\RuMaxBot;

RuMaxBot::send(new SendMessageData(
    text: '🚀 Деплой прошёл успешно!',
    format: MessageFormat::Markdown,
));
```

### Через DI

[](#через-di)

```
use RuMaxBot\Contracts\RuMaxBotClientInterface;
use RuMaxBot\DataTransferObjects\SendMessageData;

final readonly class DeployNotifier
{
    public function __construct(
        private RuMaxBotClientInterface $ruMaxBot,
    ) {}

    public function notifySuccess(): void
    {
        $this->ruMaxBot->send(new SendMessageData(text: 'Deploy OK'));
    }
}
```

API
---

[](#api)

Пакет отправляет `POST /api/v1/messages`:

```
{
    "text": "Сообщение",
    "format": "markdown"
}
```

Поддерживаемые форматы: `markdown`, `html`.

Успешный ответ: `202 Accepted`:

```
{
    "message": "Message queued successfully.",
    "data": {
        "id": "019e79d1-...",
        "status": "pending"
    }
}
```

Тестирование
------------

[](#тестирование)

Пакет поставляется с **явными тестами** на двух уровнях.

### Живая проверка после установки

[](#живая-проверка-после-установки)

Отправка **реального** сообщения в MAX (нужен `RUMAXBOT_API_TOKEN` в `.env`):

```
php artisan rumaxbot:test
php artisan rumaxbot:test --message="Привет из Laravel"
php artisan rumaxbot:test --message="HTML" --format=html
```

Команда: `rumaxbot:test` (`SendTestMessageCommand`).

Успех:

```
Sending test message via RuMaxBot...
Message queued successfully. Status: pending
Message ID: 019e79d1-...

```

### Автотесты пакета (PHPUnit, без реального API)

[](#автотесты-пакета-phpunit-без-реального-api)

HTTP мокается через `Http::fake()` — к rumaxbot.ru запросы не уходят.

```
composer install
vendor/bin/phpunit
```

ФайлПокрытие`tests/Unit/RuMaxBotClientTest.php`клиент: успешная отправка, парсинг `data.status`, ошибка 401, пустой токен, legacy-формат ответа`tests/Feature/SendTestMessageCommandTest.php`команда `rumaxbot:test`: успех, `--message`, ошибка API### Автотесты в Laravel-проекте

[](#автотесты-в-laravel-проекте)

Если в проекте есть `tests/Feature/RuMaxBotTest.php` (как в дистрибутиве laracomposer):

```
php artisan test --filter RuMaxBot
```

Проверяется регистрация в DI, команда, клиент, ошибки без токена и при 401.

Лицензия
--------

[](#лицензия)

MIT

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance89

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

55d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/5847571?v=4)[Nezabor](/maintainers/rasxod)[@rasxod](https://github.com/rasxod)

---

Top Contributors

[![rasxod](https://avatars.githubusercontent.com/u/5847571?v=4)](https://github.com/rasxod "rasxod (4 commits)")

---

Tags

laravelnotificationsbotMessengermaxrumaxbot

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ww-site-rumaxbot/health.svg)

```
[![Health](https://phpackages.com/badges/ww-site-rumaxbot/health.svg)](https://phpackages.com/packages/ww-site-rumaxbot)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.3M347](/packages/psalm-plugin-laravel)[defstudio/telegraph

A laravel facade to interact with Telegram Bots

813336.8k3](/packages/defstudio-telegraph)[laravel/mcp

Rapidly build MCP servers for your Laravel applications.

77922.3M186](/packages/laravel-mcp)[api-platform/laravel

API Platform support for Laravel

58174.6k17](/packages/api-platform-laravel)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5022.6k](/packages/simplestats-io-laravel-client)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)

PHPackages © 2026

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