US11611527B1ActiveUtility
Systems and methods for multiple channel message handling and routing
Assignee: STATE FARM MUTUAL AUTOMOBILE INSURANCE COPriority: Nov 9, 2021Filed: Nov 9, 2021Granted: Mar 21, 2023
Est. expiryNov 9, 2041(~15.3 yrs left)· nominal 20-yr term from priority
Inventors:Andrew OliveiraWen DingBenjamin E. ByrdHolly LambertJohn MartinezJonathan ChangJose G. ArangurenMaurice PrunaShagun Kariwala
H04L 51/214H04L 51/56
92
PatentIndex Score
8
Cited by
18
References
20
Claims
Abstract
A system and method for intelligent message routing is provided. The system and method include a) storing, in one or more storage devices, a plurality of transmission rules for transmitting messages, b) receiving a message to be transmitted to a participant, c) comparing the message to the plurality of transmission rules, d) determining a first channel to transmit the message to a computer device associated with the participant based on the comparison, e) converting the message into a first message for transmission on the first channel, and f) transmitting the first message over the first channel.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. An intelligent message routing system comprising:
one or more processors, one or more computer readable storage devices, and a plurality of program instructions stored on at least one of the one or more storage devices for execution by at least one of the one or more processors, when executed by the one or more processors, the plurality of program instructions cause the one or more processors to:
store a plurality of transmission rules for transmitting messages;
receive a message to be transmitted to a participant, wherein the message includes a conversation identifier and message identifier, wherein the conversation identifier signifies a conversation with the participant;
compare the message to the plurality of transmission rules;
determine a first channel to transmit the message to a computer device associated with the participant based on the comparison;
convert the message into a first message for transmission on the first channel;
store the conversation identifier and message identifier prior to transmission of the first message;
transmit the first message over the first channel;
subsequent to the transmission of the first message, receive a response from the computer device associated with the participant via the first channel; and
associate the response from the participant with the conversation identifier of the message.
2. The system of claim 1 , wherein the plurality of program instructions further cause the one or more processors to:
receive a second message to be transmitted to the participant, wherein the second message is not associated with the conversation identifier;
determine if the conversation is complete;
if the conversation is complete, transmit the second message via the first channel; and
if the conversation is not complete, transmit the second message via a second channel, wherein the second channel is different than the first channel.
3. The system of claim 2 , wherein the conversation is a first conversation, wherein the conversation identifier is a first conversation identifier, wherein the second message is associated with a second conversation identifier associated with a second conversation, and wherein the plurality of program instructions further cause the one or more processors to:
associate the first channel with the first conversation and the second channel with the second conversation; and
receive a third message not associated with the first conversation or the second conversation.
4. The system of claim 3 , wherein the plurality of program instructions further cause the one or more processors to store the third message until an appropriate channel is no longer associated with a conversation.
5. The system of claim 3 , wherein the plurality of program instructions further cause the one or more processors to route the third message to a message handler to attempt to transmit the third message after a period of time.
6. The system of claim 1 , wherein the plurality of program instructions further cause the one or more processors to lock the first channel to the conversation.
7. The system of claim 6 , wherein the plurality of program instructions further cause the one or more processors to:
receive a second message to be transmitted to the participant, wherein the second message is associated with the conversation identifier; and
transmit the second message to the participant via the first channel.
8. The system of claim 7 , wherein the second message ends the conversation, and wherein the plurality of program instructions further cause the one or more processors to unlock the first channel upon successful transmission of the first message.
9. The system of claim 6 , wherein the plurality of program instructions further cause the one or more processors to:
receive a response message from the participant via the first channel;
determine that the response message is associated with the conversation;
determine that the response message ends the conversation; and
unlock the first channel in response to the determination that the response message ends the conversation.
10. The system of claim 1 , wherein the plurality of program instructions further cause the one or more processors to:
determine a first channel and a second channel to transmit the message to one or more computer devices associated with the participant based on the comparison;
convert the message into the first message for transmission on the first channel; and
transmit the first message over the first channel;
convert the message into a second message for transmission on the second channel different from the first channel; and
transmit the second message over the second channel.
11. The system of claim 1 , wherein the plurality of transmission rules include a plurality of core rules, and wherein the plurality of program instructions further cause the one or more processors to determine whether or not to transmit the message based on the plurality of core rules.
12. The system of claim 1 , wherein the plurality of transmission rules include a plurality of participant preferences associated with the participant, and wherein the plurality of program instructions further cause the one or more processors to determine how to transmit the message based on the plurality of participant preferences.
13. The system of claim 1 , wherein the plurality of transmission rules include a quiet time period, and wherein the plurality of program instructions further cause the one or more processors to determine whether or not the message can be transmitted based on the quiet time period.
14. The system of claim 13 , wherein the plurality of program instructions further cause the one or more processors to delay transmission of the message until after the quiet time period.
15. A computer implemented method for intelligent message routing implemented using at least one processor, the method comprising:
storing, in one or more storage devices, a plurality of transmission rules for transmitting messages;
receiving a message to be transmitted to a participant, wherein the message includes a conversation identifier and message identifier, wherein the conversation identifier signifies a conversation with the participant;
comparing the message to the plurality of transmission rules;
determining a first channel to transmit the message to a computer device associated with the participant based on the comparison;
converting the message into a first message for transmission on the first channel;
storing the conversation identifier and message identifier prior to transmission of the first message;
transmitting the first message over the first channel;
subsequent to the transmission of the first message, receiving a response from the computer device associated with the participant via the first channel; and
associating the response from the participant with the conversation identifier of the message.
16. The method of claim 15 further comprising:
receiving a second message to be transmitted to the participant, wherein the second message is not associated with the conversation identifier;
determining if the conversation is complete;
if the conversation is complete, transmitting the second message via the first channel; and
if the conversation is not complete, transmitting the second message via a second channel, wherein the second channel is different than the first channel.
17. The method of claim 16 , wherein the conversation is a first conversation, wherein the conversation identifier is a first conversation identifier, wherein the second message is associated with a second conversation identifier associated with a second conversation, and wherein the method further comprises:
associating the first channel with the first conversation and the second channel with the second conversation;
receiving a third message not associated with the first conversation or the second conversation; and
storing the third message until an appropriate channel is no longer associated with a conversation.
18. The method of claim 15 further comprising:
locking the first channel to the conversation;
receiving a second message to be transmitted to the participant, wherein the second message is associated with the conversation identifier, and wherein the second message ends the conversation;
transmitting the second message to the participant via the first channel; and
unlocking the first channel upon successful transmission of the first message.
19. The method of claim 18 further comprising:
receiving a response message from the participant via the first channel;
determining that the response message is associated with the conversation;
determining that the response message ends the conversation; and
unlocking the first channel in response to the determination that the response message ends the conversation.
20. The method of claim 15 further comprising:
determining a first channel and a second channel to transmit the message to one or more computer devices associated with the participant based on the comparison;
converting the message into the first message for transmission on the first channel; and
transmitting the first message over the first channel;
converting the message into a second message for transmission on the second channel different from the first channel; and
transmitting the second message over the second channel.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.