Wifi client connection status as triggers?

The tl;dr is with modern phones you can’t achieve this without making changes to the VIP phone’s settings.

That can be turned off, at least on Android, on an SSID by SSID basis. So if OP can have the VIPs change that setting then there is a work around for that problem at least. If not OP is kind of out of luck because there will be no way to tell that a given device is one of the VIPs.

That can be done, but the “client name” is going to be the MAC address of the device. From that you can configure dd-wrt to serve out the same IP address to that device every time which will make the IP address be another “client name” you can use. Once you have that, you can use something as simple as the Network Binding to sniff the DHCP requests or just ping the IP address to see when the device is present or not.

That is essentially how I do this for presence detection. Our phones are configured to not spoof their mac address when connected to my home SSID. My router (pfSense) serves out the same IP address to each phone (which it identifies by MAC address) every time. openHAB uses arping to ping the phones and see if they are still online. I run in Docker and don’t want to run as root so dhcp sniffing isn’t an option for me.

Another approach, if these are Android phones, is to have a Tasker app publish a message to openHAB when ever it connects to the given SSID. This can be effective as it doesn’t require the changes to the phone settings, but it does require installation of an app on these phones.

This is all very much overly complicated. openHAB provides a REST API. A REST API consists of web calls. So you can have what ever just change the Item’s state from ON to OFF directly. There is no need to set up a separate server to do that. But again, the root problem is identifying the VIP’s device which will require changes to their device. After you can identify the device the problem becomes really simple and doesn’t require much more than using the Network binding.

If you did want to put this all on your dd-wrt router, you don’t need MQTT. You can use curl to update or command the Items directly. See DD-WRT Presence Detection with ARP for openHAB, Check presence based on OpenWRT WiFi clients on-line and many more examples which you should have found by searching “dd-wrt”.