Prosecution Insights
Last updated: August 17, 2026
Application No. 18/908,431

METHODS AND SYSTEMS FOR ALLOCATING TELEPHONE NUMBERS

Non-Final OA §103§DOUBLEPATENT
Filed
Oct 07, 2024
Priority
Nov 02, 2020 — continuation of 12/171,048
Examiner
IQBAL, KHAWAR
Art Unit
Tech Center
Assignee
Comcast Cable Communications LLC
OA Round
1 (Non-Final)
73%
Grant Probability
Favorable
1-2
OA Rounds
1y 7m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 73% — above average
73%
Career Allowance Rate
479 granted / 657 resolved
+12.9% vs TC avg
Strong +29% interview lift
Without
With
+29.3%
Interview Lift
resolved cases with interview
Typical timeline
3y 5m
Avg Prosecution
25 currently pending
Career history
682
Total Applications
across all art units

Statute-Specific Performance

§101
3.2%
-36.8% vs TC avg
§103
55.6%
+15.6% vs TC avg
§102
29.1%
-10.9% vs TC avg
§112
5.1%
-34.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 657 resolved cases

Office Action

§103 §DOUBLEPATENT
Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Double Patenting The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP §§ 706.02(l)(1) - 706.02(l)(3) for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp. Claims 1-26 are rejected on the ground of nonstatutory double patenting as being unpatentable over claim 1-20 of U.S. Patent No. 12171048 B2. Although the claims at issue are not identical, they are not patentably distinct from each other, take an example of claim 1 of the U.S. Patent No. 12171048 B2 and claim 1 of the Pending application (Please see the Table below): US Patent NO 12171048 B2 Pending application 18908431 Reasoning 1. A method comprising: receiving, from a network, a request for a telephone number, wherein the request comprises an identifier of a user device associated with a requested communication session; determining a telephone number from a group of available telephone numbers; sending, to the network, the telephone number; associating the telephone number with a group of allocated telephone numbers, wherein the group of allocated telephone numbers comprises telephone numbers that are in use by a user device for a communication session; and associating, based on an indication that the requested communication session is terminated, the telephone number with a group of reserved telephone numbers for a time period, wherein the group of reserved telephone numbers comprises telephone numbers that are associated with a user device for a time period after a communication session and are removed from the group of allocated telephone numbers, and wherein during the time period the telephone number may be used for one or more communication sessions associated with the identifier. 2. The method of claim 1, wherein determining the telephone number from the group of available telephone numbers comprises determining that the telephone number is a next telephone number in a cycle of telephone numbers within the group of available telephone numbers, wherein the cycle comprises at least one of: a first-in-first-out (FIFO) cycle of the telephone numbers within the group of available telephone numbers, a last-in-first-out (LIFO) cycle of the telephone numbers within the group of available telephone numbers, or a round-robin cycle of the telephone numbers within the group of available telephone numbers. 3. The method of claim 1, wherein associating the telephone number with the group of allocated telephone numbers comprises storing an indication that the identifier is associated with the telephone number. 4. The method of claim 1, wherein the group of allocated telephone numbers further comprises telephone numbers that are removed from one or more of the group of available telephone numbers or the group of reserved telephone numbers. 5. The method of claim 1, wherein the group of reserved telephone numbers further comprises telephone numbers that were previously used by a user device for another communication session. 6. The method of claim 1, wherein associating the telephone number with the group of reserved telephone numbers comprises storing an indication that the identifier is associated with the telephone number that is associated with the time period. 7. The method of claim 1, further comprising: receiving, from the network, another request for a telephone number, wherein the another request comprises the identifier of the user device; determining, based on the identifier, that the identifier is associated with the telephone number assigned to the group of reserved telephone numbers; sending, to the network, the telephone number; and associating the telephone number with the group of allocated telephone numbers. 8. The method of claim 1, wherein the one or more communication sessions comprise one or more communication sessions initiated by the user device and one or more communication sessions initiated by another user device. 9. The method of claim 1, further comprising: determining, based on an indication that another communication session associated with the telephone number is terminated, a status of the time period; associating the telephone number with the group of reserved telephone numbers if the status of the time period indicates that the time period is active; and associating the telephone number with the group of available telephone numbers if the status of the time period indicates that the time period is expired. 10. A method comprising: receiving, from a network, a request for an identifier of a user device, wherein the request comprises a telephone number associated with the user device associated with a communication session; determining, based on the telephone number, the identifier, wherein the identifier is associated with the telephone number in a group of reserved telephone numbers, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers; sending, based on a timer associated with the telephone number being active, the identifier to the network; and associating the telephone number with the group of allocated telephone numbers, wherein the group of allocated telephone numbers comprises telephone numbers that are in use by a user device for a communication session. 11. The method of claim 10, wherein determining the identifier comprises determining, based on a stored indication that the telephone number is associated with the identifier, the identifier. 12. The method of claim 10, wherein the timer is associated with a time period, wherein the method further comprises: reserving, during the time period, the telephone number for one or more communication sessions associated with the identifier, and associating, after the time period, the telephone number with a group of available telephone numbers. 13. The method of claim 10, further comprising determining, based on the telephone number, that the timer is active. 14. The method of claim 10, wherein assigning the telephone number to the group of allocated telephone numbers comprises storing an indication that the identifier is associated with the telephone number. 15. The method of claim 10, further comprising: determining, based on an indication that another communication session associated with the telephone number is terminated, a status of the timer; associating the telephone number with the group of reserved telephone numbers if the status of the timer indicates that the timer is active; and associating the telephone number with a group of available telephone numbers if the status of the timer indicates that the timer is expired. 16. A method comprising: sending, by a network based on a time period a telephone number is associated with an identifier of a first device in a group of reserved telephone numbers at a telephone number registry, a request for a telephone number, wherein the request comprises the identifier of the first device, and wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers; receiving, from the telephone number registry, the telephone number associated with the identifier of the first device at the telephone number registry; establishing, based on the telephone number, a communication session between the first device and a second device; associating, based on the communication session, the telephone number with the group of allocated telephone numbers; determining that the communication session is terminated; and sending, based on termination of the communication session, an indication configured to cause the telephone number registry to release the telephone number to a group of available telephone numbers. 17. The method of claim 16, wherein the telephone number is associated with the identifier of the first device at the telephone number registry based on the telephone number being assigned to the group of reserved telephone numbers. 18. The method of claim 17, wherein the group of reserved telephone numbers further comprises telephone numbers that were previously used by a user device for another communication session. 19. The method of claim 16, wherein the indication configured to cause the telephone number registry to release the telephone number is further configured to cause the telephone number registry to associate the telephone number with the group of available telephone numbers or the group of reserved telephone numbers. 20. The method of claim 16, wherein determining that the communication session is terminated is based on an indication from one or more of the first device or the second device that the communication session is terminated. 1. (New) A method comprising: receiving, from a network, a request for a telephone number for establishing a requested communication session; sending, to the network, a telephone number from a group of available telephone numbers; associating the telephone number with a group of allocated telephone numbers; and associating, based on an indication that the requested communication session is terminated, the telephone number with a group of reserved telephone numbers, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from the group of allocated telephone numbers. 2. (New) The method of claim 1, wherein the request for the telephone number comprises an identifier of a user device associated with the requested communication session. 3. (New) The method of claim 1, wherein determining the telephone number from the group of available telephone numbers comprises determining that the telephone number is a next telephone number in a cycle of telephone numbers within the group of available telephone numbers, wherein the cycle comprises at least one of: a first-in-first-out (FIFO) cycle of the telephone numbers within the group of available telephone numbers, a last-in-first-out (LIFO) cycle of the telephone numbers within the group of available telephone numbers, or a round- robin cycle of the telephone numbers within the group of available telephone numbers. 4. (New) The method of claim 1, wherein the group of allocated telephone numbers comprises telephone numbers that are in use by a user device for a communication session. 5. (New) The method of claim 1, wherein associating the telephone number with the group of allocated telephone numbers comprises storing an indication that an identifier of a user device is associated with the telephone 6. (New) The method of claim 1, wherein the group of allocated telephone numbers comprises telephone numbers that are removed from one or more of the group of available telephone numbers or the group of reserved telephone numbers. 7. (New) The method of claim 1, wherein the group of reserved telephone numbers further comprises telephone numbers that were previously used by a user device for another communication session. 8. (New) The method of claim 1, wherein the group of reserved telephone numbers further comprises telephone numbers that are associated with a user device for a time period after a communication session. 9. (New) The method of claim 1, wherein during the time period the telephone number may be used for one or more communication sessions associated with an identifier of a user device. 10. (New) The method of claim 9, wherein the one or more communication sessions comprise one or more communication sessions initiated by the user device and one or more communication sessions initiated by another user device. 11. (New) The method of claim 1, wherein associating the telephone number with the group of reserved telephone numbers comprises storing an indication that an identifier of a user device is associated with the telephone number that is associated with the time period. 12. (New) The method of claim 1, further comprising: receiving, from the network, another request for a telephone number, wherein the another request comprises an identifier of a user device; determining, based on the identifier, that the identifier is associated with the telephone number assigned to the group of reserved telephone numbers; sending, to the network, the telephone number; and associating the telephone number with the group of allocated telephone numbers. 13. (New) The method of claim 1, further comprising: determining, based on an indication that another communication session associated with the telephone number is terminated, a status of the time period; associating the telephone number with the group of reserved telephone numbers if the status of the time period indicates that the time period is active; and associating the telephone number with the group of available telephone numbers if the status of the time period indicates that the time period is expired. 14. (New) A method comprising: determining, based on a request comprising a telephone number associated with a group of reserved telephone numbers the identifier associated with the telephone number, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers; sending, based on a timer associated with the telephone number being active, the identifier; and associating the telephone number with the group of allocated telephone numbers. 15. (New) The method of claim 14, wherein the group of allocated telephone numbers comprises telephone numbers that are in use by a user device for a communication session. 16. (New) The method of claim 14, wherein determining the identifier comprises determining, based on a stored indication that the telephone number is associated with the identifier, the identifier. 17. (New) The method of claim 14, wherein the timer is associated with a time period, wherein the method further comprises: reserving, during the time period, the telephone number for one or more communication sessions associated with the identifier, and associating, after the time period, the telephone number with a group of available telephone numbers. 18. (New) The method of claim 14, further comprising determining, based on the telephone number, that the timer is active. 19. (New) The method of claim 14, wherein assigning the telephone number to the group of allocated telephone numbers comprises storing an indication that the identifier is associated with the telephone number. 20. (New) The method of claim 14, further comprising: determining, based on an indication that another communication session associated with the telephone number is terminated, a status of the timer; associating the telephone number with the group of reserved telephone numbers if the status of the timer indicates that the timer is active; and associating the telephone number with a group of available telephone numbers if the status of the timer indicates that the timer is expired. 21. (New) A method comprising: sending, based on a time period a telephone number is associated with a first device in a group of reserved telephone numbers, a request for a telephone number, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers; establishing, based on receiving the telephone number, a communication session between the first device and a second device; associating, based on the communication session, the telephone number with the group of allocated telephone numbers; and sending, based on a determination that the communication session terminated, an indication configured to cause the telephone number to be released to a group of available telephone numbers. 22. (New) The method of claim 21, wherein the group of reserved telephone numbers are stored at a telephone number registry, wherein the telephone number is received from the telephone number registry. 23. (New) The method of claim 21, wherein the telephone number is associated with an identifier of the first device at a telephone number registry based on the telephone number being assigned to the group of reserved telephone numbers. 24. (New) The method of claim 23, wherein the group of reserved telephone numbers further comprise telephone numbers that were previously used by a user device for another communication session. 25. (New) The method of claim 21, wherein the indication configured to cause the telephone number to be released is further configured to cause the telephone number to be associated with the group of available telephone numbers or the group of reserved telephone numbers. 26. (New) The method of claim 21, wherein determining that the communication session is terminated is based on an indication from one or more of the first device or the second device that the communication session is terminated. Further, the instant claims obviously encompass the claimed invention of U.S. Patent No. 12171048 B2 and differ only in terminology. To the extent that the instant claims are broaden and therefore generic to the claimed invention of U.S. Patent No. 12171048 B2, in re Goodman 29 USPQ 2d 2010 CAFC 1993, states that a generic claim cannot be issued without a terminal disclaimer, if a species claim has been previously been claimed in a pending application. Nonetheless, the removal of said limitations from claim 1 of the present application made claim 1 a broader version of claim 1. Therefore, since omission of an element and its function in combination is an obvious expedient if the remaining elements perform the same function as before (In re Karlson (CCPA) 136 USPQ 184 (1963)), claim 1 is not patentably distinct from claim 1. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claim(s) 1-2, 4-26 are rejected under 35 U.S.C. 103 as being unpatentable over Kothari et al (20190334976) in view of Lawson et al (20120207285). Regarding claim 1, Kothari et al discloses, a method comprising: receiving, from a network, a request for a telephone number for establishing a requested communication session (fig. 1-5, ¶ 0024, 0007, 0068-0069 and 0079, the data processing system receiving a request to allocate a phone number. The data processing system can receive the request from the communication tag, the request can include a first field comprising the communication endpoint identifier, a second field comprising the site identifier for the web site, and a third field comprising a session identifier for the computing device, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers); sending, to the network, a telephone number from a group of available telephone numbers (fig. 1-5, ¶ 0007, 0066, 0068 and 0079, database lookup using information, the allocation engine 140 may provide the virtual phone number to the communication tag that generated the request for the virtual phone number); associating the telephone number with a group of allocated telephone numbers (fig. 1-5, ¶ 0007, 0024, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers) ; and associating, based on an indication that the requested communication session is terminated, the telephone number with a group of allocated telephone numbers (¶ 0005, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. Kothari et al also discloses, in paragraphs 0068-0069, Kothari et al where discloses that the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link and in paragraphs 0005, 0007, Kothari et al also discloses that responsive to receiving the identifier, the communication tag generates a request to a server. The generated request includes the preconfigured site identifier, the received session identifier, and the preconfigured target phone number. The server receives this request and identifies a unique virtual phone number to allocate to the request, target phone number to the allocated phone number for a predetermined amount of time. The method can include the data processing system receiving a request to allocate a phone number. The data processing system can receive the request from the communication tag. The request can include a first field comprising the communication endpoint identifier, a second field comprising the site identifier for the web site, and a third field comprising a session identifier for the computing device. The method can include the data processing system determining a virtual phone number to assign to a combination of the communication endpoint identifier provided in the first field of the request, the site identifier provided in the second field of the request, and the session identifier provided in the third field of the request. The data processing system can determine the virtual phone number responsive to the request from the communication tag. The method can include the data processing system creating, in a map data structure, a link between the virtual phone number and the combination of the communication endpoint identifier stored in the first field, the site identifier stored in the second field, and the session identifier stored in the third field. The method can include the data processing system providing the mapped virtual phone number to the computing device (for more detail see paragraphs 0022, 0057, 0065, 0069 and table 1)). Kothari et al et al do not specifically disclose in detail, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from the group of allocated telephone numbers. Lawson et al discloses, associating, based on an indication that the requested communication session is terminated, the telephone number with a group of reserved telephone numbers, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from the group of allocated telephone numbers (¶ 0021, where "quarantined" corresponds to "reserved" in the instant claim. Specifically which states "When in a quarantined state, an automated message may be assigned to endpoint and automatically played for all incoming communication to discourage future use of the endpoint, and quarantining the number for a period of time may clean the endpoint by being out of commission for a long duration of time.") Therefore, before the effective filing date of the claim invention, it would have been obvious to one of ordinary skill in the art at the time the invention was made to modify the device of Kothari et al by specifically adding feature in order to enhance system performance to technical complications, commercial value of a number, and/or optimal use of the endpoint can be analyzed and can be prevented from connecting to owner of the particular phone number as taught by Lawson et al. Regarding claim 2, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein the request for the telephone number comprises an identifier of a user device associated with the requested communication session (¶ 0066, The allocation engine 140 can be designed and constructed to identify or allocate a virtual phone number (e.g., unique forwarding number). The allocation engine 140 may provide the virtual phone number to the communication tag that generated the request for the virtual phone number. The allocation engine 140 can provide the requested virtual phone number for display with website requested the virtual number. The virtual number may be unique because it uniquely corresponds to a communication endpoint during a time interval. The virtual number may be unique because it uniquely maps to a content provider's device or call engine. The allocation engine 140 may provide a link to the unique virtual phone number that, when selected by a user of the computing device 110, causes the computing device 110 to initiate a communications channel with the data processing system 120. For example, selecting the link provided by the allocation engine 140 via the computing device 110 can initiate a phone call to the data processing system 120 and also see claim 1). Regarding claim 4, 15, 22, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein the group of allocated telephone numbers comprises telephone numbers that are in use by a user device for a communication session (¶ 0005, 0007, responsive to receiving the identifier, the communication tag generates a request to a server. The generated request includes the preconfigured site identifier, the received session identifier, and the preconfigured target phone number. The server receives this request and identifies a unique virtual phone number to allocate to the request, target phone number to the allocated phone number for a predetermined amount of time. The method can include the data processing system receiving a request to allocate a phone number. The data processing system can receive the request from the communication tag. The request can include a first field comprising the communication endpoint identifier, a second field comprising the site identifier for the web site, and a third field comprising a session identifier for the computing device. The method can include the data processing system determining a virtual phone number to assign to a combination of the communication endpoint identifier provided in the first field of the request, the site identifier provided in the second field of the request, and the session identifier provided in the third field of the request. The data processing system can determine the virtual phone number responsive to the request from the communication tag. The method can include the data processing system creating, in a map data structure, a link between the virtual phone number and the combination of the communication endpoint identifier stored in the first field, the site identifier stored in the second field, and the session identifier stored in the third field. The method can include the data processing system providing the mapped virtual phone number to the computing device and also see claim 1). Regarding claims 5, 16, 23, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein associating the telephone number with the group of allocated telephone numbers comprises storing an indication that an identifier of a user device is associated with the telephone number (¶ 0006, the server can store the allocated phone number in memory of the data processing system or memory of the computing device for a predetermined time interval e.g., 30 minutes. When the stored allocated number expires, the communication tag can generate a new request for an allocated phone number. The new request can correspond to a new network activity computing session. In some cases, the analytics tag may determine that an identifier for the session does not exist, and automatically generate an identifier for the session, also see claim 1). Regarding claims 6, 24, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein the group of allocated telephone numbers comprises telephone numbers that are removed from one or more of the group of available telephone numbers or the group of reserved telephone numbers (¶ 0005, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link and see also claim 1). Regarding claims 7, 17, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein the group of reserved telephone numbers further comprises telephone numbers that were previously used by a user device for another communication session (¶ 0072, 0111, the data processing system can determine a previously allocated phone number). Regarding claims 8, 18, 25, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein the group of reserved telephone numbers further comprises telephone numbers that are associated with a user device for a time period after a communication session (¶ 0005, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link). Regarding claims 9, 26, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein during the time period the telephone number may be used for one or more communication sessions associated with an identifier of a user device (¶ 0005-0006, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link). Regarding claim 10, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein the one or more communication sessions comprise one or more communication sessions initiated by the user device and one or more communication sessions initiated by another user device (¶ 0072-0073, 0107, the analytics tag can receive a second request from the communication tag. The second request can be for a second identifier. The second request can be for an identifier of a second session different from the first session or previous session. The second session may be a current session and the first session can be a previous session or historical session that has terminated or expired due to a termination event.). Regarding claim 11, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, wherein associating the telephone number with the group of reserved telephone numbers comprises storing an indication that an identifier of a user device is associated with the telephone number that is associated with the time period (¶ 0005-0006, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link). Regarding claims 12, 19 Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, further comprising: receiving, from the network, another request for a telephone number, wherein the another request comprises an identifier of a user device; determining, based on the identifier, that the identifier is associated with the telephone number assigned to the group of reserved telephone numbers; sending, to the network, the telephone number; and associating the telephone number with the group of allocated telephone numbers (¶ 0005-0006, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link and also see claim 1). Regarding claims 13, 20, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, determining, based on an indication that another communication session associated with the telephone number is terminated, a status of the time period; associating the telephone number with the group of reserved telephone numbers if the status of the time period indicates that the time period is active; and associating the telephone number with the group of available telephone numbers if the status of the time period indicates that the time period is expired (¶ 0005-0006, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link). Regarding claim 14, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, a method comprising: determining, based on a request comprising a telephone number associated with a group of reserved telephone numbers the identifier associated with the telephone number (¶ 0023, the data processing system receives this second request and identifies a unique virtual phone number to allocate to the request. The data processing system maintains a mapping of the {site identifier, session identifier, target phone number} to the allocated phone number for a predetermined amount of time.), wherein the group of telephone numbers comprises telephone numbers that are a group of allocated telephone numbers (¶ 0005, 0011, 0054, 0069, 0075 and 0090, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the server receives this second request and identifies a unique virtual phone number to allocate to the request. After expired time add virtual number in the pool and the allocation engine 140 may reuse a virtual number if the number has not been provided for display for a time interval or duration e.g. 2 hours, 24 hours, 72 hours, a week, 30 days, 60 days, 90 days, etc. The data processing system can use the same virtual number for different provider devices.); sending, based on a timer associated with the telephone number being active, the identifier (¶ 0005-0006, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link); and associating the telephone number with the group of allocated telephone numbers (fig. 1-5, ¶ 0007, 0013, 0024, 0068-0069 and 0079, the allocation engine can be configured to receive, from the communication tag, a request to allocate a phone number. The request can include a first field comprising the communication endpoint identifier, a second field comprising the site identifier for the web site, and a third field comprising a session identifier for the computing device. The allocation engine can determine, responsive to the request from the communication tag, a virtual phone number to assign to a combination of the communication endpoint identifier provided in the first field of the request, the site identifier provided in the second field of the request, and the session identifier provided in the third field of the request. The allocation engine can create, in a map data structure, a link between the virtual phone number and the combination of the communication endpoint identifier stored in the first field, the site identifier stored in the second field, and the session identifier stored in the third field. The allocation engine can provide, to the computing device, prior to termination of the link, the mapped virtual phone number). Kothari et al et al do not specifically disclose in detail, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers. Lawson et al discloses, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers (¶ 0021, where "quarantined" corresponds to "reserved" in the instant claim. Specifically which states "When in a quarantined state, an automated message may be assigned to endpoint and automatically played for all incoming communication to discourage future use of the endpoint, and quarantining the number for a period of time may clean the endpoint by being out of commission for a long duration of time.") Therefore, before the effective filing date of the claim invention, it would have been obvious to one of ordinary skill in the art at the time the invention was made to modify the device of Kothari et al by specifically adding feature in order to enhance system performance to technical complications, commercial value of a number, and/or optimal use of the endpoint can be analyzed and can be prevented from connecting to owner of the particular phone number as taught by Lawson et al. Regarding claim 21, Kothari et al and Lawson et al disclose in claim 1, further, Kothari et al disclose, a method comprising: sending, based on a time period a telephone number is associated with a first device in a group of reserved telephone numbers, a request for a telephone number (¶ 0005-0006, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. ¶ 0068-0069, the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link), establishing, based on receiving the telephone number, a communication session between the first device and a second device (¶ 0012-0013, 0032, 0059-0060, A single computing device can establish multiple sessions that may occur on the same day, or over several days, weeks or months. When one session ends, a new session may begin. Computing sessions can expire based on time e.g., after 30 minutes of inactivity or at midnight. Computing sessions can expire based on a change in browsing context or a change in an advertisement campaign source. For example, if a computing device accesses the website via a first campaign, leaves the website, and then comes back to the website via another advertisement campaign, then the data processing system 120 can identify the second visit as corresponding to a second computing session. The data processing system 120 can use the analytics template to configure the analytics tag to determine whether an identifier for the computing session has been previously established. If the analytics tag determines that an identifier for the computing session has yet to be established, the analytics tag can create or establish a unique identifier. The analytics tag can generate a request to the data processing system 120 for a unique identifier of the session); associating, based on the communication session, the telephone number with the group of allocated telephone numbers (¶ 0012-0013, 0032, 0059-0062, A single computing device can establish multiple sessions that may occur on the same day, or over several days, weeks or months. When one session ends, a new session may begin. Computing sessions can expire based on time e.g., after 30 minutes of inactivity or at midnight. Computing sessions can expire based on a change in browsing context or a change in an advertisement campaign source. For example, if a computing device accesses the website via a first campaign, leaves the website, and then comes back to the website via another advertisement campaign, then the data processing system 120 can identify the second visit as corresponding to a second computing session. The data processing system 120 can use the analytics template to configure the analytics tag to determine whether an identifier for the computing session has been previously established. If the analytics tag determines that an identifier for the computing session has yet to be established, the analytics tag can create or establish a unique identifier. The analytics tag can generate a request to the data processing system 120 for a unique identifier of the session); and sending, based on a determination that the communication session terminated, an indication configured to cause the telephone number to be released to a group of available telephone numbers (¶ 0005, 0011, 0059, 0068-0069 and 0079, the data processing system may determine the virtual phone number to be an available virtual phone number, the data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, the pool of virtual numbers 155 can include groups of virtual numbers, the expiration module can terminate the link stored in the map data structure responsive to a termination event. The data processing system can determine a termination event based on a session break. The data processing system can identify initiation of a second session subsequent to the termination event. The data processing system can generate a second identifier for the second session. In some cases, the data processing system determines the termination event based on a predetermined time interval. The termination event can be based on a change in context of web site data accessed by the computing device. The data processing system can determine the termination event based on a change in location of the computing device exceeding a predetermined threshold distance. The data processing system can instruct the computing device to remove, from memory of computing device, the identifier of the session responsive to the termination event. The data processing system can receive a second request for a second identifier of a second session responsive to the termination event. Kothari et al also discloses, in paragraphs 0068-0069, Kothari et al where discloses that the data processing system 120 can identify, select, generate or otherwise assign (i.e., reserve) a virtual phone number to the content item. The data processing system 120 may access a pool or repository 155 of available virtual phone numbers, available virtual numbers in the pool can be allocated to one or more different content providers, website providers or other entities, the pool of virtual numbers 155 can include groups of virtual numbers (i.e., group of reserved telephone numbers) where each group is pre-assigned to a corresponding content provider, website publisher, or other entity. For example, a first group of virtual numbers may already be assigned to the content provider associated with the content item, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. In some cases, the virtual phone numbers may already be assigned to the website publisher associated with the website, and the data processing system 120 selects the available number from the corresponding group of pre-assigned virtual numbers. The virtual phone numbers may be assigned to a content campaign or a content group that includes the content item. In some implementations, the pool of virtual numbers can be used across different content providers, website publishers or entities. Allocating available virtual numbers from the pool to different entities allows the data processing system to perform load balancing, thereby reducing the total number of available virtual numbers that are maintained in the pool 155. Thus, by improving communication resource allocation, the data processing system can be based on a duration e.g., 30 minutes, 1 hour, 2 hours, time stamp for expiration of the link and in paragraphs 0005, 0007, Kothari et al also discloses that responsive to receiving the identifier, the communication tag generates a request to a server. The generated request includes the preconfigured site identifier, the received session identifier, and the preconfigured target phone number. The server receives this request and identifies a unique virtual phone number to allocate to the request, target phone number to the allocated phone number for a predetermined amount of time. The method can include the data processing system receiving a request to allocate a phone number. The data processing system can receive the request from the communication tag. The request can include a first field comprising the communication endpoint identifier, a second field comprising the site identifier for the web site, and a third field comprising a session identifier for the computing device. The method can include the data processing system determining a virtual phone number to assign to a combination of the communication endpoint identifier provided in the first field of the request, the site identifier provided in the second field of the request, and the session identifier provided in the third field of the request. The data processing system can determine the virtual phone number responsive to the request from the communication tag. The method can include the data processing system creating, in a map data structure, a link between the virtual phone number and the combination of the communication endpoint identifier stored in the first field, the site identifier stored in the second field, and the session identifier stored in the third field. The method can include the data processing system providing the mapped virtual phone number to the computing device (for more detail see paragraphs 0022, 0057, 0065, 0069 and table 1)). Kothari et al et al do not specifically disclose in detail, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers. Lawson et al discloses, wherein the group of reserved telephone numbers comprises telephone numbers that are removed from a group of allocated telephone numbers (¶ 0021, where "quarantined" corresponds to "reserved" in the instant claim. Specifically which states "When in a quarantined state, an automated message may be assigned to endpoint and automatically played for all incoming communication to discourage future use of the endpoint, and quarantining the number for a period of time may clean the endpoint by being out of commission for a long duration of time.") Therefore, before the effective filing date of the claim invention, it would have been obvious to one of ordinary skill in the art at the time the invention was made to modify the device of Kothari et al by specifically adding feature in order to enhance system performance to technical complications, commercial value of a number, and/or optimal use of the endpoint can be analyzed and can be prevented from connecting to owner of the particular phone number as taught by Lawson et al. Claim(s) 3 is rejected under 35 U.S.C. 103 as being unpatentable over Kothari et al (20190334976) in view of Lawson et al (20120207285) and Varman et al (10171653). Regarding claim 3, Kothari et al, do not specifically disclose, a round-robin cycle. Varman et al discloses, a round-robin cycle of the telephone numbers within the group of available telephone numbers (col. 5, lines 10-19). Therefore, before the effective filing date of the claim invention, it would have been obvious to one of ordinary skill in the art at the time the invention was made to modify the device of Kothari et al and Lawson et al, by specifically adding feature in order to enhance system performance to improving signaling overhead of mobility management, identified by the IVR function and provides unique information that is matched with the record previously created by the application to obtain the ICM data needed for the call transfer as taught by Varman et al. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to KHAWAR IQBAL whose telephone number is (571)272-7909. The examiner can normally be reached M-F. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jinsong Hu can be reached at 5712723965. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /KHAWAR IQBAL/Primary Examiner, Art Unit 2643
Read full office action

Prosecution Timeline

Oct 07, 2024
Application Filed
Jul 13, 2026
Non-Final Rejection mailed — §103, §DOUBLEPATENT (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12707250
Methods for Handling Radio Access Network Notification Area (RNA) Update Configuration Upon Reject
2y 11m to grant Granted Aug 11, 2026
Patent 12701418
AUTHENTICATION AND AUTHORIZATION IN A PRIVATE MOBILE NETWORK
3y 8m to grant Granted Aug 04, 2026
Patent 12701413
END-TO-END AUTHENTICATION VIA A WTRU-TO-WTRU RELAY
2y 10m to grant Granted Aug 04, 2026
Patent 12696219
METHOD AND APPARATUS FOR COMMUNICATION SERVICES
3y 8m to grant Granted Jul 28, 2026
Patent 12690009
ELEVATION ESTIMATION FOR DETERMINING OPERATING CHANNELS AND TRANSMISSION PARAMETERS
3y 8m to grant Granted Jul 21, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
73%
Grant Probability
99%
With Interview (+29.3%)
3y 5m (~1y 7m remaining)
Median Time to Grant
Low
PTA Risk
Based on 657 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month