diff --git a/app/Http/Controllers/ChatController.php b/app/Http/Controllers/ChatController.php index f460820a..0e3eaee5 100644 --- a/app/Http/Controllers/ChatController.php +++ b/app/Http/Controllers/ChatController.php @@ -99,7 +99,11 @@ class ChatController extends Controller $message->load('sender'); - broadcast(new MessageSent($message))->toOthers(); + try { + broadcast(new MessageSent($message))->toOthers(); + } catch (\Exception $e) { + \Log::warning('Chat broadcast failed: ' . $e->getMessage()); + } $message->created_at = $message->created_at->format('H:i'); diff --git a/resources/views/chat/show.blade.php b/resources/views/chat/show.blade.php index 5dfef981..a7634218 100644 --- a/resources/views/chat/show.blade.php +++ b/resources/views/chat/show.blade.php @@ -156,14 +156,12 @@ if (chatForm) { } const data = new FormData(form); - axios.post('{{ route("chat.send") }}', data, { - headers: { 'X-Socket-ID': window.Echo.socketId() }, - transformRequest: [(formData, headers) => { - delete headers.post['Content-Type']; - delete headers['Content-Type']; - return formData; - }] - }).then(response => { + const socketId = (window.Echo && window.Echo.socketId) ? window.Echo.socketId() : null; + const reqHeaders = {}; + if (socketId) reqHeaders['X-Socket-ID'] = socketId; + + axios.post('{{ route("chat.send") }}', data, { headers: reqHeaders }) + .then(response => { appendMessage(response.data, true); scrollBottom(); form.reset();