Fix exception handling in job classes
This commit is contained in:
parent
b04ab5aa20
commit
215b15946e
|
@ -16,49 +16,49 @@ use DefStudio\Telegraph\Facades\Telegraph;
|
||||||
|
|
||||||
class NotifyUsersManualModeOnJob implements ShouldQueue
|
class NotifyUsersManualModeOnJob implements ShouldQueue
|
||||||
{
|
{
|
||||||
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
|
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new job instance.
|
* Create a new job instance.
|
||||||
*/
|
*/
|
||||||
public function __construct()
|
public function __construct()
|
||||||
{
|
{
|
||||||
//
|
//
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Execute the job.
|
||||||
|
*/
|
||||||
|
public function handle(): void
|
||||||
|
{
|
||||||
|
$users = TelegramBotLogins::join("users", "users.id", "=", "telegram_bot_logins.user")
|
||||||
|
->select("users.id", "chat_id", "users.available")
|
||||||
|
->where("users.availability_manual_mode", true)
|
||||||
|
->whereNotNull("chat_id")
|
||||||
|
->get();
|
||||||
|
|
||||||
|
foreach ($users as $user) {
|
||||||
|
//Get chat by id
|
||||||
|
$chat = Telegraph::chat($user["chat_id"]);
|
||||||
|
$state = $user["available"] ? "disponibile 🟢" : "non disponibile 🔴";
|
||||||
|
$chat
|
||||||
|
->message(
|
||||||
|
"⚠️ Attenzione! La tua disponibilità <b>non segue la programmazione oraria</b>." .
|
||||||
|
"\nAttualmente sei <b>$state</b>" .
|
||||||
|
"\nSe vuoi mantenere questa impostazione,\nignora questo messaggio."
|
||||||
|
)
|
||||||
|
->keyboard(Keyboard::make()->buttons([
|
||||||
|
Button::make("🔧 Ripristina programmazione 🔧")->action('manual_mode_off')->param("user_id", $user["id"]),
|
||||||
|
Button::make("🗑 Elimina notifica 🗑")->action('delete_notification')
|
||||||
|
]))
|
||||||
|
->send();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
public function failed($exception = null)
|
||||||
* Execute the job.
|
{
|
||||||
*/
|
if (app()->bound('sentry')) {
|
||||||
public function handle(): void
|
app('sentry')->captureException($exception);
|
||||||
{
|
|
||||||
$users = TelegramBotLogins::join("users", "users.id", "=", "telegram_bot_logins.user")
|
|
||||||
->select("users.id", "chat_id", "users.available")
|
|
||||||
->where("users.availability_manual_mode", true)
|
|
||||||
->whereNotNull("chat_id")
|
|
||||||
->get();
|
|
||||||
|
|
||||||
foreach ($users as $user) {
|
|
||||||
//Get chat by id
|
|
||||||
$chat = Telegraph::chat($user["chat_id"]);
|
|
||||||
$state = $user["available"] ? "disponibile 🟢" : "non disponibile 🔴";
|
|
||||||
$chat
|
|
||||||
->message(
|
|
||||||
"⚠️ Attenzione! La tua disponibilità <b>non segue la programmazione oraria</b>.".
|
|
||||||
"\nAttualmente sei <b>$state</b>".
|
|
||||||
"\nSe vuoi mantenere questa impostazione,\nignora questo messaggio."
|
|
||||||
)
|
|
||||||
->keyboard(Keyboard::make()->buttons([
|
|
||||||
Button::make("🔧 Ripristina programmazione 🔧")->action('manual_mode_off')->param("user_id", $user["id"]),
|
|
||||||
Button::make("🗑 Elimina notifica 🗑")->action('delete_notification')
|
|
||||||
]))
|
|
||||||
->send();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public function failed(\Error|\TypeError $exception = null)
|
|
||||||
{
|
|
||||||
if (app()->bound('sentry')) {
|
|
||||||
app('sentry')->captureException($exception);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,4 +24,11 @@ class RemoveOldIpAddressesFromLogsJob implements ShouldQueue
|
||||||
Log::where('created_at', '<', Carbon::now()->subWeeks(2))
|
Log::where('created_at', '<', Carbon::now()->subWeeks(2))
|
||||||
->update(['ip' => null]);
|
->update(['ip' => null]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function failed($exception = null)
|
||||||
|
{
|
||||||
|
if (app()->bound('sentry')) {
|
||||||
|
app('sentry')->captureException($exception);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,7 +50,7 @@ class ResetAvailabilityMinutesJob implements ShouldQueue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function failed(\Error|\TypeError $exception = null)
|
public function failed($exception = null)
|
||||||
{
|
{
|
||||||
if (app()->bound('sentry')) {
|
if (app()->bound('sentry')) {
|
||||||
app('sentry')->captureException($exception);
|
app('sentry')->captureException($exception);
|
||||||
|
|
|
@ -95,7 +95,7 @@ class UpdateAvailabilityWithSchedulesJob implements ShouldQueue
|
||||||
TelegramBot::sendTeamMessage($text);
|
TelegramBot::sendTeamMessage($text);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function failed(\Error|\TypeError $exception = null)
|
public function failed($exception = null)
|
||||||
{
|
{
|
||||||
if (app()->bound('sentry') && !is_null($exception)) {
|
if (app()->bound('sentry') && !is_null($exception)) {
|
||||||
app('sentry')->captureException($exception);
|
app('sentry')->captureException($exception);
|
||||||
|
|
Loading…
Reference in New Issue