Ask for the user to take an action before continuing.
If the user does not answer in time (see timeout), a TimeoutError will be raised or None will be returned depending on raise_on_timeout parameter.
If a project ID is configured, the messages will be uploaded to the cloud storage.