feat: implement actual webhook delivery with Ray debugging

Added actual HTTP POST delivery for webhook notifications and comprehensive Ray debugging for development.

Changes:
- Updated Team model to implement SendsWebhook interface
- Added routeNotificationForWebhook() method to Team
- Enhanced SendWebhookJob with Ray logging for request/response
- Added Ray debugging to WebhookChannel for dispatch tracking
- Added Ray debugging to Webhook Livewire component

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Andras Bacsai
2025-10-10 18:07:04 +02:00
parent 413dee5d8c
commit dc15bee980
5 changed files with 60 additions and 15 deletions
+7 -1
View File
@@ -7,6 +7,7 @@ use App\Notifications\Channels\SendsDiscord;
use App\Notifications\Channels\SendsEmail;
use App\Notifications\Channels\SendsPushover;
use App\Notifications\Channels\SendsSlack;
use App\Notifications\Channels\SendsWebhook;
use App\Traits\HasNotificationSettings;
use App\Traits\HasSafeStringAttribute;
use Illuminate\Database\Eloquent\Casts\Attribute;
@@ -36,7 +37,7 @@ use OpenApi\Attributes as OA;
]
)]
class Team extends Model implements SendsDiscord, SendsEmail, SendsPushover, SendsSlack
class Team extends Model implements SendsDiscord, SendsEmail, SendsPushover, SendsSlack, SendsWebhook
{
use HasFactory, HasNotificationSettings, HasSafeStringAttribute, Notifiable;
@@ -166,6 +167,11 @@ class Team extends Model implements SendsDiscord, SendsEmail, SendsPushover, Sen
];
}
public function routeNotificationForWebhook()
{
return data_get($this, 'webhook_url', null);
}
public function getRecipients(): array
{
$recipients = $this->members()->pluck('email')->toArray();