Плагины Triangle Framework
Плагины — это дополнительные модули расширения, которые можно легко подключать к приложению. Они расширяют функциональность фреймворка без изменения ядра.
Доступные плагины
OAuth (triangle/oauth)
Мощный плагин для OAuth-аутентификации с поддержкой множества провайдеров.
Поддерживаемые провайдеры:
- Google, Facebook, Twitter, Apple
- GitHub, GitLab, Bitbucket
- Discord, Slack, Telegram
- VKontakte, Yandex, Mail.ru
- И многие другие (50+ провайдеров)
Установка:
composer require triangle/oauth
Документация: OAuth Plugin
Media (triangle/media)
Плагин для обработки медиа-файлов (изображения, видео и др.).
Основные возможности:
- Обработка изображений через ImageMagick
- Ресайз и обрезка изображений
- Конвертация форматов
- Оптимизация размера файлов
Установка:
composer require triangle/media
Требования: ext-imagick
Документация: Media Plugin
Pusher (triangle/pusher)
Система push-уведомлений для real-time приложений.
Возможности:
- Отправка push-уведомлений
- Управление подписками
- Интеграция с различными сервисами
Установка:
composer require triangle/pusher
Документация: Pusher Plugin
MultiConnect (triangle/multiconnect)
Шлюз для множественных подключений, основанный на Gateway Worker.
Возможности:
- Распределение соединений между процессами
- Горизонтальное масштабирование
- Управление множественными подключениями
Установка:
composer require triangle/multiconnect
Требования: workerman/gateway-worker >= 3.0
Документация: MultiConnect Plugin
Установка плагинов
Плагины устанавливаются через Composer и автоматически регистрируются системой:
composer require triangle/oauth
После установки плагин становится доступен через систему плагинов Engine.
Управление плагинами
Используйте консольные команды для управления плагинами:
# Просмотр установленных плагинов
php master plugin:list
# Включение плагина
php master plugin:enable triangle/oauth
# Отключение плагина
php master plugin:disable triangle/oauth
# Обновление плагина
php master plugin:update triangle/oauth
# Удаление плагина
php master plugin:uninstall triangle/oauth
Создание собственного плагина
Структура плагина
plugin-name/
├── composer.json
├── src/
│ ├── Plugin.php
│ └── ...
├── config/
│ └── plugin.php
└── Install.php
composer.json
{
"name": "vendor/plugin-name",
"type": "triangle-plugin",
"autoload": {
"psr-4": {
"Vendor\\PluginName\\": "src/"
}
},
"extra": {
"triangle-plugin": {
"name": "plugin-name",
"namespace": "Vendor\\PluginName"
}
}
}
Plugin.php
<?php
namespace Vendor\PluginName;
use Triangle\Engine\Plugin;
class Plugin extends Plugin
{
public static function install(): void
{
// Логика установки
}
public static function uninstall(): void
{
// Логика удаления
}
public static function update(): void
{
// Логика обновления
}
}
Конфигурация плагинов
Каждый плагин может иметь свой файл конфигурации в папке config/plugins/:
// config/plugins/plugin-name.php
return [
'enabled' => true,
// другие настройки
];