public function getMessagingPoolManager(bool $force = false) : CNabuMessagingPoolManager
    {
        if ($this->nb_customer instanceof CNabuCustomer) {
            if ($this->nb_messaging_pool_manager === null || $force) {
                if ($this->nb_messaging_pool_manager instanceof CNabuMessagingPoolManager) {
                    $this->nb_messaging_pool_manager->finish();
                }
                $this->nb_messaging_pool_manager = new CNabuMessagingPoolManager($this->nb_customer);
                $this->nb_messaging_pool_manager->init();
            } elseif (
                !(($nb_aux_customer = $this->nb_messaging_pool_manager->getCustomer()) instanceof CNabuCustomer) ||
                $this->nb_customer->getId() !== $nb_aux_customer->getId()
            ) {
                throw new ENabuMessagingException(ENabuMessagingException::ERROR_INVALID_MESSAGING_POOL_MANAGER);
            }
        } else {
            throw new ENabuCoreException(ENabuCoreException::ERROR_CUSTOMER_NOT_FOUND);
        }

        return $this->nb_messaging_pool_manager;
    }