دوستان reverb لاراول رو راه اندازی کردم در بخش event یک فایل با این دستورات ایجاد کردم :
class PrivateEnevt implements ShouldBroadcast
{
use Dispatchable, InteractsWithSockets, SerializesModels;
public $message;
/**
* Create a new event instance.
*/
public function __construct($message)
{
$this->message = $message;
}
/**
* Get the channels the event should broadcast on.
*
* @return array<int, \Illuminate\Broadcasting\Channel>
*/
public function broadcastOn(): array
{
return [
new Channel('test'),
];
}
public function broadcastWith(): array
{
return [
'message' => $this->message
];
}
}
در بخش blade هم :
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>API</title>
</head>
<body>
@vite('resources/js/app.js')
<script>
setTimeout(() => {
window.Echo.private("test")
.listen('PrivateEnevt', (e)=>
{
console.log(e);
})
}, 500);
</script>
</body>
</html>
قرار دادم . یه روت دادم که blade رو صدا می زنه و یک روت هم داخل web.php نوشتم :
Route::get('/ws', function()
{
event(new PrivateEnevt('hello'));
});
حالا وقتی ادرسی که به blade میده رو صدا می زنم هیچ اروری نمی یاد و داخل console داره wss رو با موفقیت می بینه اما وقتی ادرس /sw رو صدا می زنم که یک مسیج بفرسته هیچ event دریافت نمی کنم داخل صفحه .
کانفیگ reverb
REVERB_APP_ID=365;lk465496
REVERB_APP_KEY=kijgghkjhkjhyg
REVERB_APP_SECRET=uygukjhguyg
REVERB_HOST="domain"
REVERB_SERVER_PORT=8080
REVERB_SERVER_HOST=127.0.0.1
REVERB_PORT=443
REVERB_SCHEME=https
REVERB_TLS_CERT_PATCH="/etc/letsencrypt/live/domain/fullchain.pem"
REVERB_TLS_KEY_PATCH="/etc/letsencrypt/live/domain/privkey.pem"
reverb رو هم بدون هیچ مشکلی با php artisan ران کردم .
یک موردی که هست که event ها دریافت میشن داخل horizon و در حالت pending می مونن :
{
"event": {
"data": "hello",
},
"tries": null,
"timeout": null,
"backoff": null,
"maxExceptions": null,
"connection": null,
"queue": null,
"delay": null,
"afterCommit": null,
"middleware": [
],
"chained": [
],
"chainConnection": null,
"chainQueue": null,
"chainCatchCallbacks": null
}
به reza کمک کنید تا مشکل خودش را حل کند؛ اینطور میتوانیم با هم پیشرفت کنیم.
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