PHPackages                             bitarun/laravel-notification-service - 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. [Mail &amp; Notifications](/categories/mail)
4. /
5. bitarun/laravel-notification-service

ActiveLibrary[Mail &amp; Notifications](/categories/mail)

bitarun/laravel-notification-service
====================================

Notification service for Laravel applications with support for Email and SMS, including queue support.

v1.0.1(yesterday)01↑2900%MITPHP ^8.1

Since Jul 19Compare

[ Source](https://github.com/bitarun/laravel-notification-service)[ Packagist](https://packagist.org/packages/bitarun/laravel-notification-service)[ Docs](https://github.com/bitarun/laravel-notification-service)[ RSS](/packages/bitarun-laravel-notification-service/feed)WikiDiscussions Synced today

READMEChangelogDependencies (1)Versions (3)Used By (0)

📦 Laravel Notification Service
==============================

[](#-laravel-notification-service)

 **یک پکیج ساده، تمیز و انعطاف‌پذیر برای ارسال نوتیفیکیشن (ایمیل و پیامک) در پروژه‌های Laravel**

 [ ![Latest Version](https://camo.githubusercontent.com/3b0457ccd3844404a41bc394ea94406d28c8eb08bef20b8f27a0cfe0dbac35f2/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6269746172756e2f6c61726176656c2d6e6f74696669636174696f6e2d736572766963652e7376673f7374796c653d666c61742d737175617265) ](https://packagist.org/packages/bitarun/laravel-notification-service) [ ![Total Downloads](https://camo.githubusercontent.com/3afdcefaea5cd89897f34775dc67b7f2c2c56515f61e05d59730f78bd81f0678/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6269746172756e2f6c61726176656c2d6e6f74696669636174696f6e2d736572766963652e7376673f7374796c653d666c61742d737175617265) ](https://packagist.org/packages/bitarun/laravel-notification-service) [![PHP Version](https://camo.githubusercontent.com/489e3015f1437d6d81558b6db67146137efec3cae1ea7b9081a0d7e60bc88488/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d253345253344382e312d3737376262343f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/489e3015f1437d6d81558b6db67146137efec3cae1ea7b9081a0d7e60bc88488/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d253345253344382e312d3737376262343f7374796c653d666c61742d737175617265) [![Laravel Version](https://camo.githubusercontent.com/0970e2c074c4e2e5419276eb7984e4ffdee935467e01aa27ea7a9cec6e6f5ec5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d3e3d31312d6666326432303f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/0970e2c074c4e2e5419276eb7984e4ffdee935467e01aa27ea7a9cec6e6f5ec5/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c61726176656c2d3e3d31312d6666326432303f7374796c653d666c61742d737175617265) [![License](https://camo.githubusercontent.com/c090e080484e2a2bc766446291d04437db823929042bf614b26a1643660ddf6f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e3f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/c090e080484e2a2bc766446291d04437db823929042bf614b26a1643660ddf6f/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e3f7374796c653d666c61742d737175617265)

---

✨ ویژگی‌ها
----------

[](#-ویژگی‌ها)

- 📧 ارسال **ایمیل** با استفاده از سیستم `Mailable` خود لاراول
- 📱 ارسال **پیامک** از طریق وب‌سرویس SMS
- 🚀 پشتیبانی کامل از **صف (Queue)** — به‌صورت اختیاری و قابل تنظیم
- 🎯 پشتیبانی از ورودی ساده (رشته) یا DTO کامل برای گیرنده
- 🛡️ مدیریت خطای یکپارچه با Exception اختصاصی
- ⚡ رابط کاربری ساده از طریق Facade

---

📥 نصب
-----

[](#-نصب)

از طریق Composer نصب کنید:

```
composer require bitarun/laravel-notification-service
```

پکیج به‌صورت خودکار (Auto-Discovery) توسط لاراول شناسایی می‌شود و نیازی به ثبت دستی Service Provider نیست.

### انتشار فایل تنظیمات

[](#انتشار-فایل-تنظیمات)

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

این دستور فایل `config/notification.php` را در پروژهٔ شما ایجاد می‌کند.

---

⚙️ تنظیمات
----------

[](#️-تنظیمات)

پس از انتشار فایل کانفیگ، مقادیر زیر را در فایل `.env` پروژه‌تان تنظیم کنید:

```
# صف
NOTIFICATION_QUEUE_ENABLED=false
NOTIFICATION_QUEUE_CONNECTION=database
NOTIFICATION_QUEUE_NAME=default

# پیامک
SMS_API_KEY=your-api-key
SMS_URL=https://api.sms.ir/v1/send/verify
SMS_TEMPLATE_ID=your-template-id
```

کلیدتوضیحپیش‌فرض`NOTIFICATION_QUEUE_ENABLED`آیا نوتیفیکیشن‌ها به‌صورت پیش‌فرض وارد صف شوند؟`false``NOTIFICATION_QUEUE_CONNECTION`کانکشن صف مورد استفادهکانکشن پیش‌فرض لاراول`NOTIFICATION_QUEUE_NAME`نام صف مورد استفاده`default``SMS_API_KEY`کلید API سرویس پیامکی—`SMS_URL`آدرس endpoint سرویس پیامکی`https://api.sms.ir/v1/send/verify``SMS_TEMPLATE_ID`شناسهٔ قالب پیامک—---

🚀 شروع سریع
-----------

[](#-شروع-سریع)

### 📧 ارسال ایمیل

[](#-ارسال-ایمیل)

```
use Bitarun\LaravelNotificationService\Facades\Notification;

Notification::sendEmail($user->email, new \App\Mail\WelcomeMail);
```

### 📱 ارسال پیامک

[](#-ارسال-پیامک)

```
use Bitarun\LaravelNotificationService\Facades\Notification;

Notification::sendSms($user->phone_number, 'کد تایید شما: ۱۲۳۴۵');
```

همین! به همین سادگی 🎉

---

🎯 استفاده از DTO گیرنده (اختیاری)
---------------------------------

[](#-استفاده-از-dto-گیرنده-اختیاری)

اگر نیاز به اطلاعات بیشتری از گیرنده دارید (مثلاً نام، برای استفاده در قالب ایمیل)، می‌توانید از `NotificationRecipient` استفاده کنید:

```
use Bitarun\LaravelNotificationService\DTOs\NotificationRecipient;
use Bitarun\LaravelNotificationService\Facades\Notification;

$recipient = new NotificationRecipient(
    email: $user->email,
    name: $user->name
);

Notification::sendEmail($recipient, new \App\Mail\WelcomeMail);
```

> 💡 هر دو روش (رشتهٔ ساده یا DTO کامل) به‌طور یکسان پشتیبانی می‌شوند و می‌توانید بر اساس نیاز خود انتخاب کنید.

---

🚦 مدیریت صف (Queue)
-------------------

[](#-مدیریت-صف-queue)

به‌صورت پیش‌فرض، رفتار صف بر اساس مقدار `NOTIFICATION_QUEUE_ENABLED` در فایل `.env` تعیین می‌شود. اما می‌توانید این رفتار را به‌صورت مستقیم و per-call نیز override کنید:

### اجبار به ارسال از طریق صف

[](#اجبار-به-ارسال-از-طریق-صف)

```
Notification::queue()->sendEmail($user->email, new \App\Mail\WelcomeMail);
```

### اجبار به ارسال فوری (بدون صف)

[](#اجبار-به-ارسال-فوری-بدون-صف)

```
Notification::now()->sendSms($user->phone_number, 'این پیام فوری ارسال می‌شود');
```

### رفتار پیش‌فرض (طبق تنظیمات .env)

[](#رفتار-پیش‌فرض-طبق-تنظیمات-env)

```
Notification::sendEmail($user->email, new \App\Mail\WelcomeMail);
```

---

🛡️ مدیریت خطا
-------------

[](#️-مدیریت-خطا)

در صورت بروز خطا در ارسال (مثلاً fail شدن درخواست به سرویس پیامکی)، یک Exception اختصاصی پرتاب می‌شود که می‌توانید آن را مدیریت کنید:

```
use Bitarun\LaravelNotificationService\Exceptions\SmsSendingFailedException;

try {
    Notification::sendSms($user->phone_number, 'کد تایید: ۱۲۳۴۵');
} catch (SmsSendingFailedException $e) {
    logger()->error('ارسال پیامک ناموفق بود: ' . $e->getMessage());
}
```

> ⚙️ در صورت استفاده از صف، این خطاها به‌صورت خودکار توسط مکانیزم `failed_jobs` لاراول مدیریت می‌شوند.

---

📋 پیش‌نیازها
------------

[](#-پیش‌نیازها)

نیازمندینسخهPHP8.1 یا بالاترLaravel11.x, 12.x یا بالاتر---

🤝 مشارکت
--------

[](#-مشارکت)

پیشنهادات، گزارش باگ و Pull Request‌ها با آغوش باز پذیرفته می‌شوند! لطفاً پیش از ارسال تغییرات بزرگ، یک Issue باز کنید تا در موردش گفتگو کنیم.

---

📄 لایسنس
--------

[](#-لایسنس)

این پکیج تحت [لایسنس MIT](LICENSE) منتشر شده است.

---

 ساخته‌شده با ❤️ توسط [Bitarun](https://github.com/bitarun)

###  Health Score

39

—

LowBetter than 84% of packages

Maintenance100

Actively maintained with recent releases

Popularity2

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

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 ~0 days

Total

2

Last Release

1d ago

### Community

Maintainers

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

---

Tags

laravelemailnotificationsmsqueue

### Embed Badge

![Health badge](/badges/bitarun-laravel-notification-service/health.svg)

```
[![Health](https://phpackages.com/badges/bitarun-laravel-notification-service/health.svg)](https://phpackages.com/packages/bitarun-laravel-notification-service)
```

###  Alternatives

[propaganistas/laravel-disposable-email

Disposable email validator

6023.0M7](/packages/propaganistas-laravel-disposable-email)[laravel-notification-channels/twilio

Provides Twilio notification channel for Laravel

2588.4M17](/packages/laravel-notification-channels-twilio)[gr8shivam/laravel-sms-api

A modern, flexible Laravel package for integrating any SMS gateway with REST API support

10140.7k](/packages/gr8shivam-laravel-sms-api)[ghanem/laravel-smsmisr

Send SMS and SMS Notification via SMS Misr for Laravel

205.0k](/packages/ghanem-laravel-smsmisr)

PHPackages © 2026

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