wilfreedi/acmen-laravel-sdk
Composer 安装命令:
composer require wilfreedi/acmen-laravel-sdk
包简介
A Laravel SDK for API interactions
README 文档
README
SDK для отправки сообщений через коммуникационные каналы AcMen API.
Поддерживаемые каналы:
- Telegram
- VK
Архитектура SDK построена как расширяемый реестр каналов (channel registry), поэтому новые каналы (например, max) добавляются без переписывания ядра.
Установка
composer require wilfreedi/acmen-laravel-sdk
Публикация конфига
php artisan vendor:publish --provider="Wilfreedi\AcMen\AcMenServiceProvider"
Конфигурация
return [ // Новая универсальная схема 'base_url' => env('ACMEN_API_BASE_URL', 'https://acmen.ru/api/v1'), // Legacy (для обратной совместимости) 'url' => env('ACMEN_API_URL', 'https://acmen.ru/api/v1/telegram/'), 'vk_url' => env('ACMEN_VK_API_URL', 'https://acmen.ru/api/v1/vk/'), 'email_url' => env('ACMEN_EMAIL_API_URL', 'https://acmen.ru/api/v1/email'), 'endpoints' => [ 'telegram.send_message' => '/telegram/sendMessage', 'vk.send_message' => '/vk/sendMessage', 'vk.send_document' => '/vk/sendDocument', 'email.send' => '/email', ], 'channels' => [ 'telegram' => \Wilfreedi\AcMen\Channels\TelegramChannel::class, 'vk' => \Wilfreedi\AcMen\Channels\VkChannel::class, 'email' => \Wilfreedi\AcMen\Channels\EmailChannel::class, ], 'token' => env('ACMEN_API_TOKEN'), 'timeout' => env('ACMEN_API_TIMEOUT', 10), ];
Использование
1) Универсальный доступ по каналу
use Wilfreedi\AcMen\Facades\AcMen; AcMen::channel('telegram')->sendMessage(-1001234567890, 'Привет'); AcMen::channel('vk')->sendMessage(2000000015, 'Привет из VK'); AcMen::channel('email')->sendEmail(['user@example.com'], subject: 'Тест', message: '<b>Hello</b>');
2) Удобные shortcut-методы
use Wilfreedi\AcMen\Facades\AcMen; // Telegram $telegramResponse = AcMen::sendMessage( chatId: -1001234567890, message: 'Привет из Telegram API', topicId: 15 ); // VK $vkResponse = AcMen::sendVkMessage( peerId: 2000000015, message: 'Привет из VK API', fromId: 1, randomId: 123456 // optional, если не передан, генерируется автоматически ); // VK Document (отправка файлов) $vkDocResponse = AcMen::sendVkDocument( peerId: 2000000015, file: '/path/to/local/file.pdf', message: 'Лови файл!', // optional fromId: 1 // optional ); // Email $emailResponse = AcMen::sendEmail( to: ['user1@example.com', 'user2@example.com'], toHidden: ['audit@example.com'], email: 'bot@example.com', name: 'Support Bot', subject: 'Тест', message: '<b>Hello</b>', attach: 'https://example.com/file.pdf' );
3) Отправка через очередь
use Wilfreedi\AcMen\Facades\AcMen; AcMen::queue()->vk()->sendMessage(2000000015, 'Сообщение через очередь');
Контракты API
VK: POST /api/v1/vk/sendMessage
Успешный ответ:
{
"success": true,
"data": 981,
"message": "VK сообщение отправлено"
}
VK: POST /api/v1/vk/sendDocument
Отправляет файл (multipart/form-data).
Параметры:
peer_id(int, required)file(file, required): путь к локальному файлуmessage(string, optional)from_id(int, optional)
Успешный ответ:
{
"success": true,
"data": 12345,
"message": "VK файл отправлен"
}
Ошибки:
403: нет доступных VK ботов403: VK бот не найден403: VK бот отключен400: ошибка отправки от VK API
Email: POST /api/v1/email
Тело запроса:
email(string, optional): username конкретного Email-аккаунтаto(array, required): получателиto_hidden(array, optional): BCCname(string, optional): имя отправителяsubject(string, optional): тема письмаmessage(string, optional): HTML-телоattach(string, optional): URL вложения
Успешный ответ:
{
"success": true,
"data": [],
"message": "Email отправлен"
}
Ошибки:
403: нет привязанных email-каналов к API токену403: выбранный email не найден
Примечание: subject и message формально optional, но в рабочем сценарии рекомендуется всегда передавать их строками.
Расширение под будущий канал (например, max)
- Создать класс канала (по аналогии с
VkChannel/EmailChannel). - Добавить endpoint в
acmen.endpoints. - Зарегистрировать канал в
acmen.channels. - Использовать
AcMen::channel('max').
wilfreedi/acmen-laravel-sdk 适用场景与选型建议
wilfreedi/acmen-laravel-sdk 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 76 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 01 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 wilfreedi/acmen-laravel-sdk 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 wilfreedi/acmen-laravel-sdk 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 76
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 9
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-01-21