code: def time_series(self, group, keys, consumer=None):
          
          return TimeSeries(self, group, keys, consumer=consumer)
docs: Create a named :py:class:`TimeSeries` consumer-group for the
          given key(s). TimeSeries objects are almost identical to
          :py:class:`ConsumerGroup` except they offer a higher level of
          abstraction and read/write message ids as datetimes.
  
          :param group: name of consumer group
          :param keys: stream identifier(s) to monitor. May be a single stream
              key, a list of stream keys, or a key-to-minimum id mapping. The
              minimum id for each stream should be considered an exclusive
              lower-bound. The '$' value can also be used to only read values
              added *after* our command started blocking.
          :param consumer: name for consumer within group
          :returns: a :py:class:`TimeSeries` instance