/**
  * Processing raw request
  * @param RequestDto $dto
  */
 protected function processRequest(RequestDto $dto)
 {
     if (0 === count($this->requestHandlers)) {
         Logger::get()->debug("is: %s, no request handlers found, stopper raw request processing", $dto->getId());
         return;
     }
     if (true === $dto->isBotMessage()) {
         Logger::get()->debug("is: %s, bot message, stopped raw request processing", $dto->getId());
         return;
     }
     /** @var RequestHandlerInterface $handler */
     foreach ($this->requestHandlers as $handler) {
         if ($handler->canProcessRequest($dto)) {
             if (!$handler->shouldReceiveOwnMessages() && 'bot' === $dto->getUser()) {
                 continue;
             }
             if (!$this->executionResolver->shouldExecute($handler, $dto)) {
                 continue;
             }
             $result = $handler->processRequest($dto, $this->executionResolver->getParams());
             if ($result === RequestHandlerInterface::STOP_PROCESSING) {
                 return;
             }
         }
     }
 }