Use a denounce function whose first step is to ignore the button if it has been pressed recently, and crank that time up to 30000 milliseconds.
As it happens, I very recently posted an example.
See the post, take the link to the simulation. I can't remember if the rest of the thread would be of any interest. I'm in transit, sorry to be rude and not repeat all that here.
The number to bump,up should be obvious, if not, @ me to get my attention again.