### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

When I m defining a queue with 30s delay (DelaySeconds)
After sending message ApproximateNumberOfMessagesDelayed is still at 0

### Expected Behavior

Define a queue with 30s delay 
Send a message 
Verify value of ApproximateNumberOfMessagesDelayed in the queue, expected value should be 1.
This is working with release 0.14.2

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

    docker run localstack/localstack:latest

#### Client commands (e.g., AWS SDK code snippet, or sequence of "awslocal" commands)
`
awslocal sqs create-queue  --queue-name test --attributes '{"DelaySeconds":"30","MessageRetentionPeriod":"86400","ReceiveMessageWaitTimeSeconds":"0","VisibilityTimeout":"0"}'

 awslocal sqs get-queue-attributes --attribute-names All  --queue-url http://localhost:4566/000000000000/test
 awslocal sqs send-message --queue-url http://localhost:4566/000000000000/test --message-body 'test'
 awslocal sqs get-queue-attributes --attribute-names All  --queue-url http://localhost:4566/000000000000/test
`

### Environment

```markdown
- OS:Ubuntu
- LocalStack:latest or 0.14.4
```


### Anything else?

_No response_
"""
    Utility function filter from the given message (in-place) the message attributes from the given list. It will
    apply all rules according to:
    https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sqs.html#SQS.Client.receive_message.
    :param message: The message to filter (it will be modified)
    :param names: the attributes names/filters (can be 'All', '.*', or prefix filters like 'Foo.*')
    """
    if not message.get("MessageAttributes"):
        return
    if not names:
        del message["MessageAttributes"]
        return
    if "All" in names or ".*" in names:
        return
    attributes = message["MessageAttributes"]
    matched = []
    keys = [name for name in names if ".*" not in name]
    prefixes = [name.split(".*")[0] for name in names if ".*" in name]
    
    for k in attributes:
        if k in keys:
            matched.append(k)
            continue
        for prefix in prefixes:
            if k.startswith(prefix):
                matched.append(k)
            break
    message["MessageAttributes"] = {k: attributes[k] for k in matched}