<?php namespace App\Events\LiveStream; use Illuminate\Broadcasting\Channel; use Illuminate\Broadcasting\InteractsWithSockets; use Illuminate\Broadcasting\PresenceChannel; use Illuminate\Broadcasting\PrivateChannel; use Illuminate\Contracts\Broadcasting\ShouldBroadcast; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Queue\SerializesModels; class StreamEnd implements ShouldBroadcast { use Dispatchable, InteractsWithSockets, SerializesModels; public $id; /** * Create a new event instance. * * @return void */ public function __construct($id) { $this->id = $id; } /** * Get the channels the event should broadcast on. * * @return \Illuminate\Broadcasting\Channel|array */ public function broadcastOn() { return new Channel('live.chat.' . $this->id); } public function broadcastAs() { return 'stream.end'; } public function broadcastWith() { return ['ts' => time() ]; } }