Here's how these conversations usually go in my house: Stranger: Can I speak to Mr or Mrs Loob?
Me: Who's speaking?
Stranger: Is that Mrs Loob?
Me: Why are you asking?
Stranger: Oh, I'm not selling anything, I just want to ask you a few questions.
Me: You're wasting your time and mine. Goodbye.
So ... I wouldn't use either the past tense (Why did you call me?) or the present perfect (Why have you called me?).
I would use the present continuous (Why are you calling me? or equivalent.)