Patent ID: 8737586

Claim:
A method for providing communication number sharing services, the method comprising: maintaining, in a computing system, a bank of reusable caller identifiers (IDs), the bank of reusable caller IDs ranked based on usage and including one or more used caller IDs that are reclaimable based on one or more least used caller IDs; receiving, by the computing system, call details for a call to a called party from a subscriber of the computing system, the call details including a caller identifier (ID) preference of the subscriber and a called number corresponding to the called party; storing, in the computing system, the call details including the caller ID preference and the called number; determining, by the computing system, whether the call from the subscriber is a first call to the called number; responsive to the call being the first call to the called number, assigning, by the computing system, a caller ID selected from the bank of reusable caller IDs, that satisfies the caller ID preference of the subscriber, the caller ID assigned based on a determination of whether there is an available caller ID from the bank of the reusable caller IDs, and in response to the determination of no available caller ID, reclaiming a previously assigned caller ID that satisfies the caller ID preference of the subscriber, and storing, in the computing system, the caller ID assigned to the subscriber with the called number; responsive to the call not being the first call to the called number, retrieving, by the computing system, the caller ID previously assigned to the subscriber with the called number stored at the computing system; and connecting, by the computing system, the call between the called number and the caller ID previously assigned to the subscriber.