IP Library Granted Patent US 10,180,962
Granted Patent B1
US 10,180,962 · App. 12/905,196 · Granted Jan 15, 2019

Apparatuses, methods and systems for a real-time phone configurer

Inventors: Vikas Kapoor (New York, NY); Abhilash Madhavarapu (Nutley, NJ)
Assignee: IQOR US Inc.
G06F17/30507H04M15/55
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,180,962
App. No.
12/905,196
Granted
Jan 15, 2019
Kind
B1
Abstract

The APPARATUSES, METHODS AND SYSTEMS FOR A REAL-TIME PHONE CONFIGURER (hereinafter “RTPC”) implement efficient and scalable monitoring, regulation, and allocation of computational processing, data, labor, and/or the like resources within an enterprise. The RTPC may provide personalized and feature-specific telephone access to users based on discerned user characteristics. The RTPC may, for example, allow users to engage softphone telephone applications at different client terminals and yet maintain the same, personal phone number. The RTPC may further configure the user's softphone experience with a telephone feature configuration selected for that user, such as may be based on an evaluation of specified rules in view of discerned user characteristics.

Claims (65)

1. A real-time phone configuring processor-implemented method, comprising:

receiving at an authentication server a login request comprising a user identifier from a client device;

authenticating at the authentication server the login request based on the user identifier;

obtaining a unique user code on a call routing device based on the user identifier, wherein the unique user code is linked in the call routing device with a user-specific telephone number and the user-specific telephone number is assigned by the routing device to the client device;

utilizing the unique user code to determine at the call routing device which software applications and features to be uploaded to the client device as executable files are visible by and are permitted to be selected for that unique user code and are permitted to be selected and executed for the unique user code at the client device;

providing the unique user code to the client device;

querying a database of business grammar rules for an enterprise, said business grammar rules allowing different settings for departments, groups and individual employees within an enterprise;

extracting and evaluating applicable business grammar rules for the user within an enterprise in response to the query and other user job-specific information, comprising user employment, user location and user assignment information, to determine from the extracted information a plurality of software applications and telephony features that are visible by and are permitted to be selected for that unique user code based on the evaluation of the extracted business grammar rules and other user job-specific information, wherein at least one executable module for each said software applications and telephony features is remotely stored for on-demand transmission to the client device;

providing at least one instruction to a remote projection server to transmit at least one remotely stored virtualized softphone executable application software to the client device, based on the evaluation of at least one extracted business grammar rule, the unique user code and other user job-specific information;

transmitting at least one remotely stored virtualized softphone application executable file to the client device and executing said executable file by a processor on the client device, wherein the executable file corresponds to at least one executable code module for the selected telephony application that is executed by a processor on the client device for the user that is identified by the unique user code and permitted based on at least one evaluated business grammar rule;

receiving and storing in the registry on the client device a user-specific code provided by the authentication server;

configuring the routing device to transmit telephone calls directed to the user-specific telephone number to the client device that has stored user-specific code in its registry, for a duration of the login session;

monitoring the client device to determine when the user login session is completed or terminated on the client device; and

restoring registry of the client device to a configuration that was active prior to the receiving and storing in the registry of the client device said user-specific code provided by the authentication server to the client device.

2. The method of claim 1 , wherein the unique user code is integrated in an operating system registry file at the client device, and wherein the virtualized application executable file corresponding to the selected telephony application executing on the client device accesses the unique user code from the registry file.

3. The method of claim 1 , wherein the virtualized telephony application is configured as a virtualized telephony application stored in a memory on the projection server.

4. The method of claim 1 , wherein the user identifier comprises a biometric token.

5. The method of claim 1 , wherein the unique user code is a media access control address associated with the user.

6. The method of claim 1 , further comprising:

monitoring the duration of the login session of the specific identified user on the client device; and

releasing the association between the user code and the client device upon termination of the login session by the specified user and disabling further execution of the transmitted virtualized softphone application executable files on the client device until the next login session by the same user.

7. The method of claim 1 , wherein instructing provision of the telephony application further comprises:

providing an authentication verification to the remote projection server; and

wherein the remote projection server is configured to transmit a portion of the telephony application to the client device following receipt of the authentication verification, the evaluation of at least one extracted business grammar rule, the unique user code and the other user job-specific information.

8. The method of claim 1 , wherein the client device is a thin client.

9. The method of claim 1 , wherein the call routing device is a private branch exchange.

10. The method of claim 9 , wherein the private branch exchange supports voice-over internet protocol.

11. The method of claim 9 , wherein the private branch exchange is a software-implemented private branch exchange.

12. The method of claim 1 , wherein the telephony application is configured with at least one application option based on the user identifier.

13. The method of claim 12 , further comprising:

determining the at least one application option based on the user identifier; and

instructing to perform configuration of the telephony application based on the determined at least one application option, the evaluation of at least one extracted business grammar rule, the unique user code and other user job-specific information.

14. The method of claim 13 , wherein configuration of the telephony application is instructed via at least one computer telephony integration application programming interface command.

15. The method of claim 12 , wherein the at least one application option comprises an answering service feature.

16. The method of claim 12 , wherein the at least one application option comprises a multi-line telephony feature.

17. The method of claim 12 , wherein the at least one application option comprises an address book feature.

18. A real-time phone configuring apparatus, comprising:

a memory;

a processor disposed in communication with said memory and configured to issue a plurality of processing instructions stored in the memory, wherein the processor issues instructions to:

receive at an authentication server a login request comprising a user identifier from a client device;

authenticate at the authentication server the login request based on the user identifier;

obtain a unique user code on a the call routing device based on the user identifier, wherein the unique user code is linked in the a call routing device with a user-specific telephone number and the user-specific telephone number is assigned by the routing device to the client device;

utilize the unique user code to determine at the call routing device which software applications and features to be uploaded to the client device as executable files are visible by and are permitted to be selected for that unique user code and are permitted to be selected and executed for the unique user code at the client device;

provide the unique user code to the client device and a projection server;

query a database of business grammar rules for an enterprise, said business grammar rules allowing different settings for departments, groups and individual employees within an enterprise;

extract and evaluate applicable business grammar rules for the user within an enterprise in response to the query and other user job-specific information, comprising user employment, user location and user assignment information, to determine from the extracted information a plurality of software applications and telephony features that are visible by and are permitted to be selected for that unique user code based on the evaluation of the extracted business grammar rules and other user job-specific information, wherein at least one executable module for each said software applications and telephony features is remotely stored for on-demand transmission to the client device;

provide at least one instruction to a remote projection server to transmit at least one remotely stored virtualized softphone executable application software to the client device, based on the evaluation of at least one extracted business grammar rule, the unique user code and other user job-specific information;

transmit at least one remotely stored virtualized softphone application executable file to the client device and execute said executable file by a processor on the client device, wherein the executable file corresponds to at least one executable code module for the selected telephony application that is executed by a processor on the client device for the user that is identified by the unique user code and permitted based on at least one evaluated business grammar rule;

receive and store in the registry on the client device a user-specific code provided by the authentication server;

configure the routing device to transmit telephone calls directed to the user-specific telephone number to the client device that has stored user-specific code in its registry, for a duration of the login session;

monitor the client device to determine when the user login session is completed or terminated on the client device; and

restore registry of the client device to a configuration that was active prior to the receiving and storing in the registry of the client device said user-specific code provided by the authentication server to the client device.

19. A real-time phone configuring processor-accessible non-transitory storage medium, comprising:

a plurality of processing instructions stored in the non-transitory storage medium and issuable by the processor to:

receive at an authentication server a login request comprising a user identifier from a client device;

authenticate at the authentication server the login request based on the user identifier;

obtain a unique user code on a call routing device based on the user identifier, wherein the unique user code is linked in the a call routing device with a user-specific telephone number and the user-specific telephone number is assigned by the routing device to the client device;

utilize the unique user code to determine at the call routing device which software applications and features to be uploaded to the client device as executable files are visible by and are permitted to be selected for that unique user code and are permitted to be selected and executed for the unique user code at the client device;

provide the unique user code to the client device and a projection server;

query a database of business grammar rules for an enterprise, said business grammar rules allowing different settings for departments, groups and individual employees within an enterprise;

extract and evaluate applicable business grammar rules for the user within an enterprise in response to the query and other user job-specific information, comprising user employment, user location and user assignment information, to determine from the extracted information a plurality of software applications and telephony features that are visible by and are permitted to be selected for that unique user code based on the evaluation of the extracted business grammar rules and other user job-specific information, wherein at least one executable module for each said software applications and telephony features is remotely stored for on-demand transmission to the client device;

provide at least one instruction to a remote projection server to transmit at least one remotely stored virtualized softphone executable application software to the client device, based on the evaluation of at least one extracted business grammar rule for the enterprise, the unique user code and other user job-specific information;

transmit at least one remotely stored virtualized softphone application executable file to the client device and execute said executable file by a processor on the client device, wherein the executable file corresponds to at least one executable code module for the selected telephony application that is executed by a processor on the client device for the user that is identified by the unique user code and permitted based on at least one evaluated business grammar rule;

receive and store in the registry on the client device a user-specific code provided by the authentication server; configure the routing device to transmit telephone calls directed to the user-specific telephone number to the client device that has stored user-specific code in its registry, for a duration of the login session;

monitor the client device to determine when the user login session is completed or terminated on the client device, and restore registry of the client device to a configuration that was active prior to the receiving and storing in the registry of the client device said user-specific code provided by the authentication server to the client device.

