I am trying a new method, which involves consequence for the unacceptable behaviour. I let my dogs out on our balcony, and generally they bark (or want to) at everything... a gust of wind, a bird, a bicyclist. As I know they love the balcony, I am now telling them "if you bark, you come in!", and I'm enforcing it. They come in, door is closed. Game over. We try again later. They are improving, though I would never say I have well behaved dogs when it comes to saying hello. However, I am getting better results from this than anything else I've tried.