It depends a bit exactly what you want to do, but you can just schedule a powercli-script to remove the virtual desktops at a certain time.
Another option that I usually prefer is to handle entitlements with AD-groups.
So when you want to revoke a users access to a desktop, just remove the user from the group, that should be easy to do with a script.
// Linjo