code: def _feed_buffer(self, n=1):
          
          buffer = bytearray(self._stream.read())
          while len(buffer) < n:
              try:
                  message = yield from self._protocol.recv()
              except ConnectionClosed:
                  message = None
              if message is None:
                  break
              if not isinstance(message, bytes):
                  raise TypeError("message must be bytes")
              buffer.extend(message)
          self._stream = io.BytesIO(buffer)
docs: Feed the data buffer by reading a Websocket message.
          :param n: if given, feed buffer until it contains at least n bytes