Assignments (21)
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 12, 2024
From: IQOR TECHNOLOGIES INC.; IQOR US INC.; IQOR HOLDINGS INC.
To: BLUE TORCH FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 067705/0149 →
SECURITY INTEREST Recorded Jun 11, 2024
From: IQOR TECHNOLOGIES INC.; IQOR US INC.; IQOR HOLDINGS INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 067689/0058 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT RECORDED AT REEL 054431, FRAME 0144 Recorded Jun 11, 2024
From: ECLIPSE BUSINESS CAPITAL LLC (F/K/A ENCINA BUSINESS CREDIT, LLC)
To: IQOR US INC.; IQOR HOLDINGS INC.
Reel/Frame 067698/0702 →
TERMINATION AND RELEASE OF EXIT TERM LOANS INTELLECTUAL PROPERTY SECURITY AGREEMENT AS RECORDED AT REEL 054438 AND FRAME 0219 Recorded Jun 11, 2024
From: WILMINGTON SAVINGS FUND SOCIETY, FSB, AS COLLATERAL AGENT
To: IQOR US INC.; IQOR HOLDINGS INC; IQOR TECHNOLOGIES, INC.
Reel/Frame 067698/0865 →
SECURITY INTEREST Recorded Nov 20, 2020
From: IQOR US INC.; IQOR HOLDINGS INC.; IQOR TECHNOLOGIES INC.
To: ENCINA BUSINESS CREDIT, LLC
Reel/Frame 054431/0144 →
SECURITY INTEREST Recorded Nov 20, 2020
From: IQOR US INC.; IQOR HOLDINGS INC.; IQOR TECHNOLOGIES INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 054438/0219 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT RECORDED AT REEL 032597/FRAME 0245 Recorded Nov 20, 2020
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: IQOR US INC.; IQOR HOLDINGS INC.
Reel/Frame 054487/0167 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT RECORDED AT REEL 032606/FRAME 0257 Recorded Nov 20, 2020
From: ALTER DOMUS (US) LLC
To: IQOR US INC.; IQOR HOLDINGS INC.
Reel/Frame 054496/0751 →
RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT RECORDED AT REEL 053785/FRAME 0501 Recorded Nov 20, 2020
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: IQOR HOLDINGS INC.; IQOR US INC.
Reel/Frame 054496/0775 →
RELEASE OF SECURITY INTEREST Recorded Sep 16, 2020
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: IQOR HOLDINGS INC.; IQOR US INC; IQOR TECHNOLOGIES, INC
Reel/Frame 053795/0375 →
SUPER-PRIORITY DEBTOR-IN-POSSESSION INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Sep 15, 2020
From: IQOR US INC.; IQOR HOLDINGS INC.; IQOR TECHNOLOGIES INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 053785/0501 →
NOTICE OF SUCCESSION OF AGENCY Recorded Aug 21, 2020
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ALTER DOMUS (US) LLC
Reel/Frame 053573/0512 →
FIRST LIEN NOTICE OF SUCCESSION OF AGENCY Recorded Jul 8, 2020
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 053158/0567 →
SUPER-PRIORITY NOTICE OF SUCCESSION OF AGENCY Recorded Jul 8, 2020
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 053158/0583 →
SUPER-PRIORITY INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 23, 2020
From: IQOR US INC.; IQOR HOLDINGS INC.; IQOR TECHNOLOGIES, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 053020/0459 →
SECOND LIEN NOTICE OF SUCCESSON OF AGENCY Recorded May 15, 2018
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 046153/0781 →
FIRST LIEN NOTICE OF SUCCESSION OF AGENCY Recorded May 14, 2018
From: MORGAN STANELY SENIOR FUNDING, INC.
To: CREDIT SUISSE AG, CAYMEN ISLANDS BRANCH
Reel/Frame 046434/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2015
From: KAPOOR, VIKAS
To: IQOR HOLDINGS, INC.
Reel/Frame 035418/0652 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2015
From: MADHAVARAPU, ABHILASH
To: IQOR US INC.
Reel/Frame 035440/0142 →
SECOND LIEN SECURITY AGREEMENT Recorded Apr 4, 2014
From: JABIL GLOBAL SERVICES, LLC; IQOR US, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 032606/0257 →
FIRST LIEN SECURITY AGREEMENT Recorded Apr 3, 2014
From: JABIL GLOBAL SERVICES, LLC; IQOR US, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 032597/0245 →
Continuity (15)
Continuation In Part 12763320 · Apr 20, 2010
Continuation 12650542 · Dec 31, 2009
Continuation 12905196
Continuation In Part 12760948 · Apr 15, 2010
Continuation 12650493 · Dec 30, 2009
Continuation 12905196
Continuation In Part 12762570 · Apr 19, 2010
Continuation 12650442 · Dec 30, 2009
Continuation 12905196
Continuation In Part 12763331 · Apr 20, 2010
Continuation 12650530 · Dec 30, 2009
Continuation 12905196
Continuation In Part 12762577 · Apr 19, 2010
Continuation 12650548 · Dec 31, 2009
Provisional Application 61252611 · Oct 16, 2009