Server IP : 103.191.208.50 / Your IP : 216.73.216.53 Web Server : LiteSpeed System : Linux orion.herosite.pro 4.18.0-553.53.1.lve.el8.x86_64 #1 SMP Wed May 28 17:01:02 UTC 2025 x86_64 User : celkcksm ( 1031) PHP Version : 7.4.33 Disable Function : show_source, system, shell_exec, passthru, popen, exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/celkcksm/cloudcampus.ncriptech.com/../cms.ncriptech.com/app/Jobs/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
<?php namespace App\Jobs; use Exception; use Illuminate\Bus\Queueable; use Illuminate\Support\Facades\Log; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Queue\InteractsWithQueue; use App\Services\SMS\SMSServiceFactory; use Illuminate\Queue\SerializesModels; class SMSSenderJob implements ShouldQueue { use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; public $tries = 3; // Number of times the job should be attempted public $backoff = 1; // Delay between retries in seconds protected $data; /** * Create a new job instance. * * @return void */ public function __construct($data) { $this->data = $data; } /** * Execute the job. * * @return void */ public function handle() { try { $smsService = SMSServiceFactory::create($this->data['sms_provider']); $smsService->sendSMS($this->data['phone'], $this->data['message']); } catch (Exception $e) { // Log the error or handle the exception Log::error('SMS sending failed: ' . $e->getMessage()); // Re-throw the exception to trigger the retry throw $e; } } // Optionally, define retry logic based on exception type public function retryAfter() { return now()->addSeconds($this->backoff); } }