2022-09-22 06:09:45 +00:00
|
|
|
<?php
|
|
|
|
|
2023-01-19 16:11:50 +00:00
|
|
|
namespace App\Http\Controllers\Module;
|
2022-09-22 06:09:45 +00:00
|
|
|
|
2022-11-06 11:28:22 +00:00
|
|
|
use App\Http\Controllers\Controller;
|
2022-09-22 06:09:45 +00:00
|
|
|
use App\Models\User;
|
2023-01-11 12:19:05 +00:00
|
|
|
use App\Notifications\WebNotification;
|
2023-01-10 13:42:27 +00:00
|
|
|
use Illuminate\Http\JsonResponse;
|
2022-09-22 06:09:45 +00:00
|
|
|
use Illuminate\Http\Request;
|
|
|
|
|
|
|
|
class BroadcastController extends Controller
|
|
|
|
{
|
2023-01-10 13:42:27 +00:00
|
|
|
public function broadcast_to_user(Request $request, User $user): JsonResponse
|
2022-09-22 06:09:45 +00:00
|
|
|
{
|
|
|
|
$this->validate($request, $this->rules());
|
|
|
|
|
2023-01-13 14:12:49 +00:00
|
|
|
$user->notify(new WebNotification($request->all(), $request->input('event')));
|
2022-09-22 06:09:45 +00:00
|
|
|
|
2023-01-10 16:35:32 +00:00
|
|
|
return $this->created("message sent.");
|
2022-09-22 06:09:45 +00:00
|
|
|
}
|
|
|
|
|
2023-01-10 13:42:27 +00:00
|
|
|
private function rules(): array
|
2022-11-16 05:16:56 +00:00
|
|
|
{
|
|
|
|
return [
|
2023-01-10 16:28:29 +00:00
|
|
|
'message' => 'required|string|max:255',
|
2023-01-13 14:12:49 +00:00
|
|
|
'event' => 'required|alpha',
|
2022-11-16 05:16:56 +00:00
|
|
|
];
|
|
|
|
}
|
|
|
|
|
2023-01-10 16:24:58 +00:00
|
|
|
// public function broadcast_to_host(Request $request, Host $host): JsonResponse
|
|
|
|
// {
|
|
|
|
// $this->validate($request, $this->rules());
|
|
|
|
//
|
|
|
|
// broadcast(new Users($host->user, 'modules.hosts.event', [
|
|
|
|
// 'host' => $host,
|
|
|
|
// 'message' => $request->input('message')
|
|
|
|
// ]));
|
|
|
|
//
|
|
|
|
// return $this->created($request->input('message'));
|
|
|
|
// }
|
2022-09-22 06:09:45 +00:00
|
|
|
}
|