IP Library Granted Patent US 9,325,842
Granted Patent B1
US 9,325,842 · App. 14/444,563 · Granted Apr 26, 2016

Systems and methods for associating a string with a content item

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,325,842
App. No.
14/444,563
Granted
Apr 26, 2016
Kind
B1
Abstract

Systems and methods for associating a string with a content item. A phone number of a content item provider may be extracted from a content item. The content item provider is contacted via the phone number and a connection to an automated system comprising a menu tree is verified. An endpoint of the automated system is determined and a string representing the phone number and the sequence of inputs required to reach the endpoint is generated and associated with the content item.

Claims (75)

1. A computer-implemented method of associating strings with content items, the method comprising:

receiving, by a receiver of a content item management system, a content item from a computing device of a third-party content provider, the receiver comprising a wired or wireless communication interface;

obtaining, by a processor of the content item management system, a phone number from the content item, the phone number associated with the third-party content provider;

contacting, by the processor, the third-party content provider by calling the phone number;

analyzing, by the processor, an initial message to verify that, by calling the phone number, a connection was made to an automated system comprising a menu tree;

determining, by the processor, an endpoint of the automated system by listening to a message from the automated system, sending an input to the automated system, and receiving an indication of an endpoint of the menu tree;

generating, by the processor, a string comprising the phone number and the input associated with the endpoint;

associating, by the processor, the string and a description of the endpoint with the content item; and

providing, by the processor, the content item with the string for display at a client device.

2. The method of claim 1 , wherein generating the string comprises appending the string with a second input required to reach the endpoint.

3. The method of claim 1 , wherein associating the string comprises:

selecting a second phone number from a pool of phone numbers;

linking the second phone number with the string; and

associating the second phone number with the content item.

4. The method of claim 1 , wherein determining the endpoint comprises:

building a representation of the menu tree comprising a menu;

storing, in a lookup table, the endpoint with an endpoint description and a sequence of inputs required to reach the endpoint; and

selecting the endpoint from the lookup table based on the endpoint description.

5. The method of claim 4 , wherein:

building the representation of the menu tree comprises:

receiving a message associated with the menu;

parsing the message into one or more segments, each segment presenting a description or a menu option;

generating, from each segment, a corresponding menu description or a menu option description;

updating the representation of the menu tree by one of inserting or updating a menu node in the representation of the menu tree, the menu node comprising the menu description or the menu option description; and

determining that the menu node or the menu option is an endpoint; and

storing an endpoint comprises:

storing, in the lookup table, the determined endpoint comprising the menu description or the menu option description, and a sequence of inputs generated from the menu tree.

6. The method of claim 4 , comprising:

rebuilding the lookup table responsive to one of an expiration of a predetermined period of time, the content item reaching a predetermined performance metric, or a request by the computing device of third-party content item provider.

7. The method of claim 1 , comprising:

inferring information about the third-party content item provider from the endpoint.

8. The method of claim 1 , wherein determining the endpoint comprises detecting one of:

a ringtone;

a live operator;

a message indicating an endpoint;

a menu option to be transferred to a specific department;

a menu option to navigate back to a previous menu; or

a dial tone.

9. The method of claim 1 , wherein the input comprises one of a dual-tone multi-frequency signal, a pause, a speech recording, or a speech synthesis.

10. A computer-implemented system for associating strings with content items, the system comprising one or more processors in communication with a receiver, an extractor, a caller, a call verifier, an endpoint detector, a string generator, a linker, and a content item selector, the system configured to:

receive, via the receiver, a content item from a computing device of a third-party content provider, the receiver comprising a wired or wireless communication interface;

obtain, via the extractor, a phone number from the content item, the phone number associated with the third-party content provider;

contact, via the caller, the third-party content provider via the phone number;

analyze, via the call verifier, an initial message to verify that, based on a call to the phone number, a connection was made to an automated system comprising a menu tree;

determine, via the endpoint detector, an endpoint of the automated system from an evaluation of a message from the automated system including an input sent to the automated system, and an indication of an endpoint of the menu tree received from the automated system;

generate, via the string generator, a string comprising the phone number and the input associated with the endpoint;

associating via the linker, the string and a description of the endpoint with the content item; and

provide, via the content item selector, the content item with the string for display at a client device.

11. The system of claim 10 , comprising the string generator configured to generate the string by appending the string with a second input required to reach the endpoint.

12. The system of claim 10 , comprising the linker configured to:

select a second phone number from a pool of phone numbers;

link the second phone number with the string; and

associate the second phone number with the content item.

13. The system of claim 10 , comprising:

the one or more processors configured to:

build a representation of the menu tree comprising a menu; and

memory configured to store the endpoint with an endpoint description and a sequence of inputs required to reach the endpoint; wherein

the string generator selects, the endpoint from a lookup table based on an endpoint description.

14. The system of claim 13 , comprising a the menu builder configured to:

receive a message associated with the menu;

parse the message into one or more segments, wherein each segment presents a description or a menu option;

generate, from each segment, a corresponding menu description or a menu option description;

update the representation of the menu tree by one of inserting or updating a menu node in the representation of the menu tree, the menu node comprising the menu description or the menu option description; and

determine that the menu node or the menu option is an endpoint; and

store, in the lookup table, the determined endpoint comprising the menu description or the menu option description, and a sequence of inputs generated from the menu tree.

15. The system of claim 13 , the menu builder configured to rebuild the lookup table responsive to one of an expiration of a predetermined period of time, the content item reaching a predetermined performance metric, or a request by the computing device of the third-party content item provider.

16. The system of claim 10 , comprising a menu analyzer configured to infer information about the third-party content item provider from the endpoint.

17. The system of claim 10 , comprising the endpoint detector configured to detect one of:

a ringtone;

a live operator;

a message indicating an endpoint;

a menu option to be transferred to a specific department;

a menu option to navigate back to a previous menu; or

a dial tone.

18. The system of claim 10 , wherein the input comprises one of a dual-tone multi-frequency signal, a pause, a speech recording, or a speech synthesis.

Assignments (2)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044566/0657 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2014
From: SIDDIQI, SAJID; DENIZEN, LEWIS ADAM
To: GOOGLE INC.
Reel/Frame 033446/0825 →