Hello there,
I have never heard of a shock collar before..and to be honest i don't like the sound of it at all
I think a distraction of some sort is the answer..a bottle filled with a few stones to shake or just a loud NO! and clapping your hands should work.
My Staffie sometimes barks at a couple of other male dogs that regularly walk past our garden gate..he has taken a dislike to these other males passing 'His territory' and he goes crazy..i just clap my hands very loudly and shout NO! i find this is enough. call your dog to you and then give a treat. Give it a try.