There are companies that can provide this service but if you're familiar with databases, you could use SQL or MS Access to manage these. We have a simple MS Access database we've used for over 20 years that helps with managing user assignments, locations and tracking special features like 911 alerting services and call recording services. Great thing about relational databases as the data can be imported and exported and even integrated with active directory. All phone numbers for staff in our Global Address List in Outlook are generated from this database.