محمد
4 سال پیش توسط محمد مطرح شد
1 پاسخ

Real Time تو لاراول

سلام خدمت شما من میخوام یه سایت real time بنویسم که وقتی ادمین پستیو میذاره کاربر همون موقع تو سایت ببینش بدون رفرش صفحه ، خب اینکارو با خوده broadcast لاراول انجام میدم من تا اینجای کار یه event درست کردم و دیتا های pusher امم ست کردم وقتی ایونتمو صدا میزنم و مقدار دهیش میکنم دیتا هامو بهم برمیگردونه ولی یه مقدار socket هم هست که برابر با null

[
{
"user": {
"id": 1,
"name": "mhmd",
"email": "mhmdsh818@gmail.com",
"role": "user",
"timezone": "Asia/Tehran",
"rate": "free",
"created_at": "2020-08-01 11:42:43",
"updated_at": "2020-08-01 11:42:43",
"confirmed_at": "2020-08-10 00:00:00",
"confirmation_code": null
},
"socket": null
}
]

کد هامم به این صورته : MY Event

class BroadEvent implements ShouldBroadcast
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    /**
     * Create a new event instance.
     *
     * @return void
     */
    public  $user;
    public function __construct(User $user)
    {
        $this->user = $user;
    }

    /**
     * Get the channels the event should broadcast on.
     *
     * @return \Illuminate\Broadcasting\Channel|array
     */
    public function broadcastOn()
    {
        return new Channel('user');
    }

البته وقتی با Laravel Echo این کارو میکنم تو console با این ارور مواجه میشم:

Pusher :  : ["No callbacks on user for pusher:subscription_succeeded"]

و البته مقداری هم به من برنمیگردونه

Pusher :  : ["Event recd",{"event":"pusher_internal:subscription_succeeded","channel":"user","data":{}}]

کد های vue هم به این شکل هستند:

window.Echo.channel('user')
    .listen('BroadEvent' , function (e) {
        console.log(e);
    });

ثبت پرسش جدید
محمد
تخصص : طراح رابط کاربری، برنامه نویس...
@mhmd.dev 4 سال پیش مطرح شد
0

@ali.bayat
میشه لطفا اگه میتونید کمک کنید


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام