/**
  * Set the current SocketSession PageID back to null
  * and then let users know current user is leaving the page
  * @param SS_HTTPRequst $message
  * @return void
  */
 public function leave($message)
 {
     $data = $this->getMessageBody($message);
     $pageId = $data->pageId;
     $socketId = $this->getMessageSocketID($message);
     // update current socket session
     $session = SocketSession::get()->filter('SocketID', $socketId)->first();
     // failsafe
     if (!$session || !$session->exists()) {
         $session = new SocketSession();
         $session->MemberID = Member::currentUserID();
         $session->SocketID = $socketId;
     }
     $session->PageID = null;
     $session->write();
     $this->emitUserLeaving($socketId, $pageId, $session->Member());
 }