`DeFazio et al.
`
`USOO5940484A
`Patent Number:
`11
`(45) Date of Patent:
`
`5,940,484
`Aug. 17, 1999
`
`54
`
`(75)
`
`SELF-PROVISIONING NAMES DATABASE
`FOR CALLER DENTIFICATION SERVICES
`
`Inventors: Pamela Lilly DeFazio, Ocean; Joseph
`J. Serinese, Bridgewater, both of N.J.
`Assignee: AT&T Corp., Middletown, N.J.
`
`Appl. No.: 08/846,076
`Filed:
`Apr. 25, 1997
`Int. Cl. ............................ H04M 1156; HO4M 15/06
`U.S. Cl. ....................... 379/142; 379/93.23; 379/127;
`379/229
`Field of Search ..................................... 379/112, 115,
`379/121, 122, 125, 127, 130, 134, 136,
`137, 139, 140, 142, 45, 93.14, 93.17, 93.23,
`93.25, 111, 120, 128, 133, 242, 247, 93.01,
`143,354, 355, 207, 201; 455/415, 433,
`575, 566-567
`
`56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`1/1996 Gutierrez et al. ....................... 379/221
`5,481,603
`5,526,406 6/1996 Luneau .............
`... 379/142
`5,568,546 10/1996 Marutiak ......
`... 379/355
`5,592,546
`1/1997 Takahashi ............................... 379/355
`
`5,734,706 3/1998 Windsor et al. ........................ 379/142
`5,748,724 5/1998 Sonnenberg ............................ 379/212
`5,754,636 5/1998 Bayless et al. .
`379/142
`5,761,278 6/1998 Pickett et al. ............................. 379/45
`5,764,747 6/1998 Yue et al. ............................. 379/88.22
`
`Primary Examiner-Curtis A. Kuntz
`ASSistant Examiner Binh K. Tieu
`57
`ABSTRACT
`A Self-provisioning names database adds new names to a
`database for associating names to calling address data in a
`caller identification with name delivery Service. A new
`caller's name is added to the database each time the new
`caller places a call to a Service Subscriber. The database
`reaches only a nominal size in accordance with Perado's rule
`that approximately 80% of incoming calls to a subscriber
`will be from the same Small group of callers. Alternatively
`or in addition, a new party's name is added to the database
`each time a Service Subscriber places a call to a party whose
`name is not already in the names database. Caller names that
`have been Stored in the database and not retrieved for a long
`period of time are discarded to Store new names. Also, the
`database may periodically request updated data for a Stored
`name, for example, to determine if a different telephone
`number or address has been assigned to the given name data.
`
`33 Claims, 5 Drawing Sheets
`
`AIN SCP
`WITH
`SACID
`
`
`
`
`
`
`
`NATIONAL
`NAMES
`DB
`
`
`
`
`
`
`
`
`u? N.
`2-
`Y PUBLIC
`SWITCHED
`\ NETWORK
`N
`
`
`
`
`
`CALLING
`PARTY
`
`IPR2020-00200
`Apple Inc. EX1007 Page 1
`
`
`
`U.S. Patent
`
`Aug. 17, 1999
`
`Sheet 1 of 5
`
`5,940,484
`
`
`
`NATIONAL
`NAMES
`DB
`
`
`
`AIN SCP
`WITH
`SACID
`
`
`
`2\--/ N
`\
`PUBLIC
`w
`s
`M
`\
`-
`
`
`
`1.
`
`CALLING
`PARTY
`
`3
`
`4
`
`4a
`
`FIG. 2
`
`TYPICAL FIELD IN ANAMES RECORD IN A SACID
`
`PHONE NUMBER
`
`NAME
`
`NUMBER OF HITS
`
`DATE OF LAST HIT
`
`DATE LOADED
`
`2O1
`
`202
`
`203
`
`204
`
`205
`
`IPR2020-00200
`Apple Inc. EX1007 Page 2
`
`
`
`U.S. Patent
`
`Sheet 2 of 5
`Aug. 17, 1999
`FIG. 3A
`CALLER A INITIATES A CALL TO CALLED PARTY B
`
`5,940,484
`
`301
`
`302
`
`303
`
`304
`
`305
`
`
`
`306
`
`307
`
`308
`
`309
`
`ORIGINATING LOCAL SWITCH, C, BASED ON THE DIALED DIGITS
`RECEIVED FROM THE TELEPHONE OF CALLER A,
`BEGINS SIGNALING TO ESTABLISHA CIRCUIT BETWEEN
`CALLERA AND CALLED PARTY B. THE SIGNALING INFORMATION
`INCLUDES THE CALLING PARTY NUMBER OF CALLERA (CgPN-A)
`AND THE CALLED PARTY NUMBER OF CALLED PARTY B (CPN-B)
`
`THE CALL MAYBE ROUTED WIA ONE OR INTERMEDIATE SWITCHES
`IN ONE OR MORE PUBLIC SWITCHED NETWORKS, J
`
`THE CALL WILL TERMINATE AT TERMINATING END OFFICE, D.
`D WILL RECEIVE SIGNALING INFORMATION TO COMPLETE
`THE CALL, INCLUDING CdPN-BAND CQPN-A
`
`TERMINATING END OFFICE, D, WILL DETERMINE THAT CALLED
`PARTY B HAS PRE-SUBSCRIBED TO THE CALLING NAME DELIVERY
`SERVICE, USING A PROVISIONED TRIGGER
`
`THE PROVISIONED TRIGGER WILL CAUSE THE TERMINATING
`END OFFICE, D, TO CREATE AND SEND AN SS7 OUERY FOR PROCESSING
`THE OVERY WILL INCLUDE A SERVICE INDICATOR FOR CALLING
`NAME DELIVERY SERVICE AND CQPN-A
`
`THE SS7 NETWORK, K, USING GLOBAL TITLE TRANSLATION ROUTES
`THE QUERY TO SS7 PROCESSOR, F, FOR PROCESSING
`
`SS7 PROCESSOR, F, CHECKS ITS NAMES DATABASE, I FOR A MATCH WITH
`CgPN-A. IF A MATCH IS FOUND, GO TO STEP 316; OTHERWISE, PROCEED
`
`TEP
`
`IF NO MATCH IS FOUND, SS7 PROCESSOR, F, INITIATES A QUERY, VIA A
`STANDARD INTERFACE (e.g. TCP-IP) TO NAMES PROCESSOR, G,
`THE OVERY WILL INCLUDE CgFN-A
`
`TO STEP 310
`
`IPR2020-00200
`Apple Inc. EX1007 Page 3
`
`
`
`U.S. Patent
`
`Aug. 17, 1999
`
`Sheet 3 of 5
`
`5,940,484
`
`FIG. 3B
`
`FROM STEP 309
`
`NAMES PROCESSOR, G, LOOKS UP CQPN-A,
`TO DETERMINE THE CORRESPONDING NAME-A
`
`NAMES PROCESSOR, G, CREATES AND SENDSA OVERY RESPONSE
`CONTAINING THE CgPN-A. AND NAME-A TO SS7 PROCESSOR. F
`
`SS7 PROCESSOR, F, CREATES AND SENDS A QUERY RESPONSE
`VIA THE SS7 NETWORK, K, TO TERMINATING END OFFICE, D.
`THE RESPONSE CONTAINS THE NAME-A
`
`SS7 PROCESSOR, F, REPLACES THE ENTRY IN NAMES DATABASE I WITH THE
`LEAST NUMBER OF OUERIES AND THE LEAST RECENT OUERY FOR ENTRIES
`WITH THE SAMENUMBER OF QUERIES) WITH THE CgPN-A AND NAME-A
`ENTRY. THE CURRENT DATE WILL BE POPULATED IN THE FIELDS FOR
`DATE LOADED 205 AND DATE OF LAST HIT 204, AND THE OUERY
`COUNTER (NUMBER OF HITS FIELD 203) WILL BE SET TO (1)
`
`TERMINATING END OFFICE, D, COMPLETES THE CALL TO CALLED PARTY
`B AND SENDS NAME-A DATA TO CALLED PARTY B'S CALLING NAME DELIVERY
`DISPLAY BOX, H, USING IN BAND OR ISDN SIGNALING
`
`DISPLAY BOX, H, INTERPRETS THE INCOMING SIGNAL AND
`DISPLAYS CALLING PARTY AS NAME THIS IS THE END OF
`THE FLOW FOR CQPN's NOT IN NAMES DATABASES, I
`
`310
`
`311
`
`312
`
`
`
`313
`
`314
`
`315
`
`IPR2020-00200
`Apple Inc. EX1007 Page 4
`
`
`
`U.S. Patent
`
`Aug. 17, 1999
`
`Sheet 4 of 5
`
`5,940,484
`
`FIG. 3C
`
`FROM STEP 308
`
`NJ (STEP FOLLOWING STEP308). IF A MATCH IS FOUND IN NAMES DATABASE,
`I, TOMATCH WITH CQPN-A, THEN SS7 PROCESSOR, F, CREATES AND
`SENDS AN SS7 OVERY RESPONSE, VIA THE SS7 NETWORK, K,
`CONTAINING NAME-A, TO TERMINATING END OFFICE, D
`
`317
`
`318
`
`
`
`401
`
`402
`
`403
`
`THE ENTRY FOR SA IN NAMES TABLE, I, IS UPDATED THE
`QUERY COUNTER FIELD IS INCREMENTED BY ONE AND THE
`EXISTING DATE FIELD IS REPLACED WITH THE CURRENT DATE
`
`STEPS 314 AND 315 ARE COMPLETED THIS IS THE END OF
`THE FLOW FOR CQPN's IN THE NAMES DATABASE, I
`
`FIG. 4
`
`IF THE DATE LOADED FIELD 205 FOR AN ENTRY (e.g. COPN-L) IN
`NAMES DATABASE, I, ISOLDER THAN A TO-BE PROVISIONED TIME
`(e.g. ONE MONTH) THEN, THE SS7 PROCESSOR, F, WILL CREATE
`AND SEND A QUERY TO NAMES PROCESSOR, G, FOR ANUPDATE
`
`IF THE NAME, NAME-L MATCHES EXISTING NAME FIELD 202
`FOR COPN-L, THEN, THE DATE LOADED FIELD 205 ISUPDATED TO
`THE CURRENT DATE ALL OTHER FIELDS REMAIN THE SAME
`
`IF THE NAME, NAME-L DOES NOT MATCH THE EXISTING NAME FIELD
`FOR ENTRY CQPN-L, THEN, THE NAME FIELD 202 IS UPDATED
`WITH THE NAME-L PROVIDED BY THE NAMES
`DATABASE, F,
`AND THE DATE LOADED FIELD 205 IS UPDATED TO THE CURRENT DATE
`
`IPR2020-00200
`Apple Inc. EX1007 Page 5
`
`
`
`U.S. Patent
`
`Aug. 17, 1999
`
`Sheet 5 of 5
`
`5,940,484
`
`FIG. 5
`
`
`
`TCP/IP
`
`IPR2020-00200
`Apple Inc. EX1007 Page 6
`
`
`
`1
`SELF-PROVISIONING NAMES DATABASE
`FOR CALLER DENTIFICATION SERVICES
`
`BACKGROUND OF THE INVENTION
`
`1. Technical Field
`This invention relates to telecommunications Services for
`providing caller identification information to a called party
`and, more particularly, to a Self-provisioning names database
`for Such Services.
`2. Description of the Relevant Art
`Over the years caller Services have increased due to the
`computerization of telecommunications Services. For
`example, one Such Service that is now provided to telecom
`munications SubscriberS is caller identification. As a caller
`places a telecommunications call to a called party and enters
`address Signaling data for Signaling the called party, both the
`calling party's telephone number and the called party's
`telephone number are transmitted to the telecommunications
`Switch, typically a Lucent Technologies #5ESS electronic
`Switch, Serving the called party. AS the called party's line
`rings, the Switch Serving the called party also provides data
`to the subscriber loop or trunk to the subscriber's premises
`which can actuate a display to display the calling party's
`telephone number at the called party's premises.
`Since the introduction of the caller identification service
`by telephone number, local operating telephone companies
`have also offered a related Service for providing the name of
`the calling party. Subscribers to Such a Service are provided
`a display of both the telephone number and name of the
`calling party for an extra fee. The local operating telephone
`company will generate a query during a call of a remote
`billing database, for example, a database maintained by the
`operating telephone company Serving the calling party, to
`perform a number to name translation and forward the name
`data to the calling party along with the telephone number for
`display. Others besides the operating telephone companies
`may maintain a similar database that may attempt to main
`tain a names list, for example, for all the telephones in an
`entire country or region thereof. Of course, any Such entity
`may charge for access to Such a regional or national database
`that it maintains.
`A problem persists, however, in that in providing Such
`name identification Services, the local operating telephone
`companies must rely on other telephone companies or
`national database acceSS providers to provide the name
`information. Also, the information may not be provided in
`time to be signaled via a subscriber's display before the
`Subscriber must answer the phone. Finally, the costs of
`providing Such a Service may become high in relation to the
`perceived value to the customer. Consequently, there
`remains a need in the art to provide a caller identification by
`number and name Service that is economical and efficient.
`
`SUMMARY OF THE INVENTION
`A Self-administering caller identification and names data
`base provides an efficient and cost-effective database that
`translates the calling party's telephone number to the name
`of the person listed as the subscriber to that telephone
`number. The database may utilize advanced intelligent net
`work (AIN) or other related or similar services for obtaining
`at least the telephone number of the calling party. The
`database relies on a principle that has evolved over time
`known as Perado's rule in the art of telecommunications
`traffic administration. That principle relates to the Statistic
`that Some 80% of incoming calls to a residence or even a
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`5,940,484
`
`2
`business location will be from the Same, Small group of
`callers. In Some instances, the percentage can reach 90%. A
`local operating telephone company Services only a portion
`of a total national population. Thus, the local company need
`not maintain a particularly large names database for its
`Subscribers.
`A local operating telephone company or a private entity
`may apply Perado's rule to provision of a number plus
`names database either for their Subscribers. For example, the
`entity may provide Such a database as close to the Served
`Subscriber as possible, for example, in association with the
`serving telecommunications switch, typically a #5ESS
`Switching System manufactured by Lucent Technologies,
`Inc. or with a private branch exchange or Station apparatus.
`For example, if ten thousand Subscribers are served by the
`Switch and a calculable portion of them subscribe to caller
`number plus names Service, then, the database can be
`Sufficiently Small to be easily maintained and locally admin
`istered and provisioned.
`The Self-administering caller identification and names
`database creates itself by Storing and maintaining the results
`of queries to other databases. When a call is placed to a
`Subscriber to the names database Service, the database will
`first query itself, but, if no name can be retrieved, the
`database generates a query of a remote database. If the
`Search is Successful and there is a response to the query, it
`is Stored in the names database along with a time and date
`Stamp and a count of the number of times Since first entered.
`Other callers may receive calls from the same caller, but the
`name of that caller is typically Stored only once in the names
`database. Thus, the database may be shared by all subscrib
`ers to the names database Service and database memory is
`conserved. If the Search provides a name quickly enough,
`the name with or without the calling telephone number can
`be timely transmitted to the names identification Service
`Subscriber and displayed.
`A corollary to Perado's rule may be stated as follows:
`80% or more of outgoing calls from a calling party will be
`placed to the same Small group of called parties. Moreover,
`it likely follows that this Same Small group of called parties
`will be placing calls to that same calling party.
`Consequently, the names database may be built by querying
`for a name on the event of either an incoming call or an
`outgoing call or either form of call and adding the name to
`the database.
`AS calls are placed by or to those Subscribers who
`Subscribe to the names database Service, the names database
`should begin to fill. Once full, the database must provision
`or maintain itself by deleting the oldest information. For
`example, the name record with either the fewest number of
`hits or the longest time Since last accessed or a combination
`of Such events are likely candidates for deletion. Telephone
`Service SubscriberS move locations, and their telephone
`numbers are reassigned. Consequently, the database peri
`odically audits data and purges names and associated data
`entries that have not placed calls to Subscribers who Sub
`Scribe to the names database Service within a predetermined
`period of time. On the other hand, the names database should
`be provisioned to grow in proportion to the popularity of the
`names Service and the number of network SubscriberS Served
`at the Serving central office, of extensions of the private
`branch exchange or Station apparatus associated with the
`names database.
`Besides being located at a Serving central office or another
`location close in the network to the Subscriber, the database
`of the present invention may be maintained at a private
`
`IPR2020-00200
`Apple Inc. EX1007 Page 7
`
`
`
`5,940,484
`
`3
`branch exchange and Shared among parties at extensions of
`the private branch exchange. Also, with ISDN service
`growth, Station apparatus Serving individual residences or
`groups of Subscribers may have associated Self
`administering databaseS as described herein.
`Further details and features of the Self-provisioning data
`base for Storing names of callers for display at called party
`premises may be understood from a careful reading of the
`detailed description thereof which follows.
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1 is a typical System diagram showing the Self
`provisioning names database associated with a local tele
`communications Switch.
`FIG. 2 shows a typical field for a names record of the
`Self-provisioning database.
`FIG. 3 is a flowchart showing typical caller flow;
`FIG. 4 is a typical flowchart describing the self
`provisioning feature of the database.
`FIG. 5, similar to FIG. 1, provides a more detailed system
`block diagram for describing one System implementation of
`the database for use in explaining the flowcharts of FIG. 3
`and 4.
`
`DETAILED DESCRIPTION
`Referring to FIG. 1, there is shown a typical system
`diagram for describing the database of the present invention.
`A calling party 1 places a call through the public Switched
`telephone network 2 and is ultimately connected to a local
`Switch 3 Serving a called Subscriber 4 having a telephone and
`an associated caller identification display unit 4a. A number
`to name translation database 5 may comprise a database of
`a personal computer equipped with private line or Switched
`modem access to local Switch 3. Database 5 may be pref
`erably located as close to the called Subscriber 4 as possible
`and may be located, for example, at a central office Serving
`the Subscriber 4, at a private branch exchange (not shown)
`or on the customer's premises. Also associated with the
`names database 5 there is shown a separate link to a typical
`national or other names database 6. Names database 6
`typically on request of Switch 3 performs a translation from
`a telephone address Such as a telephone number or Internet
`address to a name and forwards fro display on display 4a.
`Now, in order to build a local names database 5 according
`to the present invention, the names translation result is
`reported to the database 5 on request.
`There may be more than one Such names database 5 under
`processor control, for example, one for each local telephone
`operating company, Internet Service provider, private branch
`eXchange owner, Station apparatus owner or other alternative
`database. Each performs the Similar function of converting
`an address to a name and reporting the result.
`Referring to FIG. 1, the operation of the names database
`5 will be briefly explained. When a caller first calls a
`database subscriber 4 (one who subscribes to the names
`database Service), the local Switch (or private branch
`exchange Switch) is unable to forward an associated name to
`the Subscriber display apparatuS 4a. It can forward other
`information known of the calling party Such as a calling
`party's address or telephone number.
`The local Switch (or private branch exchange Switch)
`requests the names database 5 to provide Such a name.
`Database 5 queries itself, but, finding no name in its database
`asSociated with the calling party's address, database 5 ini
`tiates a further query to national database 6. If no response
`
`4
`is forthcoming from database 6, the database 5 may request
`the information of an alternative database like a database
`(not shown), for example, of a local operating telephone
`company or a private names database.
`If a name reply is retrieved, an entry is recorded in the
`self-provisioning names database 5 in conformity with FIG.
`2. FIG. 2 suggests that the data record for database 5
`comprise a telephone number (or Internet address) 201, a
`name associated with the number or address 202, a count or
`number of hits 203, a date and time of the last hit 204 and
`a date and time of the first hit or when originally the name
`record was loaded 205 into the names database 5. A group
`of SubscriberS Share names database 5 So that a name of a
`caller, even if the caller calls more than one Subscriber, is
`typically only Stored in the database once.
`Now, in an embodiment not shown, there may be plural
`names associated with a single number or a nickname Such
`as “mom” or “dad” that may be added/modified by a
`Subscriber through a Secure dial-in connection via the Inter
`net or a telecommunications link to the names database 5.
`For example, if (540) 349-1757 represents the telephone
`number for “mom” and "dad”, an associated Station appa
`ratus display 4a may indicate “mom and dad' in Stead of
`their directory listing names either together with their phone
`number or in place of their telephone number if a call is
`either directed to or from them. On the other hand, if called
`party A and called party B, who both Subscribe to the names
`database Service of the present invention, receive a call from
`the same calling party C, the name of calling party C may
`only appear once in the database 5 in order to Save data
`Storage capability in the database 5. Consequently, providing
`nicknames or plural names in the database for the same
`calling party C requires additional memory. The record of
`FIG. 2 would have to be modified to permit personalization
`information. This information would include the Subscrib
`er's telephone number and their personal name for Name
`field 202. An additional fee may be charged for the plural
`name Storage or nickname Storage Service. The field or
`display size of display 4a may be varied accordingly to
`accommodate alternate names, plural names or nick names
`as appropriate.
`For the first call to a subscriber or by that subscriber, the
`database 5 may already have the name of the other party than
`the Subscriber in their database because another Subscriber
`may have already placed a call or received a call from that
`party. If not, a query must be made of database 6. If a reply
`is received from database 6 before the Subscriber 4 answers
`the call, the display 4a can be updated with the name of the
`calling party stored in the database 6 for the number of the
`caller. Also, the name received from database 6 is added to
`database 5 according to the Suggested format for Name 202
`of FIG. 2 along with their Phone number 201 and date
`loaded 205. More importantly, the next time that named
`caller calls subscriber 4 or any other subscriber to the names
`database 5, no query need be formulated of any database 6
`from database 5. The self-provisioning database 5 simply
`updates the count of the number of hits 203 (FIG. 2) from
`one to two and the date of the last hit 204 to the current date,
`and time and the expense of a query of database 6 is Saved.
`In accordance with the above discussion, the Storage of a
`name or the updating of a name file according to FIG. 2 is
`initiated on a call that terminates with a Subscriber 4 of the
`present names database 5. In an alternative embodiment, the
`initiation of the Storage of a name or a file update can be
`triggered by an outgoing call by a Subscriber to the present
`database 5. That is, when a Subscriber 4 initiates a call, the
`name query will be made of database 6 unless the telephone
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`IPR2020-00200
`Apple Inc. EX1007 Page 8
`
`
`
`5,940,484
`
`15
`
`25
`
`S
`number 201 is already in the database 5. According to an
`extension of Perado's Rule, the called name will likely be a
`frequent caller to the subscriber 4. Database 5 will store or
`update a record according to FIG. 2 and be able to identify
`the name of the party the next time the called party calls the
`Subscriber. In a further embodiment, the called party's name
`can be added to the database or the number of hits incre
`mented and the date of last hit updated in either the event of
`a call by Subscriber 4 to the named called party or when the
`called party calls the Subscriber 4. On an outgoing call,
`displaying the name of a called party at Subscriber display 4a
`provides feedback that the Subscriber dialed the correct
`telephone number by providing the called party's name
`(which can Supplement a display dialed number
`arrangement).
`Referring to FIG. 3, the call process will be described in
`greater detail with reference to FIGS. 1 and 2 and FIG. 5. In
`the described embodiment, the addition of a name to the
`database is triggered by the placement of an incoming call
`to a Subscriber to the database 5 of FIG. 1. An embodiment
`in which the addition of a name to database 5 is triggered by
`an outgoing call or either an incoming call or outgoing call
`is not shown but may be easily implemented by one of
`ordinary skill in the art and without having to resort to undue
`experimentation.
`FIGS. 3 and 5, similar to FIG. 1, describes a particular
`implementation of the calling party/names Self-provisioning
`database 5 but implemented in a Signaling System 7 (SS7)
`environment. Similar reference numerals are used in FIG. 5
`to denote similarly depicted elements in FIG. 1. FIG. 3A
`describes steps 301–309 of the process; FIG. 3B describes
`steps 310-315 of the process; and FIG. 3C describes steps
`316–318 of the process. Arrows are used generally to
`indicate process flow; however, the process flow should not
`be deemed to be limited to the depicted process as Steps may
`occur either before or after other steps in the flow. For
`example, steps 312 and 313 may be reversed in order and
`time among others.
`Referring to FIG. 3, at step 301, a caller A initiates a call
`to called party B. Schematically, caller A may be calling
`party 1 and called party B, Subscriber apparatus 4, according
`to FIG. 1.
`At step 302 and referring to FIG. 5, originating local
`switch C (a part of the public Switched network cloud 2 of
`FIG. 1), based on the dialed digits received from caller A,
`begins signaling to establish a voice/data link between caller
`A and called party B connected to a terminating central
`office D, designated local Switch 3. The Signaling
`information, including calling party number of caller A
`50
`(CgPN-A) and the called party number of called party B
`(CdPN-B), is forwarded to local Switch 3 via a signaling
`link.
`At step 303, the call may be routed via one or more
`intermediate Switches in one or more public Switched tele
`phone networks J (cloud 2) to local switch 3. These switches
`may comprise tandem Switches and/or toll centers where
`Voice/data links known as trunks are provided via Satellite,
`optic fiber, coaxial cable, land-based microwave and other
`facilities known in the art (not shown).
`At Step 304, at least a signaling link will be terminated at
`local Switch 3 and, via the Signaling link, at least the
`terminating central office D (switch 3) will receive the
`calling party telephone number or address CgFN-A and the
`called party number or address CdPN-B.
`At step 305, the terminating office D (switch 3) will first
`determine what Services, if any, the called party B has
`
`6
`Subscribed to, for example, the caller identification including
`name Service of the present invention and referred to in the
`drawing as Calling Name Delivery Service. This may be
`accomplished by local Switch 3 referring to a local Service
`database (not shown) which associates a called party with
`the services they have subscribed to.
`At step 306, to determine the services subscribed to by
`called party B, a database controller may perform a Service
`look-up query from local Switch 3. If the called party B is a
`Subscriber to the caller name Service, then, the local Switch
`3 initiates the creation and transmittal of an SS7 or related
`query for processing. The query may include a Service
`indicator for the present Service (for example, shorthand data
`representing Caller Name Delivery if the service is so
`named) and the calling party's telephone number CgFN-A.
`At step 307, the SS7 network K, using, for example,
`Global Title Translation or related translation service, routes
`the query to a first SS7 processor F for processing. Processor
`F may be associated with database 5 shown in FIG. 1.
`Processor F may have a local names database, I.
`Alternatively, the SS7 network K, using, for example, Glo
`bal Title Translation, might route the query to another,
`perhaps regional SS7 processor, m, having a names
`database, N.
`At step 308, processor F checks its Name Database I
`(name database 5) for a match with CgFN-A. If a match is
`found, then, call progreSS Steps to Step 316 below. If not, call
`progress proceeds with step 309.
`At step 309, when no match is found, the SS7 processor
`Finitiates a query via, for example, a standard interface (e.g.
`telecommunications protocol/Internet Protocol (TCP/IP)
`interface) to Names Processor G associated with a database
`6, which may be a national or other regional database or
`private database. The query should include the CgFN-A
`information, including area and even country code as
`required internationally to uniquely identify a calling
`Subscriber, Name-A.
`Names processor, G, at step 310 looks up CygPN-A to
`determine the corresponding Name-A.
`At Step 311, names processor G creates and transmits a
`query response containing CgFN-A and Name-A to SS7
`Processor F (if it can).
`At step 312, the SS7 processor F, responsive to receipt of
`the names processor response, creates and transmits a related
`query response via the SS7 network K to terminating end
`office D (local switch 3). The response includes Name-A.
`At step 313, the SS7 processor F replaces the entry in
`Names Database I (database 6) with the least number of
`queries and the least recent query (for entries with the same
`number of queries) with the CgFN-A, Name-A entry and
`other data per FIG. 2. In particular, the current data will be
`populated in the fields for date loaded and date of last hit,
`and the query counter (number of hits field) will be incre
`mented by one (and for the first hit be recorded as 1).
`In furtherance of step 313, the conditions for replacement
`of old data may vary from requiring both least number of
`queries and least recent query to one or the other or other
`criteria that may developed therefrom Such as number of hits
`over most recent unit of time (for example, number of hits
`in the last three month period).
`In step 314, terminating end office D completes the call to
`called party B and sends Name A data to Called Party B's
`display using, for example, in-band, ISDN or other Signaling
`CS.
`At step 315, the display box of apparatus 4 interprets the
`incoming Signaling data and displays calling party A's
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`IPR2020-00200
`Apple Inc. EX1007 Page 9
`
`
`
`7
`name. Step 315, thus, is the end of caller name processing
`if the name is not already stored in database 5.
`At step 316, following step 308, if a match is found in
`database 5, Names Database, I, to match with CgFN-Athen,
`SS7 Processor F creates and transmits an SS7 query
`response via SS7 network K containing Name-A to termi
`nating central office switch D (switch 3).
`At step 317, the entry for CgFN-A in the Names Table is
`updated per FIG. 2, the count of hits 203 incremented by
`one, the date of this hit recorded as the last hit 204 and So
`O.
`Step 318 relates to the display of the data at the Subscriber
`apparatus 4 and So relates to the performance of StepS 314
`and 315. This is the end of call flow for CPN in the Names
`Database I (database 5).
`A slight variation relates to a situation when a first
`database 6 fails to provide a Name for a calling party. AS
`described above, a TCP/IP query may result in a query of
`more than one database, but even these may come up empty.
`Then, a back-up list of databases may be contacted for
`Name-A by other than a TCP-IP query, for example, by way
`of a dial up connection to a private database. The name that
`is eventually retrieved may not be timely retrieved So it can
`be displayed in this call, but it may be locally stored in
`database 6 for the next call from that calling party A.
`Note that as calls are completed to the local Switch 3 and
`its group of Subscribers to names Services, the database will
`efficiently collect, Store and maintain names that are likely
`candidates for repeats or hits according to Perado's Rule.
`Consequently, the names database should reach a size that
`becomes only dynamic in the Sense that the desire for the
`Service may grow. The Subscriber likely will continue to
`receive calls from the same calling parties. So once the
`database is grown and learned, it assumes a relatively stable
`size. Old names are automatically deleted and, often times,
`will be deleted, not so much because they have not called
`recently, but because, in fact, they have moved or changed
`telephone numbers.
`Referring now to FIG. 4, the non real-time self
`provisioning feature of the database 5 will be further
`described. In addition to the real-time provisioning feature
`where the database 5 learns as described above the names of
`calling parties that are likely callers of called party 4, a
`non-real-time background provisioning activity is needed
`and described by FIG. 4. This activity accounts for numbers
`that have been reassigned to new users.
`According to step 401 and again referring to FIG. 5, if the
`date loaded field for an entry (for example, CgFN-L) to
`Names Database I (database 5) is older than a to-be
`provisioned time (for example, one month), then the SS7
`processor F will create and transmit a query to Names
`Processor G (database 6) for an update.
`At Step 402, if the name, Name-L, matches an existing
`name field Name for CgFN-L, then the Date Loaded field
`205 is updated to the current date and all other fields remain
`the same.
`At step 403, if the name Name-L does not match the
`existing name field Name 202 for entry CgFN-L, then the
`Names field 202 is updated with the Name-L provided by the
`Names Database F and the Date Loaded field 205 is updated
`with the current date.
`In this manner, off-line, the value of the names data Stored
`locally in database 5 can be perio