File: /home/xedaptot/ai.naniguide.com/app/Notifications/System/IpLocationLookupFailed.php
<?php
namespace App\Notifications\System;
use App\Notifications\AppNotification;
use Throwable;
class IpLocationLookupFailed extends AppNotification
{
public function __construct(public string $ip, public Throwable $exception) {}
public function audience(): string { return self::AUDIENCE_ADMINS; }
public function category(): string { return self::CATEGORY_ALERT; }
public function severity(): string { return self::SEVERITY_WARNING; }
/** One row per troublesome IP — different IPs don't collapse together. */
public function groupKey(): string
{
return 'ip-location-lookup:' . $this->ip;
}
public function toArray(object $notifiable = null): array
{
return [
'title' => 'GeoIP Error',
'body' => sprintf('Cannot get IP location info for %s. Error: %s', $this->ip, $this->exception->getMessage()),
];
}
}