One of the things I taught in my obedience classes was something I learned in my Psych class. Give the command and enforce it Each and Every time. We tend to get lazy with pets and kids. I remember when I was a child (yeah years and years ago) in my neighborhood our parents would call us to come home from playing. You know the drill, nope they don't sound like they mean it yet. It's easy to nag at our pets and kids. Fluffy sit, sit Fluffy, now I want you to sit, now sit, sit sit sit Sit SIT SIT SIT Darnit. One command, then enforce it. We have to get off our butts and make sure the pet sits. Same with kids. No you can't go to Joey's house. That's it. Let them whine, throw a tantrum. Doesn't matter, they don't go to Joey's house.
If you call your dog, then you have to be prepared to make sure your dog will understand the command and respond. I raise Sighthounds (Irish Wolfhounds to be exact). People are surprised when my dogs listen to what I say to them. It's because they think my arms are long enough to enforce what I say. I'm not mean to them, but if I tell them to be quiet, I expect them to be quiet. If they are chasing a bunny and I call them off, I expect them to come back to me. I never give a command that I cannot enforce in one way or another. If you start when they are young, you will enjoy them when they're old.
Funny how my friends' kids depend on me to tell them exactly how it is...... children and pets really like consistency. They will test the boundaries but are reassured when they know exactly where they are.....always.
Slinky