code: func (b *Broker) GetPendingTasks(queue string) ([]*tasks.Signature, error) {
  	conn := b.open()
  	defer conn.Close()
  
  	if queue == "" {
  		queue = b.GetConfig().DefaultQueue
  	}
  	dataBytes, err := conn.Do("LRANGE", queue, 0, -1)
  	if err != nil {
  		return nil, err
  	}
  	results, err := redis.ByteSlices(dataBytes, err)
  	if err != nil {
  		return nil, err
  	}
  
  	taskSignatures := make([]*tasks.Signature, len(results))
  	for i, result := range results {
  		signature := new(tasks.Signature)
  		decoder := json.NewDecoder(bytes.NewReader(result))
  		decoder.UseNumber()
  		if err := decoder.Decode(signature); err != nil {
  			return nil, err
  		}
  		taskSignatures[i] = signature
  	}
  	return taskSignatures, nil
  }
docs: // GetPendingTasks returns a slice of task signatures waiting in the queue