Example #1
0
 /**
  * @param PlayzoneMessage $messageObject
  * @param ConnectionInterface $from
  */
 private function sendMessageToGameObservers(PlayzoneMessage $messageObject, ConnectionInterface $from)
 {
     /** @var ClientMessageMessageSend $messageGame */
     $messageGame = $this->getObjectFromJson(json_encode($messageObject->getData()), 'WebsocketServerBundle\\Model\\Message\\Client\\Game\\ClientMessageMessageSend');
     foreach ($this->users as $wsUser) {
         if ($wsUser->getConnection() == $from) {
             $chatMessage = $this->container->get("core.handler.chat")->createEntity();
             $chatMessage->setUser($wsUser->getPlayzoneUser())->setMessage($messageGame->getMessage())->setTime($this->container->get("core.service.date")->getDateTime());
             $messageObject->setData(json_decode($this->container->get("jms_serializer")->serialize($chatMessage, 'json'), true));
             $this->send($messageObject, $wsUser);
         }
     }
     foreach ($this->users as $wsUser) {
         if ($wsUser->getConnection() != $from) {
             $messageObject->setMethod("send_message_to_observers_" . $messageGame->getGameId());
             $this->send($messageObject, $wsUser);
         }
     }
 }