IP Library Granted Patent US 9,230,006
Granted Patent B2
US 9,230,006 · App. 12/894,767 · Granted Jan 5, 2016

Remote access to tracking system contact information

Inventors: Geoffrey D. Greene (Dover, MA); Arthur L. P. Papas (Weston, MA); William Mirie Kimeria (Arlington, MA); Richard L. Leeds, III (Natick, MA)
Assignee: Bullhorn, Inc.
G06F17/30589
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 9,230,006
App. No.
12/894,767
Granted
Jan 5, 2016
Kind
B2
Abstract

In the context of tracking systems, it is difficult to ensure that an organization has a complete, accurate database of contacts stored in its tracking system. When tracking systems users are required to manage exporting and importing of contacts from their desktop mail clients and handheld devices, it is almost certain that contact information will not be kept up-to-date and that confidence in the accuracy of the contact information will not be high. By enabling a remote directory access portal in the tracking system, all users can be assured that they have available the latest contact information for the organizations' contacts. In addition to providing directory access, the tracking system can authenticate users and, based on the users' entitlements, authorize users' access to specific contacts.

Claims (48)

1. A system for providing remote access to a tracking system directory, the system comprising:

a data service executable by a computer and configured to interface with a tracking system, the tracking system having a tracking system directory storing up-to-date and accurate contact interaction information, and the tracking system enforcing entitlements that allow or prevent users from accessing respective contact information;

a lightweight directory access protocol (LDAP) server executed by a digital processor and configured to interface with a remote email client application, the LDAP server and the data service being not compatible, and wherein the remote email client application is separate and distinct from a client application of the tracking system, and the remote email client application lacks access to local client downloaded data from the tracking system directory; and

a partition module executed by a computer server and disposed between the data service and the LDAP server and configured to:

(i) process a request from a user of the remote email client application,

(ii) check whether information for responding to the request exists in a cache at the partition module,

(iii) if the information is found in the cache, retrieve the information from the cache as search results, otherwise:

(a) formulate a command accepted by the data service based on the request,

(b) receive the search results from the data service in response to the command, wherein the data service interfaces with the tracking system to search data stored in the tracking system directory, and

(c) add the search results to the cache,

(iv) translate the search results into a format accepted by and useable in the remote email client application including for display to the user by the remote email client application, and

(v) forward the translated search results to the remote email client application, such that the remote email client application is provided data from the tracking system directory and thus effectively provided access to data of the tracking system directory, wherein the data service is responsive to the command formulated by the partition module based on the request and performs a search of the stored up-to-date and accurate contact interaction information in the tracking system directory taking into consideration entitlements of the user in the tracking system, including the data service validating credentials of the user for access to the tracking system directory before executing the formulated command, and the data service generating search results based on those credentials of the user.

2. A system as in claim 1 wherein the request from the remote email client application is a search query for contact information stored in the tracking system directory.

3. A system as in claim 2 wherein the search results from the data service include contact information that matches the search query.

4. A system as in claim 3 wherein the data service further generates the search results by searching unstructured data in the tracking system directory.

5. A system as in claim 1 wherein the data service denies access to the tracking system directory based on the credentials of the user.

6. A system as in claim 1 wherein the data service filters the search results based on the credentials of the user.

7. A system as in claim 1 wherein the partition module is further configured to forward the translated search results to the remote email client application via the LDAP server.

8. A system as in claim 1 wherein the partition module constructs a virtual directory structure from the search results received from the data service.

9. A method of providing remote access to a tracking system directory, the method comprising:

providing a partition module disposed between a data service and a lightweight directory access protocol (LDAP) server that are not compatible with each other the partition module being executed by a computer server, and at the partition module:

receiving a request from a user of a remote email client application via the lightweight directory access protocol (LDAP) server, the LDAP server being executed by a digital processor and configured to interface with the remote email client application, wherein a remote email client application is separate and distinct from a client application of a tracking system, and the remote email client application lacks access to local client downloaded data from a directory of the tracking system;

checking whether information for responding to the request exists in a cache at the partition module, and if the information is found in the cache, retrieve the information from the cache as search results, otherwise:

formulating, based on the request, a command accepted by the data service, the data service interfacing with the tracking system having the tracking system directory storing up-to-date and accurate contact interaction information, and the tracking system enforcing entitlements that allow or prevent users from accessing respective contact information;

submitting the formulated command to the data service;

receiving the search results from the data service in response to the formulated command, wherein the data service interfaces with the tracking system to search data stored in the tracking system directory; and

adding the search results to the cache;

translating the search results into a format accepted by and useable in the remote email client application including for display to the user by the remote email client application; and

