想寫一個(gè)基于GatewayWorker的類似QQ聊天一樣的產(chǎn)品。
1、注冊用戶寫入數(shù)據(jù)庫;
2、登錄用戶綁定client_id;
3、讀取數(shù)據(jù)庫獲取所有好友列表(但是這個(gè)好友是否在線的狀態(tài)怎么實(shí)現(xiàn))在線顯示彩色頭像,不在線顯示灰色頭像。
思路一、是不是需要寫個(gè)定時(shí)器沒幾秒中遍歷每個(gè)用戶的好友列表去調(diào)用isUidOnline判斷用戶是否在線;
思路二、將用戶表所有用戶標(biāo)記為outline 在onConnect的時(shí)候?qū)?shù)據(jù)表用戶狀態(tài)改為online 然后再onClose 的時(shí)候?qū)⒂脩魻顟B(tài)改為outline并推送一條離線數(shù)據(jù)到前端。
不知道是不是這樣類判斷用戶是否在線并實(shí)時(shí)呈現(xiàn)在用戶界面上,可是總感覺好像那里不對勁。