IP Library Granted Patent US 10,439,895
Granted Patent B2
US 10,439,895 · App. 15/421,230 · Granted Oct 8, 2019

Dynamic selection of channels for incoming communication

Inventors: Eugene Lew (San Francisco, CA); Mohit Aggarwal (San Francisco, CA)
Assignee: salesforce.com, inc.
H04L41/22H04L51/14H04L51/20H04L67/325
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,439,895
App. No.
15/421,230
Granted
Oct 8, 2019
Kind
B2
Abstract

The technology disclosed for configuring a transcoder-router to direct incoming communications to desired receivers includes receiving a selection by a user from an icon-based GUI, of an incoming voice, video, image, short message, or email media type to configure for routing. Incoming communications gets routed in the context of the incoming media type, with the transducer-router receiving a combination of routing conditions with which to determine the routing of the incoming media type: a time zone against which routing schedules are measured; a time window for the routing schedules that covers both time of day and day of week; and available receiver devices for the routing under the selected combination of the incoming media type, time zone and time window. The disclosed systems and methods include committing routing rules based on the user selections to tangible machine readable memory; and using the committed rules to route incoming media type messages.

Claims (50)

1. A method of configuring a transcoder-router to direct incoming communications to desired receivers, including:

receiving a selection, by a user from an icon-based GUI, of an incoming media type to configure for routing, for incoming media types of voice, video, image, short message, and email;

in context of the selected incoming media type, receiving a selection, by the user, of a combination of routing conditions with which to determine the routing of the selected incoming media type, including:

a selection, by the user from a map-based GUI, of a time zone against which routing schedules are measured;

a selection, by the user from a clock and calendar-based GUI, of a time window for the routing schedules that covers both time of day and day of week;

a selection, by the user from the icon-based GUI, of receiver devices for the routing under the selected combination of the incoming media type, time zone and time window;

repeated receiving user selections of the incoming media type, time zone, time window and receiver devices, and committing routing rules based on the user selections to tangible machine readable memory; and

using the committed rules to route incoming media type messages based on the selected combinations of the incoming media type, time zone, time window and receiver devices.

2. The method of claim 1 , further including checking new routing rules against prior routing rules for inconsistencies and generating a rule conflict message for any inconsistencies revealed by the checking.

3. The method of claim 1 , further including transcoding a message of the incoming media type to be compatible with the selected receiver device.

4. The method of claim 1 , further including;

receiving a selection, by a user from a list of caller classes, of a caller class as a context for the combinations of the incoming media type, time zone, time window and receiver devices; and

combining the selected caller class with the selected incoming media type as the context for processing the selection, by the user, of the combination of routing conditions.

5. The method of claim 4 , further including among the list of caller classes available for user selection friends, business associates and unknown callers.

6. The method of claim 4 , further including among the list of caller classes available for user selection, callers identified by lookup as prospects and callers identified by lookup as likely solicitors.

7. The method of claim 1 , further including among the incoming media types available for user selection an other data type.

8. The method of claim 1 , further including a user sub-selection, from a tool tip menu of a time zone GUI, of a specification that the selected time zone applies as home-default, during a scheduled interval, or when geolocation sensing matches the selected time zone.

9. The method of claim 8 , further including, among the user sub-selection available, a further specification that the selected time zone applies temporarily until cancelled.

10. The method of claim 1 , further including receiving a user sub-selection, from a tool tip menu of a receiver device types GUI, of a specification of a particular account for the selected receiver device type to which the selected incoming media types are to be routed under the selected combination of conditions.

11. The method of claim 1 , further including receiving a user sub-selection, from a tool tip menu of a receiver device types GUI, of a specification of a particular software application running on the selected receiver device to which the selected incoming media type are to be routed under the selected combination of conditions.

12. The method of claim 11 , further including transcoding a message of the incoming media type to be compatible with the selected receiver device and the particular software application.

13. The method of claim 1 , further including receiving, from a receiver device types GUI, a multi-select plurality of receiver devices that are all treated alike for routing of the selected incoming media type under the selected combination of conditions.

14. The method of claim 1 , further including receiving, from a time window GUI, a multi-select plurality of time windows that are all treated alike for routing of the selected incoming media type under the selected combination of conditions.

15. A routing controller that directs incoming communications to desired receivers, including a processor, memory coupled to the processor and program instructions in the memory that, when executed, cause the routing controller to perform a method that includes:

receiving a selection, by a user from an icon-based GUI, of an incoming media type to configure for routing, for incoming media types of voice, video, image, short message, and email;

