我正在开发一个处理视频的应用程序。我尝试将10个视频推入队列中。在处理完一个视频后,我会触发如下事件:
...
$production->render();
event(new VideoHasProcessed(basename($this->video->path)));
...
我正在按照该视频的内容,向用户发送通知(https://laracasts.com/series/whats-new-in-laravel-5-1/episodes/12) 问题是:我想在每个视频处理完后推送通知,但实际上,在处理完十个视频之后才显示通知。
以下是我的脚本:
<script>
(function () {
var pusher = new Pusher(PUSHER_ID, {
encrypted: true
});
var channel = pusher.subscribe('test');
channel.bind('App\\Events\\VideoHasProcessed', function(data) {
console.log(data);
});
})();
</script>
更新:
分发一个任务
foreach ($request->input('files') as $file)
{
...
// Dispatch a job.
$this->dispatch(new ProduceVideo($video));
....
}
我的工作类:
公共函数处理(ProductionRepository $production) { ...
注:此文本已经是中文,因此无需翻译。
$production->render();
event(new VideoHasProcessed(basename($this->video->path)));
...
}