forwarding the translated search results to the remote email client application, such that the remote email client application is provided data from the tracking system directory and thus effectively provided access to data of the tracking system directory;

wherein the data service is responsive to the formulated command based on the request and performs a search of the stored up-to-date and accurate contact interaction information in the tracking system directory taking into consideration entitlements of the user in the tracking system, including at the data service validating credentials of the user for access to the tracking system directory before executing the formulated command, and the data service generating search results based on those credentials of the user.

10. A method as in claim 9 wherein receiving a request from the remote email client application includes receiving a search query for contact information stored in the tracking system directory.

11. A method as in claim 10 wherein receiving search results from the data service includes receiving contact information that matches the search query.

12. A method as in claim 11 further comprising generating the search results by searching unstructured data in the tracking system directory.

13. A method as in claim 9 wherein validating the credentials of the user includes denying access to the tracking system directory.

14. A method as in claim 9 wherein validating the credentials of the user includes filtering the search results based on the credentials of the user.

15. A method as in claim 9 further comprising forwarding the translated search results to the remote email client application via the LDAP server.

16. A computer program product comprising:

a non-transitory computer readable medium having computer readable program codes embodied therein for providing remote access to a tracking system directory of a tracking system, the tracking system directory storing up-to-date and accurate contact interaction information, and the tracking system enforcing entitlements that allow or prevent users from accessing respective contact information; and

the computer readable program codes including instructions that, when executed by a processor, cause the processor to perform at least the following at a partition module disposed between a data service and a lightweight directory access protocol (LDAP) server, the LDAP server being configured to interface with a remote email client application:

check whether information for responding to a request received from a user of the remote email client application via the LDAP server exists in a cache at the partition module, and if the information is found in the cache, retrieve the information from the cache as results, otherwise:

formulate a command, based on the request, the formulated command being acceptable by the data service, the data service interfacing with the tracking system, the LDAP server and the data service being not compatible, and wherein the remote email client application is separate and distinct from a client application of the tracking system, and the remote email client application lacks access to local client downloaded data from the tracking system directory;

submit the formulated command to the data service;

receive the results from the data service in response to the formulated command, wherein the data service interfaces with the tracking system to search data stored at the tracking system; and

add the results to the cache;

translate the results into a format accepted by and useable in the remote email client application including for display to the user by the remote email client application; and

forward the translated results to the remote email client application, such that the remote email client application is provided data from the tracking system directory and thus effectively provided access to data of the tracking system directory;

wherein the data service is responsive to the formulated command based on the request and performs a search of the stored up-to-date and accurate contact interaction information in the tracking system directory taking into consideration entitlements of the user in the tracking system, including the data service validating credentials of the user for access to the tracking system directory before executing the formulated command, and the data service generating results based on those credentials of the user.

17. A method as in claim 9 further comprising constructing a virtual directory structure from the search results received from the data service.

Assignments (8)
RELEASE OF SECURITY INTEREST Recorded Oct 1, 2019
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: BULLHORN, INC; PEOPLENET CORPORATION
Reel/Frame 050590/0761 →
PATENT SECURITY AGREEMENT Recorded Oct 1, 2019
From: BULLHORN, INC.; PEOPLENET CORPORATION
To: GOLUB CAPITAL MARKETS LLC, AS COLLATERAL AGENT
Reel/Frame 050597/0913 →
RELEASE OF SECURITY INTEREST Recorded Nov 22, 2017
From: TPG SPECIALTY LENDING, INC.
To: BULLHORN, INC.
Reel/Frame 044201/0339 →
SECURITY INTEREST Recorded Nov 21, 2017
From: BULLHORN, INC.; PEOPLENET CORPORATION
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 044193/0155 →
SECURITY INTEREST Recorded Nov 12, 2015
From: BULLHORN, INC.
To: TPG SPECIALTY LENDING, INC., AS COLLATERAL AGENT
Reel/Frame 037028/0331 →
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2015
From: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
To: REVERE HOLDING, INC.; BULLHORN, INC.; BULLHORN GLOBAL, INC.; BULLHORN INTERNATIONAL, INC.
Reel/Frame 037028/0688 →
PATENT SECURITY AGREEMENT Recorded Jun 13, 2012
From: REVERE HOLDING, INC.; BULLHORN, INC.; BULLHORN GLOBAL, INC.; BULLHORN INTERNATIONAL, INC.
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 028371/0489 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2011
From: GREENE, GEOFFREY D.; PAPAS, ARTHUR L.P.; KIMERIA, WILLIAM MIRIE; LEEDS, RICHARD L., III
To: BULLHORN, INC.
Reel/Frame 025677/0659 →
Continuity (1)
Related Publication 20120084313A1 · Apr 5, 2012