code: func (ai *Amqp) CreateConsumer(exchange, key, kind, queue string, durable bool) (<-chan amqp.Delivery, error) {
  	if err := ai.WithExchange(exchange, kind, durable); err != nil {
  		return nil, err
  	}
  
  	q, err := ai.ch.QueueDeclare(queue, durable, false, false, false, nil)
  	if err != nil {
  		return nil, err
  	}
  
  	if err := ai.ch.QueueBind(q.Name, key, exchange, false, nil); err != nil {
  		return nil, err
  	}
  
  	return ai.ch.Consume(q.Name, "", false, false, false, false, nil)
  }
docs: // CreateConsumer creates a amqp consumer