IP Library Granted Patent US 10,447,620
Granted Patent B2
US 10,447,620 · App. 15/645,676 · Granted Oct 15, 2019

Structured communication framework

Inventors: Craig Alan Bueker (New York, NY); Michael Graham McQuinn (Brooklyn, NY)
Assignee: Pong Labs, LLC
H04L51/02
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,447,620
App. No.
15/645,676
Granted
Oct 15, 2019
Kind
B2
Abstract

In a structured communication system, a message is received at a server from a communication application of a first client device. Based on content of the message, an unstructured portion of the message and a predefined set of allowable responses to the message are identified. The message is then outputted to a second client device. A response is received to the message from the second client device. The server determines whether response to the message complies with the predefined set of allowable responses to the message. Responsive to the response not complying, an invalid response message is sent to the second client device indicating that the response is not compliant. Responsive to the response complying, the response is sent to the first client device.

Claims (92)

1. A method for tracking a workflow action item, the method comprising:

receiving at a server via a computer network, a message from a first client device specifying an intended recipient;

performing a character analysis of the message to automatically identify a first subset of characters in the message corresponding to an unstructured portion of the message and a second subset of characters in the message corresponding to a set of allowable responses to the message;

storing the set of allowable responses to a data store;

performing, by a processor, natural language processing of the unstructured portion of the message to identify the workflow action item associated with the message;

updating an entry in a workflow tracking application to indicate that the workflow action item is open;

outputting the message to a second client device associated with the intended recipient via the computer network;

receiving at the server via the computer network, a response to the message from the second client device;

processing, by the processor, the response to identify the workflow action item associated with the response;

determining, based on the set of allowable responses stored to the data store, if the response conforms to a first allowable response in the set of allowable responses stored to the data store, wherein the first allowable response is indicative of a closed status of the workflow action item; and

responsive to the response conforming to the first allowable response indicative of the closed status of the workflow action item, updating the entry in the workflow tracking application to indicate that the workflow action item is closed.

2. The method of claim 1 , wherein receiving the message from the first client device comprises:

receiving the message in a first transport-specific format from a communication application executing on the first client; and

converting the message from the first transport-specific format to a standardized format prior to processing the message.

3. The method of claim 1 , wherein outputting the message to the second client device comprises:

determining a desired delivery mechanism of the message to the second client device based on a stored profile associated with the intended recipient; and

converting the message to a transport-specific format associated with the desired delivery mechanism of the intended recipient.

4. The method of claim 1 , further comprising:

storing the first subset of characters to a message content field associated with the message; and

storing the set of allowable responses to a response rules field associated with the message.

5. The method of claim 1 , wherein performing the character analysis comprises:

identifying one or more end-of-message characters in the message;

identifying a first portion of the message before the end-of-message character as the first subset of characters corresponding to the unstructured portion;

identifying a second portion of the message after the end-of-message character as the second subset characters corresponding to the set of allowable responses;

identifying a delimiter character in the second subset characters; and

determining the set of allowable responses as including the first allowed response corresponding to a first group of characters in the second subset in a first position relative to the delimiter character and a second allowed response corresponding to a second group of characters in the second subset in a second position relative to the delimiter character.

6. The method of claim 1 , further comprising: prior to receiving the response, receiving an earlier reply to the message from the intended recipient;

determining whether the earlier reply to the message complies with the set of allowable responses to the message; and

sending a notification to the second client device responsive to the earlier reply not complying.

7. The method of claim 6 , wherein determining whether the earlier reply to the message complies comprises:

comparing content of the earlier reply to each of the predefined set of allowed responses;

determining that the earlier reply is not compliant if the content of the earlier reply does not match any of the set of allowed responses.

8. A non-transitory computer-readable storage medium storing instructions for tracking a workflow action item, the instructions when executed by a processor causing the processor to perform steps including:

receiving at a server via a computer network, a message from a first client device specifying an intended recipient;

performing a character analysis of the message to automatically identify a first subset of characters in the message corresponding to an unstructured portion of the message and a second subset of characters in the message corresponding to a set of allowable responses to the message;

storing the set of allowable responses to a data store;

performing, by a processor, natural language processing of the unstructured portion of the message to identify the workflow action item associated with the message;

updating an entry in a workflow tracking application to indicate that the workflow action item is open;

outputting the message to a second client device associated with the intended recipient via the computer network;

receiving at the server via the computer network, a response to the message from the second client device;

processing, by the processor, the response to identify the workflow action item associated with the response;

determining, based on the set of allowable responses stored to the data store, if the response conforms to a first allowable response in the set of allowable responses stored to the data store, wherein the first allowable response is indicative of a closed status of the workflow action item; and

responsive to the response conforming to the first allowable response indicative of the closed status of the workflow action item, updating the entry in the workflow tracking application to indicate that the workflow action item is closed.

9. The non-transitory computer-readable storage medium of claim 8 , wherein receiving the message from the first client device comprises:

receiving the message in a first transport-specific format from a communication application executing on the first client; and

converting the message from the first transport-specific format to a standardized format prior to processing the message.

10. The non-transitory computer-readable storage medium of claim 8 , wherein outputting the message to the second client device comprises:

