code: def query_nds2(cls, names, host=None, port=None, connection=None,
                     type=io_nds2.Nds2ChannelType.any(), unique=False):
          
          ndschannels = io_nds2.find_channels(names, host=host, port=port,
                                              connection=connection, type=type,
                                              unique=unique)
          return cls(map(Channel.from_nds2, ndschannels))
docs: Query an NDS server for channel information
  
          Parameters
          ----------
          name : `str`
              name of requested channel
          host : `str`, optional
              name of NDS2 server.
          port : `int`, optional
              port number for NDS2 connection
          connection : `nds2.connection`
              open connection to use for query
          type : `str`, `int`
              NDS2 channel type with which to restrict query
          unique : `bool`, optional
              require a unique query result for each name given, default `False`
  
          Returns
          -------
          channellist : `ChannelList`
              list of `Channels <Channel>` with metadata retrieved from
              NDS2 server
  
          Raises
          ------
          ValueError
              if multiple channels are found for a given name and `unique=True`
              is given
  
          Notes
          -----
          .. warning::
  
             A `host` is required if an open `connection` is not given