Does this look close to correct, when you compare it to the MQTT message from the Tasmota log?
############################################################################
# Options for 'MQTTSubscribeService'
[MQTTSubscribeService]
# This section is for the MQTTSubscribe service.
# Turn the service on and off.
# Default is: true
# Only used by the service.
enable = false
# The MQTT server.
# Default is localhost.
host = localhost
# The port to connect to.
# Default is 1883.
port = 1883
# Maximum period in seconds allowed between communications with the broker.
# Default is 60.
keepalive = 60
# username for broker authentication.
# Default is None.
username = None
# password for broker authentication.
# Default is None.
password = None
# The binding, loop or archive.
# Default is: loop
# Only used by the service.
binding = loop
# The message handler to use
[[message_callback]]
# The format of the MQTT payload.
# Currently support: individual, json, keyword
# Must be specified.
type = json
# When the json is nested, the delimiter between the hierarchies.
# Default is _.
flatten_delimiter = "_"
# The topics to subscribe to.
[[topics]]
# Units for MQTT payloads without unit value.
# Valid values: US, METRIC, METRICWX
# Default is: US
unit_system = METRIC
[[[first/topic]]]
# The incoming field name from MQTT.
[[[[Time]]]]
# left side is the name from MQTT.
# right side is the WeeWX name.
Time = dateTime
[[[second/topic]]]
# The incoming field name from MQTT.
[[[[BME280_Temperature]]]]
# left side is the name from MQTT.
# right side is the WeeWX name.
Temperature = extraTemp1
[[[[BME280_Pressure]]]]
# left side is the name from MQTT.
# right side is the WeeWX name.
Pressure = barometer
[[[third/topic]]]
# The incoming field name from MQTT.
[[[[PressureUnit]]]]
# left side is the name from MQTT.
# right side is the WeeWX name.
PressureUnit = ??
[[[fourth/topic]]]
# The incoming field name from MQTT.
[[[[TemperatureUnit]]]]
# left side is the name from MQTT.
# right side is the WeeWX name.
TempUnit = ??