in context of the selected incoming media type, receiving a selection, by the user, of a combination of routing conditions with which to determine the routing of the selected incoming media type, including:

a selection, by the user from a map-based GUI, of a time zone against which routing schedules are measured;

a selection, by the user from a clock and calendar-based GUI, of a time window for the routing schedules that covers both time of day and day of week;

a selection, by the user from the icon-based GUI, of receiver devices for the routing under the selected combination of the incoming media type, time zone and time window;

repeated receiving user selections of the incoming media type, time zone, time window and receiver devices, and committing routing rules based on the user selections to tangible machine readable memory; and

using the committed rules to route incoming media type messages based on the selected combinations of the incoming media type, time zone, time window and receiver devices.

16. The routing controller of claim 15 , including the processor, memory coupled to the processor and program instructions in the memory that, when executed, cause the routing controller to perform the method that further includes a user sub-selection, from a tool tip menu of a time zone GUI, of a specification that the selected time zone applies as home-default, during a scheduled interval, or when geolocation sensing matches the selected time zone.

17. The routing controller of claim 16 , including the processor, memory coupled to the processor and program instructions in the memory that, when executed, cause the routing controller to perform the method that further includes, among the user sub-selection available, a further specification that the selected time zone applies temporarily until cancelled.

18. The routing controller of claim 15 , including the processor, memory coupled to the processor and program instructions in the memory that, when executed, cause the routing controller to perform the method that further includes receiving a user sub-selection, from a tool tip menu of a receiver device types GUI, of a specification of a particular account for the selected receiver device type to which the selected incoming media types are to be routed under the selected combination of conditions.

19. The routing controller of claim 15 , including the processor, memory coupled to the processor and program instructions in the memory that, when executed, cause the routing controller to perform the method that further includes receiving a user sub-selection, from a tool tip menu of a receiver device types GUI, of a specification of a particular software application running on the selected receiver device to which the selected incoming media type are to be routed under the selected combination of conditions.

20. The routing controller of claim 19 , including the processor, memory coupled to the processor and program instructions in the memory that, when executed, cause the routing controller to perform the method that further includes transcoding a message of the incoming media type to be compatible with the selected receiver device and the particular software application.

21. A non-transitory computer readable memory and program instructions in the memory that, when executed by a routing controller, cause the routing controller to perform a method that includes:

receiving a selection, by a user from an icon-based GUI, of an incoming media type to configure for routing, for incoming media types of voice, video, image, short message, and email;

in context of the selected incoming media type, receiving a selection, by the user, of a combination of routing conditions with which to determine the routing of the selected incoming media type, including:

a selection, by the user from a map-based GUI, of a time zone against which routing schedules are measured;

a selection, by the user from a clock and calendar-based GUI, of a time window for the routing schedules that covers both time of day and day of week;

a selection, by the user from the icon-based GUI, of receiver devices for the routing under the selected combination of the incoming media type, time zone and time window;

repeated receiving user selections of the incoming media type, time zone, time window and receiver devices, and committing routing rules based on the user selections to tangible machine readable memory; and

using the committed rules to route incoming media type messages based on the selected combinations of the incoming media type, time zone, time window and receiver devices.

22. The non-transitory computer readable memory of claim 21 , further including program instructions in the memory that, when executed by the routing controller, cause the routing controller to perform a method that further includes checking new routing rules against prior routing rules for inconsistencies and generating a rule conflict message for any inconsistencies revealed by the checking.

23. The non-transitory computer readable memory of claim 21 , further including program instructions in the memory that, when executed by the routing controller, cause the routing controller to perform a method that further includes transcoding a message of the incoming media type to be compatible with the selected receiver device.

24. The non-transitory computer readable memory of claim 21 , further including program instructions in the memory that, when executed by the routing controller, cause the routing controller to perform a method that further includes:

receiving a selection, by a user from a list of caller classes, of a caller class as a context for the combinations of the incoming media type, time zone, time window and receiver devices; and

combining class with the selected incoming media type as the context for processing the selection, by the user, of the combination of routing conditions.

25. The non-transitory computer readable memory of claim 24 , further including program instructions in the memory that, when executed by the routing controller, cause the routing controller to perform a method that further includes among the list of caller classes available for user selection friends, business associates and unknown callers.

Assignments (2)
CHANGE OF NAME Recorded Nov 21, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069431/0164 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2017
From: LEW, EUGENE; AGGARWAL, MOHIT
To: SALESFORCE.COM, INC.
Reel/Frame 041756/0751 →
Continuity (1)
Related Publication 20180217718A1 · Aug 2, 2018