Systems and methods are provided for accurately setting notification priority levels for applications on a user device. An example system includes a user device and a management server. When an application generates a notification, it provides a priority level for the notification. A management agent executing on the user device can detect the notification and its assigned priority level, determine a predicted priority level using a prediction engine or prediction server, and cause the application the replace or update the assigned priority level based on the predicted priority level. The management agent can then receive user actions related to that notification from the application, and use that information to determine an observed priority level. The prediction engine or prediction server can be updated based on the observed priority level, thereby dynamically increasing the accuracy of predictions.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method for setting notification priority levels for applications on a user device, comprising: detecting, at a management agent installed on the user device, a notification generated by a first application, the first application providing a priority level for the notification; determining a predicted priority level for the notification based on a prediction model; causing the first application to update the priority level for the notification based on the predicted priority level; receiving, at the management agent, first user actions from the first application related to the notification; determining an observed priority level based on the first user actions; and updating the prediction model based on the observed priority level. 2. The method of claim 1, wherein determining the observed priority level is further based on calculating an effective activation time for the notification. 3. The method of claim 2, wherein calculating the effective activation time comprises: calculating an activation time, wherein the activation time is a time period between when the notification is displayed and when the user accesses the notification; and subtracting from the activation time a device sleep time, wherein the device sleep time is a sum of time periods when the device is in a non-interactive state. 4. The method of claim 2, further comprising categorizing the effective activation time into one of a plurality of a categories, wherein each of the plurality of categories corresponds to a different priority level. 5. The method of claim 1, further comprising receiving, at the management agent, second user actions from a second application on the user device, wherein determining the observed priority level is based on the first and second user actions. 6. The method of claim 1, wherein the first user actions are related to reading, replying to, or deleting messages within the first application. 7. The method of claim 1, wherein the first user actions include a categorization of a sender that is associated with the notification. 8. The method of claim 1, wherein the management agent causes a prediction generator to determine the predicted priority level, wherein the prediction generator is a server located remotely from the user device. 9. A non-transitory, computer-readable medium containing instructs that, when executed by a processor, performs stages for setting notification priority levels for applications on a user device, the stages comprising: detecting, at a management agent installed on the user device, a notification generated by a first application, the first application providing a priority level for the notification; determining a predicted priority level for the notification based on a prediction model; causing the first application to update the priority level for the notification based on the predicted priority level; receiving, at the management agent, first user actions from the first application related to the notification; determining an observed priority level based on the first user actions; and updating the prediction model based on the observed priority level. 10. The computer-readable medium of claim 9, wherein determining the observed priority level is further based on calculating an effective activation time for the notification. 11. The computer-readable medium of claim 10, wherein calculating the effective activation time comprises: calculating an activation time, wherein the activation time is a time period between when the notification is displayed and when the user accesses the notification; and subtracting from the activation time a device sleep time, wherein the device sleep time is a sum of time periods when the device is in a non-interactive state. 12. The computer-readable medium of claim 10, wherein the stages further comprise categorizing the effective activation time into one of a plurality of a categories, wherein each of the plurality of categories corresponds to a different priority level. 13. The computer-readable medium of claim 9, wherein the stages further comprise receiving, at the management agent, second user actions from a second application on the user device, wherein determining the observed priority level is based on the first and second user actions. 14. The computer-readable medium of claim 9, wherein the stage of determining a predicted priority level further comprises causing a prediction generator to determine the predicted priority level, wherein the prediction generator is a server located remotely from the user device. 15. A system for setting notification priority levels for applications on a user device, comprising: a first application, installed on the user device, that generates a notification and provides a priority level for the notification; a management agent, installed on the user device, that: detects the notification; determines a predicted priority level for the notification, based on a prediction model; causes the first application to update the priority level for the notification based on the predicted priority level; receives first user actions, related to the notification, from the first application; determines an observed priority level based on the first user actions; and updates the prediction model based on the observed priority level. 16. The system of claim 15, wherein the management agent determines the observed priority level based on calculating an effective activation time for the notification. 17. The system of claim 16, wherein calculating the effective activation time comprises: calculating an activation time, wherein the activation time is a time period between when the notification is displayed and when the user accesses the notification; and subtracting from the activation time a device sleep time, wherein the device sleep time is a sum of time periods when the device is in a non-interactive state. 18. The system of claim 16, wherein the management agent categorizes the effective activation time into one of a plurality of a categories, wherein each of the plurality of categories corresponds to a different priority level. 19. The system of claim 15, wherein the management agent receives second user actions from a second application on the user device, determines the observed priority level based on the first and second user actions. 20. The system of claim 15, wherein determining a predicted priority level further comprises causing a prediction generator to determine the predicted priority level, wherein the prediction generator is a server located remotely from the user device.