| Server IP : 35.80.110.71 / Your IP : 216.73.216.221 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64 User : ubuntu ( 1000) PHP Version : 8.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/client-portal-laravel/releases/20260626120707/app/Facades/ |
Upload File : |
<?php
declare(strict_types=1);
namespace App\Facades;
use App\Models\Core\User;
use App\Models\Notifications\NotificationTemplate;
use App\Services\Notifications\NotificationOrchestrator;
use App\Support\Notifications\NotificationBatch;
use App\Support\Notifications\NotificationPayload;
use App\Support\Notifications\NotificationResult;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Facade;
/**
* Unified notification facade.
*
* This is the primary entry point for sending notifications throughout the application.
* All notifications sent through this facade are recorded in the notification_deliveries table.
*
* @method static NotificationResult sendEmail(User $user, string $subject, string $body, ?string $notificationType = null, array $data = [])
* @method static NotificationResult sendTemplateEmail(User $user, NotificationTemplate $template, array $variables = [], array $data = [])
* @method static NotificationResult sendInApp(User $user, string $title, string $message, ?string $notificationType = null, ?string $actionUrl = null, array $data = [])
* @method static NotificationResult sendSms(User $user, string $message, ?string $notificationType = null, array $data = [])
* @method static NotificationResult sendSlack(User $user, string $message, ?string $notificationType = null, array $data = [])
* @method static NotificationResult sendEmailToAddress(string $email, string $subject, string $body, ?string $notificationType = null, array $data = [])
* @method static NotificationBatch sendToMany(Collection $users, NotificationPayload $payload, string $channel)
* @method static NotificationBatch sendEmailAndInApp(User $user, string $title, string $message, ?string $notificationType = null, ?string $actionUrl = null, array $data = [])
* @method static NotificationBatch send(User $user, NotificationPayload $payload, ?array $channels = null)
* @method static NotificationResult sendImmediate(User $user, NotificationPayload $payload, string $channelKey)
* @method static NotificationResult sendToChannel(User $user, NotificationPayload $payload, string $channelKey)
* @method static NotificationBatch broadcast(User $user, NotificationPayload $payload)
* @method static Collection queue(User $user, NotificationPayload $payload, ?array $channels = null, ?\Carbon\Carbon $scheduledFor = null)
*
* @see \App\Services\Notifications\NotificationOrchestrator
*/
class Notify extends Facade
{
protected static function getFacadeAccessor(): string
{
return NotificationOrchestrator::class;
}
}