code: func (fw *Framework) NetworkBrokerPeers() (servers []srvcache.Server, err error) {
  	servers, err = fw.QuerySrvRecords([]string{"_mcollective-broker._tcp"})
  	if err != nil {
  		log.Errorf("SRV lookup for _mcollective-broker._tcp failed: %s", err)
  		err = nil
  	}
  
  	if len(servers) == 0 {
  		for _, server := range fw.Config.Choria.NetworkPeers {
  			parsed, err := url.Parse(server)
  			if err != nil {
  				return servers, fmt.Errorf("Could not parse network peer %s: %s", server, err)
  			}
  
  			host, sport, err := net.SplitHostPort(parsed.Host)
  			if err != nil {
  				return servers, fmt.Errorf("Could not parse network peer %s: %s", server, err)
  			}
  
  			port, err := strconv.Atoi(sport)
  			if err != nil {
  				return servers, fmt.Errorf("Could not parse network peer %s: %s", server, err)
  			}
  
  			s := srvcache.Server{
  				Host:   host,
  				Port:   port,
  				Scheme: parsed.Scheme,
  			}
  
  			servers = append(servers, s)
  		}
  	}
  
  	for i, s := range servers {
  		s.Scheme = "nats"
  		servers[i] = s
  	}
  
  	return
  }
docs: // NetworkBrokerPeers are peers in the broker cluster resolved from
  // _mcollective-broker._tcp or from the plugin config