code: def daemons_start(self, run_daemons=True):
          result = True
          if run_daemons:
              logger.info("Alignak configured daemons start:")
          else:
              logger.info("Alignak configured daemons check:")
          for satellites_list in [self.conf.arbiters, self.conf.receivers, self.conf.reactionners,
                                  self.conf.pollers, self.conf.brokers, self.conf.schedulers]:
              for satellite in satellites_list:
                  logger.info("- found %s, to be launched: %s, address: %s",
                              satellite.name, satellite.alignak_launched, satellite.uri)
                  if satellite == self.link_to_myself:
                      continue
                  if satellite.alignak_launched and \
                          satellite.address not in ['127.0.0.1', 'localhost']:
                      logger.error("Alignak is required to launch a daemon for %s %s "
                                   "but the satelitte is defined on an external address: %s",
                                   satellite.type, satellite.name, satellite.address)
                      result = False
                      continue
                  if not run_daemons:
                      continue
                  if not satellite.alignak_launched:
                      logger.debug("Alignak will not launch '%s'")
                      continue
                  if not satellite.active:
                      logger.warning("- daemon '%s' is declared but not set as active, "
                                     "do not start...", satellite.name)
                      continue
                  if satellite.name in self.my_daemons:
                      logger.warning("- daemon '%s' is already running", satellite.name)
                      continue
                  started = self.start_daemon(satellite)
                  result = result and started
          return result