IP Library Granted Patent US 11,140,101
Granted Patent B2
US 11,140,101 · App. 15/936,863 · Granted Oct 5, 2021

Bot group messaging method

Inventors: Jesse Robbins (San Francisco, CA); Greg Albrecht (San Francisco, CA); Ellen Juhlin (San Francisco, CA)
Assignee: Orion Labs, Inc.
H04L51/04H04L51/02H04W4/08H04L61/2069
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 11,140,101
App. No.
15/936,863
Granted
Oct 5, 2021
Kind
B2
Abstract

Methods, apparatuses, and computing systems are provided for bot messaging. In an implementation, a method may include one or more of receiving, by a group messaging service coupled to the internet and a group, a message from a user node of the group. The message includes an address and an identification of the group and the user node. The method further includes determining that the group includes a bot, which includes a software application for performing one or more tasks over the internet. The method also includes identifying that the message address corresponds to the bot and sending, by the group messaging service, the message to the bot.

Claims (70)

1. A method comprising:

receiving, by a group messaging service configured to manage communications of a plurality of groups of user nodes via the internet, a message from a user node of a group, the message comprising:

a bot identifier, bots comprising software applications for performing one or more tasks over the internet,

a group identifier to identify the group having a specific plurality of user nodes, and

a node identifier for the user node;

determining, at the group messaging service, whether the group includes a bot corresponding to the bot identifier by searching a data structure of the group based on the group identifier and the bot identifier;

based on the determination,

when the group does not include the bot, sending, by the group messaging service, a notification to the user node that the bot is not assigned to the group; and

when the group does include the bot, sending, by the group messaging service, the message to the bot.

2. The method of claim 1 , wherein prior to receiving the message, the method further comprising:

receiving, by the group messaging service, a request to add the bot to the group;

verifying the bot is available over the internet;

configuring the bot into the group; and

providing a notification that the bot is configured into the group.

3. The method of claim 1 , the method further comprising:

sending the message to other user nodes of the group, the group comprising the other user nodes, in response to one of:

determining the group comprises no bots; and

determining the group comprises one or more bots and the message address does not correspond to the one or more bots.

4. The method of claim 1 , wherein the message comprises recorded audio, a first group identifier, and an identifier of the user node.

5. The method of claim 4 , wherein the group messaging service comprises a plurality of data structures for a plurality of groups, the plurality of data structures each comprising the user node identifier and a unique second group identifier.

6. The method of claim 5 , wherein determining that the group comprises a bot comprising:

selecting a data structure of the plurality of data structures, the selected data structure comprising a second group identifier matching the first group identifier;

reviewing the data structure for bot entries, each comprising a bot identifier and a bot address; and

determining the data structure comprises at least one bot entry.

7. The method of claim 6 , further comprising:

identifying that the message address corresponds to the bot, including identifying a bot entry in the data structure comprising a bot address corresponding to the message address.

8. The method of claim 7 , wherein at least one other data structure of the plurality of data structures does not include the bot entry.

9. The method of claim 1 , wherein after sending the message to the bot, the bot is configured to perform the one or more tasks identified in the message;

responsively provide a notification associated with the user node to the group messaging service; and

wherein the group messaging service provides a notification related to the one or more tasks to the user node.

10. The method of claim 1 further comprising:

determining, via the group messaging service, whether the bot identifier corresponds to a shared bot, accessible to all members of the group, or to a per-user bot assigned to a particular user node from the group;

when the bot identifier corresponds to a per-user bot, determining whether the user node is the particular user node; and

sending the message to the bot when the user node is the particular user node.

11. A non-transitory computer readable storage medium configured to store computer instructions that when executed cause a processor to perform:

receiving, by a group messaging service configured to manage communications of a plurality of groups of user nodes via the internet, a message from a user node of a group, the message comprising:

a bot identifier, bots comprising software applications for performing one or more tasks over the internet,

a group identifier to identify the group having a specific plurality of user nodes, and

a node identifier for the user node;

determining whether the group includes a bot corresponding to the bot identifier by searching a data structure of the group based on the group identifier and the bot identifier;

based on the determination,

when the group does not include the bot, sending, by the group messaging service, a notification to the user node that the bot is not assigned to the group; and

when the group does include the bot, sending, by the group messaging service, the message to the bot.

12. The non-transitory computer readable storage medium of claim 11 , wherein the message comprises recorded audio, a first group identifier, and an identifier of the user node.

13. The non-transitory computer readable storage medium of claim 12 , further configured to store a plurality of data structures for a plurality of groups, the plurality of data structures each comprising the user node identifier and a unique second group identifier.

14. The non-transitory computer readable storage medium of claim 13 , wherein determining that the group comprises a bot comprising:

selecting a data structure of the plurality of data structures, the selected data structure comprising a second group identifier matching the first group identifier;

reviewing the data structure for bot entries each comprising a bot identifier and a bot address; and

determining the data structure comprises at least one bot entry.

15. The non-transitory computer readable storage medium of claim 14 configured to store computer instructions that when executed cause the processor to further perform:

identifying that the message address corresponds to the bot, including identifying a bot entry in the data structure comprising a bot address corresponding to the message address.

16. The non-transitory computer readable storage medium of claim 15 , wherein at least one other data structure of the plurality of data structures does not include the bot entry.

17. A computing system, comprising:

a storage system having program instructions stored therein; and

a processing system, operably coupled to the storage system, configured to execute the program instructions to:

receive, by a group messaging service configured to manage communications of a plurality of groups of user nodes via the internet, a message from a user node of a group, the message comprising:

a bot identifier, bots comprising software applications for performing one or more tasks over the internet,

a group identifier to identify the group having a specific plurality of user nodes, and

a node identifier for the user node;

determine whether the group includes a bot corresponding to the bot identifier by searching a data structure of the group based on the group identifier and the bot identifier;

based on the determination,

when the group does not include the bot, sending, by the group messaging service, a notification to the user node that the bot is not assigned to the group; and

when the group does include the bot, send the message to the bot.

18. The computing system of claim 17 , wherein prior to receiving the message, the processing system configured to:

receive, by the group messaging service, a request to add the bot to the group;

verify the bot is available over the internet;

configure the bot into the group; and

provide a notification that the bot is configured into the group.

19. The computing system of claim 17 , wherein the message comprises recorded audio, a first group identifier, and an identifier of the user node, wherein the storage system has stored thereto a plurality of data structures for a plurality of groups, the plurality of data structures each comprising the user node identifier and a unique second group identifier.

20. The computing system of claim 19 , wherein a data structure of the plurality of data structures comprises a second group identifier matching the first group identifier and a bot entry comprising a bot address corresponding to the message address, wherein at least one other data structure of the plurality of data structures does not include the bot entry.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2024
From: ORION LABS, INC.
To: ORION LABS TECH LLC
Reel/Frame 069124/0715 →
RELEASE OF SECURITY INTEREST Recorded Apr 23, 2020
From: SILICON VALLEY BANK
To: ORION LABS, INC.
Reel/Frame 052475/0416 →
SECURITY INTEREST Recorded Jul 10, 2019
From: ORION LABS, INC.
To: SILICON VALLEY BANK
Reel/Frame 049718/0382 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2018
From: ROBBINS, JESSE; ALBRECHT, GREG; JUHLIN, ELLEN
To: ORION LABS
Reel/Frame 046013/0254 →
Continuity (2)
Provisional Application 62477043 · Mar 27, 2017
Related Publication 20180278557A1 · Sep 27, 2018