SmartApp to help arm/disarm Vista panels using the Konnected interface kits

I got a Konnected pro interface kit recently and eventually got it set up so that I can arm/disarm and see the current arming and burglar status for my Vista 20P. I added arm and disarm device actions to all my sleep/wake automations. All that set up is a whole other discussion but bottom line it was working very well.

Normally, in the morning, I have things set to disarm the alarm at 8AM. This morning, someone manually disarmed the system at the panel to leave the house early and because the Vista panels don’t have an explicit “disarm” command (you have to send an arming command to disarm it when it’s already armed) the panel armed itself at 8AM. (instead of re-disarming or doing nothing)

I tried creating some automations and virtual switches to deal with this but it got complicated so I decided this would be a good time to figure out how smart apps work.

This is the thing I made:
SmartThings/STKonnectedKontrol.groovy at main · dwiller11/SmartThings (github.com)

I don’t really know what language I’m using here (Groovy?) or really even halfway what I’m even doing or how github works but hopefully it’s all more or less in order and might help someone in the same boat.