Use AI to identify callers from shared phone numbers

When we receive incoming calls, the system recognises the caller based on the phone number if it matches a contact. Problem is several contacts have a shared office number. If I get a call from one of these it just randomly assigns the ticket to the first contact it finds. It would be great, if multiple contacts use an incoming phone number, if it could either ask you which of those contacts to put on the ticket or, even better, use AI to work out who the correct caller is and assign the right contact. Thanks!