承接 isidea/health-notifier 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

isidea/health-notifier

最新稳定版本:v1.1.0

Composer 安装命令:

composer require isidea/health-notifier

包简介

A Laravel package for sending health status notifications to various channels like Telegram and email.

README 文档

README

Health Notifier — это пакет для Laravel, который позволяет отправлять уведомления о состоянии работоспособности вашего приложения. Пакет поддерживает уведомления через несколько каналов, таких как email и Telegram.

Возможности

  • Email уведомления: Отправка уведомлений о состоянии приложения на несколько email-адресов.
  • Telegram уведомления: Отправка уведомлений в указанный Telegram-чат.

Установка

Чтобы установить Health Notifier в ваше приложение на Laravel, используйте composer:

composer require isidea/health-notifier

После установки пакета, опубликуйте конфигурацию с помощью команды:

php artisan vendor:publish --provider="Isidea\HealthNotifier\Providers\HealthNotifierServiceProvider" --tag="config"

Перейдите в файл конфигурации config/health-notifier.php и настройте необходимые параметры.

Регистрация команды отправки уведомлений

Уведомления отправляются при помощи команды SendAppHealthNofication. Зарегистрируйте ее в качестве регулярной задачи любым удобным способом.

Laravel Scheduler

Добавьте команду в ваш app/Console/Kernel.php:

protected function schedule(Schedule $schedule)
{
    $schedule->command('health-notifier:notify')->everyMinute();
}

Убедитесь, что cron работает на вашем сервере. Пример cron задания:

0 0 * * * /path-to-php/php /path-to-your-project/artisan schedule:run >> /dev/null 2>&1

Cron напрямую

0 0 * * * /path-to-php/php /path-to-your-project/artisan health-notifier:notify --no-interaction >> /dev/null 2>&1

Настройки Email уведомлений

    'email' => [

        // Включить или выключить email уведомления
        'enabled' => (bool) env('HEALTH_NOTIFIER_EMAIL_ENABLED', true),

        // адрес отправителя
        'from' => env('HEALTH_NOTIFIER_EMAIL_FROM', 'admin@example.ru'),

        // тема письма
        'subject' => env('APP_NAME') . ' App Health Notification',

        // Список email получателей
        'recipients' => env('HEALTH_NOTIFIER_EMAIL_RECIPIENTS', ['admin@example.ru']),

        // Путь к blade-markdown шаблону для email
        'markdown' => env('HEALTH_NOTIFIER_EMAIL_TEMPLATE', 'health-notifier::mail.notification'),

        // mailer из конфига laravel
        'mailer' => env('HEALTH_NOTIFIER_EMAIL_MAILER', 'smtp'),
    ],

Можно изменить/дополнить/расширить шаблон письма, который используется по-умолчанию:

php artisan vendor:publish --provider="Isidea\HealthNotifier\Providers\HealthNotifierServiceProvider" --tag="views"

Настройки Telegram уведомлений

Создайте телеграм бота

Воспользуйтесь стандартным функционалом телеграм чтобы зарегистрировать бота через @BotFather. Полученный токен укажите в конфиге в telegram.bot_token.

Получение ChatID

Установите текущее приложение в качестве обработчика вебхуков от созданного телеграм бота:

php artisan health-notifier:telegram-bot-set-weebhook

Начните диалог с ботом или пригласите его в требуемый чат. Воспользуйтесь командой /start - бот вернет ID чата. Установите полученный ID в конфиге telegram.chat_id.

Дополнительная конфигурация

    'telegram' => [

        // Включить или выключить Telegram уведомления
        'enabled' => (bool) env('HEALTH_NOTIFIER_TELEGRAM_ENABLED', false),

        // Chat ID для отправки уведомлений
        'chat_id' => env('HEALTH_NOTIFIER_TELEGRAM_CHAT_ID', 'your-telegram-chat-id'),

        // Токен Telegram-бота
        'bot_token' => env('HEALTH_NOTIFIER_TELEGRAM_BOT_TOKEN', 'your-bot-token'),

        // Путь к blade шаблону для сообщения
        'template' => env('HEALTH_NOTIFIER_TELEGRAM_TEMPLATE', 'health_notifier::telegram.notification'),
    ]

Можно изменить/дополнить/расширить шаблон сообщения, который используется по-умолчанию:

php artisan vendor:publish --provider="Isidea\HealthNotifier\Providers\HealthNotifierServiceProvider" --tag="views"

统计信息

  • 总下载量: 12
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-11-30