System and method for dynamically grouping devices based on present device conditions
View Patent ↗A method to dynamically group devices based on device information, which is associated with a system for monitoring the device information that communicates information between a device and an enterprise. Information is collected from a device information source to obtain an actual status of a device. The actual status of the device is compared to a stored status of the device. The stored status is stored on a server of the enterprise. The enterprise determines if the actual status has been changed from the stored status. When a change is detected, the method performs at least one of the acts of automatically disassociating the device from a group that reflects the stored status and automatically associating the device with a new group to reflect the actual status.
1. A method that is performed on an enterprise system comprising a server, the method comprising:
obtaining an actual status of a device;
comparing the actual status of the device to a prior status of the device, the device initially being associated with a first group that corresponds to the prior status;
determining that the actual status is different from the prior status based on the comparing;
on the server, consulting a rule to determine to create a second group that corresponds to the actual status of the device;
creating the second group in accordance with the rule, the second group being associated with a group hierarchy comprised of multiple groups at different levels in the group hierarchy;
associating the device with the second group;
sending a first notification to a group in the group hierarchy; and
sending a second notification to another group in the group hierarchy based on failure to receive acknowledgement of the first notification.
2. The method of claim 1 , further comprising establishing one or more group rules based on a status of the device, the consulted rule being among the one or more group rules.
3. The method of claim 1 , further comprising sending the first and second notifications when the actual status of the device corresponds to a predefined condition.
4. The method of claim 3 , further comprising, in response to an additional change in a status of the device, associating the device with one or more other groups and/or disassociating the device from the second group.
5. The method of claim 1 , further comprising:
determining that the first group is empty after the device is disassociated from the first group; and
deleting the first group.
6. The method of claim 1 , further comprising:
disassociating the device from the first group;
disassociating first group-based business logic from the device when the device is disassociated from the first group; and
associating second group-based business logic with the device when the device is associated with the second group.
7. The method of claim 1 , wherein the group hierarchy comprises a static root group and one or more sub-groups, the second group being among the one or more sub-groups.
8. The method of claim 7 , wherein the static root group is defined manually, and the one or more sub-groups are defined dynamically.
9. The method of claim 1 , wherein the group hierarchy comprises at least one statically-defined group and at least one dynamically-defined group.
10. The method of claim 1 , wherein the second notification is sent based on failure to receive acknowledgement of the first notification within a defined time limit.
11. The method of claim 10 , wherein the second notification is sent to a next higher-level group in the group hierarchy than the group to which the first notification was sent.
12. The method of claim 1 , further comprising:
after sending the second notification, sending successive notifications to progressively higher-level groups in the group hierarchy until acknowledgement of one of the successive notifications is received.
13. Non-transitory machine-readable storage storing instructions that are executable to perform operations comprising:
obtaining an actual status of a device;
comparing the actual status of the device to a prior status of the device, the device initially being associated with a first group that corresponds to the prior status;
determining that the actual status is different from the prior status based on the comparing;
consulting a rule to determine to create a second group that corresponds to the actual status of the device;
creating the second group in accordance with the rule, the second group being associated with a group hierarchy comprised of multiple groups at different levels in the group hierarchy;
associating the device with the second group;
sending a first notification to a group in the group hierarchy; and
sending a second notification to another group in the group hierarchy based on failure to receive acknowledgement of the first notification.
14. The non-transitory machine-readable storage of claim 13 , wherein the operations comprise establishing one or more group rules based on a status of the device, the consulted rule being among the one or more group rules.
15. The non-transitory machine-readable storage of claim 13 , wherein the operations comprise sending the first and second notifications when the actual status of the device corresponds to a predefined condition.
16. The non-transitory machine-readable storage of claim 15 , wherein the operations comprise, in response to an additional change in a status of the device, associating the device with one or more other groups and/or disassociating the device from the second group.
17. The non-transitory machine-readable storage of claim 13 , wherein the operations comprise:
determining that the first group is empty after the device is disassociated from the first group; and
deleting the first group.
18. The non-transitory machine-readable storage of claim 13 , wherein the operations comprise:
disassociating the device from the first group;
disassociating first group-based business logic from the device when the device is disassociated from the first group; and
associating second group-based business logic with the device when the device is associated with the second group.
19. The non-transitory machine-readable storage of claim 13 , wherein the group hierarchy comprises a static root group and one or more sub-groups, the second group being among the one or more sub-groups.
20. The non-transitory machine-readable storage of claim 19 , wherein the static root group is defined manually, and the one or more sub-groups are defined dynamically.
21. The non-transitory machine-readable storage of claim 13 , wherein the group hierarchy comprises at least one statically-defined group and at least one dynamically-defined group.
22. The non-transitory machine-readable storage of claim 13 , wherein the second notification is sent based on failure to receive acknowledgement of the first notification within a defined time limit.
23. The non-transitory machine-readable storage of claim 22 , wherein the second notification is sent to a next higher-level group in the group hierarchy than the group to which the first notification was sent.
24. The non-transitory machine-readable storage of claim 13 , wherein the operations comprise:
after sending the second notification, sending successive notifications to progressively higher-level groups in the group hierarchy until acknowledgement of one of the successive notifications is received.
25. A system comprising:
a processing apparatus programmed to perform operations comprising:
obtaining an actual status of a device;
comparing the actual status of the device to a prior status of the device, the device initially being associated with a first group that corresponds to the prior status;
determining that the actual status is different from the prior status based on the comparing;
consulting a rule to determine to create a second group that corresponds to the actual status of the device;
creating the second group in accordance with the rule, the second group being associated with a group hierarchy comprised of multiple groups at different levels in the group hierarchy;
associating the device with the second group; sending a first notification to a group in the group hierarchy; and
sending a second notification to another group in the group hierarchy based on failure to receive acknowledgement of the first notification.
26. The system of claim 25 , wherein the operations comprise establishing one or more group rules based on a status of the device, the consulted rule being among the one or more group rules.
27. The system of claim 25 , wherein the operations comprise sending the first and second notifications when the actual status of the device corresponds to a predefined condition.
28. The system of claim 27 , wherein the operations comprise, in response to an additional change in a status of the device, associating the device with one or more other groups and/or disassociating the device from the second group.
29. The system of claim 25 , wherein the operations comprise:
determining that the first group is empty after the device is disassociated from the first group; and
deleting the first group.
30. The system of claim 25 , wherein the operations comprise:
disassociating the device from the first group;
disassociating first group-based business logic from the device when the device is disassociated from the first group; and
associating second group-based business logic with the device when the device is associated with the second group.
31. The system of claim 25 , wherein the group hierarchy comprises a static root group and one or more sub-groups, the second group being among the one or more sub-groups.
32. The system of claim 31 , wherein the static root group is defined manually, and the one or more sub-groups are defined dynamically.
33. The system of claim 25 , wherein the group hierarchy comprises at least one statically-defined group and at least one dynamically-defined group.
34. The system of claim 25 , wherein the second notification is sent based on failure to receive acknowledgement of the first notification within a defined time limit.
35. The system of claim 34 , wherein the second notification is sent to a next higher-level group in the group hierarchy than the group to which the first notification was sent.
36. The system of claim 25 , wherein the operations comprise:
after sending the second notification, sending successive notifications to progressively higher-level groups in the group hierarchy until acknowledgement of one of the successive notifications is received.