Caller ID question

Hi,

I normally set caller ID for the whole company in the extensions.conf before I dial out.

However, I have a situation where a number of remote offices are using the server at head office to dial out and therefore want various caller ID numbers presented by various extensions.

I can think of various ways of tackling it but would like to get your advice on the best way.

I could have a different dialplan section for each office but that seems messy and alot of duplication / copy pasting.

I could have a single SETCALLERID for each context then a Goto to a shared dial app

I think I can even set the caller ID in the SIP.conf for each extension.

So how do YOU do it?

Thanks for your help.