1

私は、Authorstreamサーバーモデルを使用してDeepstreamでマルチプレイヤーゲームを構築しています。私のサーバはNode.JSクライアントです。接続されているクライアントのいずれかが接続を切断または切断したかどうかをサーバーが確認する方法はありますか?公開されているイベントまたはコールバックはありますか?Deepstream.io - クライアントが切断されたときのサーバコールバック?

私はハートビートシステムを構築できますが、これを回避できるかどうかは疑問です。

+0

かどうか、任意の切断を追跡します、あなたがどんなWebSocketをを使用していますあなたのゲームのライブラリ(Socket.io)? – Avinash

答えて

1

ありがとう、公式"presence" featureは既に機能が完全でテスト中です。ただし、this tutorialに表示されているように、リスニングによってその機能を既に模倣することができます(this line of code)。

一般に、すべてのクライアントは、それらに固有のステータスイベントを購読します。

ds.event.subscribe('status/' + name); 

サーバーは現在、これらのイベントのサブスクリプションのために耳を傾け、オンライン状態を推測します:

ds.event.listen('status/.*', this._playerOnlineStatusChanged.bind(this)); 

_playerOnlineStatusChanged(match, isSubscribed) { 
     // Extract the player name from the status event 
     var name = match.replace('status/', ''); 

     if(isSubscribed) { 
      this.addPlayer(name); 
     } else { 
      this.removePlayer(name); 
     } 
    } 

これは、意図的または偶発

関連する問題