It may be frowned upon, but we communicated to our cats that meowing at the door was not acceptable by discouraging them with a vacuum cleaner. Flip the switch on the vacuum and run the cord under the door to your bed side. Upon meow, quietly plug the vacuum in to activate -- if the cat senses that you activated the device, the process doesn't work. If "the environment" doesn't want them to meow at the door, they learn quickly.
Of course give them lots of love in the morning and before bed.
I tried programming my arduino to trigger a servo to pull the handle on a spray air can when a sound over a threshold was detected by the microphone, but the servo wasn't strong enough. Enabling an outlet to an already-plugged in vacuum sounds good, though. Excellent...
I had plans to train a cat meow classifier so I wouldn't activate the can due to other noises, say a fire truck, fireworks, or a neighbor slamming a door shut.
We have one of those, they're good but the refills are strangely expensive.
Turns out they fit some standard brands of canned air, I picked up some branded "ecomoist air duster" and it works really well, although slightly quieter, it still seems to work on our kitty.
My cat hates the robot vacuum cleaner, but has also figured out she can turn it on with it's capacitive buttons to wake us up or get attention in the middle of the night...
Yeah, our cat hated the vacuum cleaner at first but having seen us using it regularly she now sleeps through it even if we hoover around her. They're pretty quick to accept things when they associate it with a trusted person.
Of course give them lots of love in the morning and before bed.