2015年8月7日 星期五

Laravel 5.1 廣播事件 - 利用 redis & socket.io (事件實作)

主要參考 Step by Step Guide to Installing Socket.io and Broadcasting Events with Laravel 5.1 此篇教學,因此寫下步驟提醒自己,若要詳細的圖文配置請自行參閱。

Step1. 安裝新的 npm pakage & 更新 composer.json
  • npm install express ioredis socket.io --save
  • composer require predis/predis
Step2. 創建廣播事件
  • php artisan make:event EventName
注意得去實作 ShouldBroadcast 介面,且注意又用 public 的方法去實作序列化&送資料。

Step3. 創建 View & Route

注意在client頁面 socket.io.js 的引入,若沒有可以去抓下來放 assets/js 或者直接用 cdn。

Step4. 建立 node Server 端 socket.js

redis 必須去 subsrcibe 與 EventName.php 相同的 channel。
修改 .env 的 BROADCAST_DRIVER,因為原本是用 pusher。

Step5. 啟動 node server&redis-server
  • node socket.js
  • redis-server --port 3001
另外也有一篇很棒的參考,而且是中文(Laravel 5.1 Events Broadcasting 實務練習

沒有留言:

張貼留言