MQTT V2 - creating things...Contact item/status allowed states

I’m trying to look at migrating off 2.3 OH to 2.4/2.5.
I should in the interested of moving forward, look at moving to Mqtt2. So I’m trying to make an alarm thing, with channels for all the zones. As a concept I like this as opposed to just a bunch of items.

So my topic is: paradox/states/zones/Study_PIR/open which reports a True/False.
My thing has the following channel:

Type contact : zone3 "Study"                  [ stateTopic="paradox/states/zones/Study_PIR/open:state", on="True", off="False" ]

And I have an associated item. But I can never see the item change from CLOSED to OPEN.
If I read the doco can I specify that the value of True = on and False = off as I’m trying to do in my configuration?

That’s question one. The other Is about a string state (alarm state)
Where my topic can have a value of disarmed, armed_away, armed_night. I have a string channel defined as:

Type string  : armstatehass  "Arm State"      [ stateTopic="paradox/states/partitions/Area_1/current_hass:state", allowedStates="armed_away,disarmed,armed_night" 

And I expected when I set the state of the item to disarmed2 it would complain at me as it wasn’t an allowed state.

Full thing:

// Main Light
Thing mqtt:topic:alarm "Alarm" (mqtt:broker:mosquitto) {
      Channels:
          Type contact : heartbeat "Heartbeat" [ stateTopic="paradox/interface/MQTTInterface:state", on="online", off="offline"  ]
          Type string  : armstatehass  "Arm State"      [ stateTopic="paradox/states/partitions/Area_1/current_hass:state", allowedStates="armed_away,disarmed,armed_night" ]
          Type contact : zone1 "Main Door"              [ stateTopic="paradox/states/zones/Main_door_PIR/open:state", on="True", off="False" ]
          Type contact : zone2 "Bedroom"                [ stateTopic="paradox/states/zones/Bed_room_PIR/open:state", on="True", off="False" ]
          Type contact : zone3 "Study"                  [ stateTopic="paradox/states/zones/Study_PIR/open:state", on="True", off="False" ]

    }

Full items:

Contact         alarm_connection_heartbeat2     "Alarm Connection [%s]"         <shield>        (g_alarm) { channel="mqtt:topic:alarm:heartbeat" }
Contact         alarm_zone_maindoor2            "Main Door State [%s]"          <motion>        (g_alarm,g_motion_detection) { channel="mqtt:topic:alarm:zone1"}
Contact         alarm_zone_bedroom2             "Bedroom State [%s]"            <motion>        (g_alarm,g_motion_detection) { channel="mqtt:topic:alarm:zone2"}
String          alarm_hb_state2                  "State [%s]"                                   (g_alarm)       { channel="mqtt:topic:alarm:armstatehass"}

@David_Graeff (just so you’re notified). I know you don’t use thing files but hoping you can help.

Did you already have a look at https://github.com/openhab/openhab2-addons/blob/master/bundles/org.openhab.binding.mqtt.generic/xtend_examples.md?

That part of the mqtt addon readme is still not rendered by the website, but it is all I know about .thing and .item files.

Ta, no hadn’t seen that.

Looks like my notation about is correct. Just need to get that true false going