determining a desired delivery mechanism of the message to the second client device based on a stored profile associated with the intended recipient; and

converting the message to a transport-specific format associated with the desired delivery mechanism of the intended recipient.

11. The non-transitory computer-readable storage medium of claim 8 , the instructions when executed further causing the processor to perform steps including:

storing the first subset of characters to a message content field associated with the message; and

storing the set of allowable responses to a response rules field associated with the message.

12. The non-transitory computer-readable storage medium of claim 8 , wherein performing the character analysis comprises:

identifying one or more end-of-message characters in the message; identifying a first portion of the message before the end-of-message character as the first subset of the characters corresponding to the unstructured portion;

identifying a second portion of the message after the end-of-message character as the second subset characters corresponding to the set of allowable responses;

identifying a delimiter character in the second subset characters; and

determining the set of allowable responses as including the first allowed response corresponding to a first group of characters in the second subset in a first position relative to the delimiter character and a second allowed response corresponding to a second group of characters in the second subset in a second position relative to the delimiter character.

13. The non-transitory computer-readable storage medium of claim 11 , the instructions when executed further causing the processor to perform steps including: prior to receiving the response, receiving an earlier reply to the message from the intended recipient;

determining whether the earlier reply to the message complies with the set of allowable responses to the message; and

sending a notification to the second client device responsive to the earlier reply not complying.

14. The non-transitory computer-readable storage medium of claim 13 , wherein determining whether the earlier reply to the message complies comprises:

comparing content of the earlier reply to each of the predefined set of allowed responses;

determining that the earlier reply is not compliant if the content of the earlier reply does not match any of the set of allowed responses.

15. A system for tracking a workflow action item, the system comprising:

a processor; and

a non-transitory computer-readable storage medium storing instructions, the instructions when executed by the processor causing the processor to perform steps including:

receiving at a server via a computer network, a message from a first client device specifying an intended recipient;

performing a character analysis of the message to automatically identify a first subset of characters in the message corresponding to an unstructured portion of the message and a second subset of characters in the message corresponding to a set of allowable responses to the message;

storing the set of allowable responses to a data store;

performing, by a processor, natural language processing of the unstructured portion of the message to identify the workflow action item associated with the message;

updating an entry in a workflow tracking application to indicate that the workflow action item is open;

outputting the message to a second client device associated with the intended recipient via the computer network;

receiving at the server via the computer network, a response to the message from the second client device;

processing, by the processor, the response to identify the workflow action item associated with the response;

determining, based on the set of allowable responses stored to the data store, if the response conforms to a first allowable response in the set of allowable responses stored to the data store, wherein the first allowable response is indicative of a closed status of the workflow action item; and

responsive to the response conforming to the first allowable response indicative of the closed status of the workflow action item, updating the entry in the workflow tracking application to indicate that the workflow action item is closed.

16. The system of claim 15 , wherein receiving the message from the first client device comprises:

receiving the message in a first transport-specific format from a communication application executing on the first client; and

converting the message from the first transport-specific format to a standardized format prior to processing the message.

17. The system of claim 15 , wherein outputting the message to the second client device comprises:

determining a desired delivery mechanism of the message to the second client device based on a stored profile associated with the intended recipient; and

converting the message to a transport-specific format associated with the desired delivery mechanism of the intended recipient.

18. The system of claim 15 , the instructions when executed further causing the processor to perform steps including: storing the first subset of characters to a message content field associated with the message; and

storing the set of allowable responses to a response rules field associated with the message.

19. The system of claim 15 , wherein performing the character analysis comprises:

identifying one or more end-of-message characters in the message; identifying a first portion of the message before the end-of-message character as the first subset of the characters corresponding to the unstructured portion;

identifying a second portion of the message after the end-of-message character as the second subset characters corresponding to the set of allowable responses;

identifying a delimiter character in the second subset characters; and

determining the set of allowable responses as including the first allowed response corresponding to a first group of characters in the second subset in a first position relative to the delimiter character and a second allowed response corresponding to a second group of characters in the second subset in a second position relative to the delimiter character.

20. The system of claim 15 , the instructions when executed further causing the processor to perform steps including: prior to receiving the response, receiving an earlier reply to the message from the intended recipient;

determining whether the earlier reply to the message complies with the set of allowable responses to the message; and

sending a notification to the second client device responsive to the earlier reply not complying.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 043752 FRAME: 0404. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Jun 18, 2019
From: PONGPRO LLC
To: PONG LABS, LLC
Reel/Frame 049499/0917 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INCORRECT APPL. NO. 15/645,696 PREVIOUSLY RECORDED AT REEL: 042979 FRAME: 0880. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 18, 2019
From: BUEKER, CRAIG ALAN; MCQUINN, MICHAEL GRAHAM
To: PONGPRO LLC
Reel/Frame 049499/0920 →
CHANGE OF NAME Recorded Sep 5, 2017
From: PONGPRO LLC
To: PONG LABS, LLC
Reel/Frame 043752/0404 →
Continuity (4)
Continuation 14267079 · May 1, 2014
Provisional Application 61877873 · Sep 13, 2013
Provisional Application 61818392 · May 1, 2013
Related Publication 20180131644A1 · May 10, 2018