I think what your are asking is this
My thing file
Bridge mqtt:broker:myMQTTBroker [ host ="192.168.1.148", clientID ="myMQTTClient" ]
{
Thing topic fan1 "Dining FAN" [ availabilityTopic="IFANdining/tele/LWT", payloadAvailable="Online", payloadNotAvailable="Offline"] {
Channels:
Type switch : Power1 "Dining Light " [ stateTopic = "IFANdining/stat/POWER", commandTopic = "IFANdining/cmnd/POWER", on="ON", off="OFF" ]
Type dimmer : fanspeed "Fan Speed" [ stateTopic = "IFANdining/stat/FANSPEED", transformationPattern = "JSONPATH:$.FanSpeed", commandTopic ="IFANdining/cmnd/FANSPEED", 0="OFF", 1="LOW", 2="MED", 3="HIGH", 2=100 ]
}
Thing topic fan2 "Anabel FAN" [ availabilityTopic ="AIFAN/tele/LWT", payloadAvailable ="Online", payloadNotAvailable ="Offline"] {
Channels:
Type switch : Power1 "Anabel Light " [ stateTopic ="AIFAN/stat/POWER", commandTopic ="AIFAN/cmnd/POWER", on="ON", off="OFF" ]
Type dimmer : fanspeed "Anabel Fan" [ stateTopic ="AIFAN/stat/FANSPEED", transformationPattern ="JSONPATH:$.FanSpeed", commandTopic ="AIFAN/cmnd/FANSPEED", 0="OFF", 1="LOW", 2="MED", 3="HIGH", 2=100 ]
}
Thing topic Kettle "Kettle in Kitchen" @ "Kitchen" [ availabilityTopic ="tele/kettle/LWT", payloadAvailable ="Online", payloadNotAvailable ="Offline"] {
Channels:
Type switch : PowerSwitch [ stateTopic ="stat/kettle/POWER", commandTopic ="cmnd/kettle/POWER", on="ON", off="OFF"]
Type string : WarmMode [ commandTopic ="cmnd/kettle/TuyaSend4"]
Type number : temperature "Temperature [%.0f °C]" [ stateTopic ="tele/kettle/TUYARECEIVED", transformationPattern ="REGEX:(.*DpId\":5.*)∩JSONPATH:$.TuyaReceived.DpIdData∩JS:HEXtoDEC.js" ]
}
// More things here
}
If you want to add things to different files hover use the same broker connection you can do that too
Thing mqtt:topic:myMQTTBroker:Absorbar "Absorbar" (mqtt:broker:myMQTTBroker) @ "Kitchen"{
Channels:
Type switch : Power "Power" [ commandTopic="broadlink/absorbar/power", stateTopic="broadlink/absorbar/power", on="ON", off="OFF" ]
Type switch : Light "Light" [ commandTopic="broadlink/absorbar/light", stateTopic="broadlink/absorbar/light", on="ON", off="OFF" ]
Type string : Move "FAN Move" [ commandTopic="broadlink/absorbar/move" ]
Type switch : switch "Lights" [ commandTopic="zigbee2mqtt/living_room_lights/set", stateTopic="zigbee2mqtt/living_room_lights", transformationPattern="JSONPATH:$.state", formatBeforePublish="{\"state\":\"%s\"}", on="ON", off="OFF" ]
Type dimmer : dimmer "Dimmer" [ commandTopic="zigbee2mqtt/living_room_lights/set", stateTopic="zigbee2mqtt/living_room_lights", transformationPattern="JSONPATH:$.brightness", formatBeforePublish="{\"brightness\":%s}", min=0, max=255, step=1 ]
Type switch : secondswitch "Test 2Lights" [ commandTopic="zigbee2mqtt/living_room_lights/set", stateTopic="zigbee2mqtt/living_room_lights", transformationPattern="JSONPATH:$.state", formatBeforePublish="{\"state\":\"%s\"}", 1="ON", 0="OFF" ]
}
^ You can see how you can group two different technologies into one topic