private function updateMessageReceived(Message $message, User $receiver)
 {
     $em = $this->getDoctrine()->getManager();
     $userMessageRepository = $em->getRepository('AppBundle:UserMessage');
     $userMessage = $userMessageRepository->findOneBy(array('receiver' => $receiver->getId(), 'message' => $message->getId()));
     if (isset($userMessage)) {
         $unreceivedMessageId = -1;
         if ($userMessage->getDeliveredTimestamp() == null) {
             $userMessage->setDeliveredTimestamp((new DateTime())->setTimezone(new \DateTimeZone('UTC')));
             $unreceivedMessageId = $userMessage->getMessage()->getId();
         }
         if ($message->getSenderId() == $receiver->getId()) {
             $userMessage->setReadByReceiver(true);
             if ($userMessage->getReadTimestamp() == null) {
                 $userMessage->setReadTimestamp((new DateTime())->setTimezone(new \DateTimeZone('UTC')));
             }
         }
         $em->persist($userMessage);
         $em->flush();
         return $unreceivedMessageId;
     }
     return -1;
 }