validate([ 'appId' => ['required', new AppId], 'key' => 'required|string', 'secret' => 'required|string', 'channel' => 'required|string', 'event' => 'required|string', 'data' => 'required|json', ]); $broadcaster = $this->getPusherBroadcaster([ 'key' => $request->key, 'secret' => $request->secret, 'id' => $request->appId, ]); try { $broadcaster->broadcast( [$request->channel], $request->event, json_decode($request->data, true) ); } catch (Exception $e) { return response()->json([ 'ok' => false, 'exception' => $e->getMessage(), ]); } return response()->json([ 'ok' => true, ]); } }