I tried to do all of these:
Attempt 1:
DispatchWpAutoNewTaskJob::dispatch($payload)->delay(now()->addSeconds(10));
Attempt 2:
$when = now()->addSeconds(10);
dispatch(new DispatchWpAutoNewTaskJob($payload))->later($when);
Attempt 3:
dispatch(new DispatchWpAutoNewTaskJob($payload))->delay(now()->addSeconds(10));
But it all returns an error similar to this:
[stacktrace]
#0 /www/wwwroot/zz.com.test/app/Http/Controllers/Api/WpAutoWebhookController.php(63): Illuminate\\Foundation\\Bus\\PendingDispatch->delay()
#1 /www/wwwroot/zz.com.test/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\Api\\WpAutoWebhookController->handleWebhook()
Laravel version: Laravel Framework 9.52.10
Attempt 1:
DispatchWpAutoNewTaskJob::dispatch($payload)->delay(now()->addSeconds(10));
Attempt 2:
$when = now()->addSeconds(10);
dispatch(new DispatchWpAutoNewTaskJob($payload))->later($when);
Attempt 3:
dispatch(new DispatchWpAutoNewTaskJob($payload))->delay(now()->addSeconds(10));
I am expecting that the job will be dispatch with a delay and it should be non-blocking. I already setup the redis and it is working. My only problem is the delay.
Note that the codes inside the job are actually working, but without any delays. I wanna add non-blocking delay