Distinctive Ringtone issue

i have asterisk running in my company and i’m using TDM400 for the 3 analog lines i’m using.
i want to do the following:
when there is an incoming call to any user i want asterisk 2 send a distinctive ring tone to the phone which is used by the user so that the user can distinguish if this call is from inside the company or from outside through analog lines or it is a transferred call (through the ring tone produced by the phone).
is there any idea about how can i do that?
thank you so much

it also done at phone or device level. other wise if ur using IP PHone with Sip Channles use this
exten => s,n(dial),SIPAddHeader(Alert-Info: )
this is example for cisoco phone. other hand on Anlaog line it depend on device & digit matching funda