Method for prioritizing audio output, computing device, and computer-readable medium

Prioritize multiple audio notifications through the computing device processor, which solves the problem of prioritizing multiple audio notifications on user devices, and realizes the timely reception of important audio notifications and the effective processing of low-priority notifications.

CN111813991BActive Publication Date: 2025-05-06GOOGLE LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010565253.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2016-06-08
Filing Date
2016-12-02
Publication Date
2025-05-06
Estimated Expiration
2036-12-02

AI Technical Summary

Technical Problem

The prior art is difficult to effectively prioritize audio announcements of multiple simultaneously running software applications on user equipment, making it difficult for users to receive important audio notifications in conflict situations.

Method used

A plurality of audio notifications and their associated preferred priorities are obtained by the processor of the computing device, and the assigned priority of each message is determined at least in part based on the content and preferred priority of the message, and an output indicating the message and its assigned priority is generated, provided to the audio device to generate an output audibly.

Benefits of technology

Ensure that users receive important audio notifications in conflict situations, reduce interruptions to current audio signals for low-priority announcements that users pay less attention to, and effectively handle the priority order of multiple audio notifications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN111813991B_ABST
    Figure CN111813991B_ABST
Patent Text Reader

Abstract

Systems and methods for prioritizing audio announcements are provided. In one embodiment, a method may include obtaining, by one or more processors associated with a computing device, an audio announcement including a message and a preferred priority associated with the message. The method may include determining, by the one or more processors, an assigned priority associated with the message based at least in part on the content of the message and the preferred priority associated with the message. The method may include generating, by the one or more processors, an output indicating the message and the assigned priority associated with the message. The method may include providing, by the one or more processors, the output to an audio device to audibly produce the output based at least in part on the priority associated with the message.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the invention patent application with the application date of December 2, 2016, application number "201680083581.7", and invention name "Audio Announcement Priority Sorting System". Technical Field

[0002] The present disclosure relates generally to prioritizing audio announcements, and more particularly to systems and methods for prioritizing audio announcements of audio devices. Background Art

[0003] A user device, such as a smartphone, may run several different software applications simultaneously. For example, a user device may run a calendar application, a map application, a web browser application, a music application, etc. simultaneously. Each of the simultaneously running applications may have sounds and / or notifications played according to the operation of the software application. In some cases, the user device may play the sounds via a speaker included in the user device. In the case where the user device is connected to a separate device (e.g., a Bluetooth speaker), the separate device may play the sounds associated with the software applications. Summary of the invention

[0004] Aspects and advantages of embodiments of the present disclosure will be set forth in part in the following description, or may be learned from the description, or may be learned through practice of the embodiments.

[0005] One example aspect of the present disclosure is directed to a computer-implemented method for prioritizing audio notifications of an audio device. The method may include obtaining, by one or more processors associated with a computing device, an audio notification including a message and a preferred priority associated with the message. The method may also include determining, by the one or more processors, an assigned priority associated with the message based at least in part on the content of the message and the preferred priority associated with the message. The method may include generating, by the one or more processors, an output indicating the message and the assigned priority associated with the message. The method may also include providing, by the one or more processors, an output to an audio device to audibly produce an output based at least in part on the assigned priority associated with the message.

[0006] Another example aspect of the present disclosure is directed to a computing device. The computing device may include one or more processors and one or more memory devices. The one or more memory devices may store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations. The operations may include obtaining multiple audio notifications from multiple client applications. Each audio notification may include a data set indicating a message and a preferred priority associated with the message. The operations may also include determining an assigned priority for each message in the multiple audio notifications based at least in part on the content of the respective message and the preferred priority associated with the respective message. The operations may include generating one or more outputs indicating one or more messages and an assigned priority for each of the one or more messages. The operations may also include providing one or more outputs to an audio device.

[0007] Yet another example aspect of the present disclosure is directed to one or more tangible, non-transitory computer-readable media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform operations. The operations may include obtaining one or more audio notifications that include one or more messages and one or more preferred priorities associated with the one or more messages. The operations may also include determining the assigned priority of each of the one or more messages based at least in part on the content of each of the one or more messages and the preferred priority associated with each of the one or more messages. The operations may include generating one or more outputs indicating the one or more messages and the assigned priorities associated with each of the one or more messages. The operations may also include providing one or more outputs to an audio device to audibly produce the one or more outputs based at least in part on the assigned priorities associated with each of the one or more messages.

[0008] Aspects may include one or more of the following features. To produce the output audibly, the audio device may generate an audio signal indicating the message. Determining the assigned priority associated with the message may include: determining the assigned priority by one or more processors based at least in part on one or more other audio notifications. The message may be a text message, and wherein generating the output indicating the message and the assigned priority may include: converting the text message to an audio format that can be audibly produced by the audio device by one or more processors. At least one of the preferred priority and the assigned priority may include a super priority, so that the audio signal indicating the message is prioritized by the audio device above all other outputs. At least one of the preferred priority and the assigned priority may be based at least in part on a distance associated with the computing device. At least one of the preferred priority and the assigned priority may be based at least in part on a speed associated with the computing device. The audio notification may also include an expiration associated with the message, and wherein determining the assigned priority associated with the message may include: determining the assigned priority associated with the message by one or more processors based at least in part on the expiration, and wherein the output indicates the expiration. A data set indicating an update to the audio notification may be obtained, the update modifying at least one of the content of the message and the preferred priority associated with the message. The assigned priority may be assigned based at least in part on a data set indicating an update to the audio notification. A data set indicating that the audio device has audibly generated an output may be obtained. A second data set indicating that the audio device has audibly generated an output may be provided. A data set indicating an audio signal currently being audibly generated by the audio device may be obtained. Determining the assigned priority associated with the message may include: determining the assigned priority by one or more processors based at least in part on the audio signal currently being audibly generated by the audio device. The audio notification may be received from a client application. The client application may be associated with a navigation function. At least one message may be associated with a navigation audio announcement. Providing at least one output to the audio device may be delayed based at least in part on the assigned priority of the message indicated in at least one output. One or more of the audio notifications may be ignored based at least in part on at least one of the content of the message, the preferred priority associated with the corresponding message, and the assigned priority associated with the corresponding message. The audio notification may include multiple audio notifications. Each audio notification may include a corresponding message and a preferred priority associated with the message. The assigned priority may be determined for each of the multiple audio notifications. One or more outputs indicative of the one or more messages and the assigned priority of each of the one or more messages may be generated and provided to an audio device.

[0009] Other example aspects of the present disclosure are directed to systems, apparatuses, tangible non-transitory computer-readable media, user interfaces, memory devices, and electronic devices for prioritizing audio announcements.

[0010] These and other features, aspects and advantages of various embodiments will be better understood with reference to the following description and appended claims.The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the present disclosure together with the description and serve to explain the relevant principles. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] A detailed discussion of embodiments for those of ordinary skill in the art is set forth in the specification, which refers to the accompanying drawings, in which:

[0012] Figure 1 An example system according to an example embodiment of the present disclosure is depicted;

[0013] Figure 2 depicts an example audio notification according to an example embodiment of the present disclosure;

[0014] Figure 3 depicts an example output of a computing device according to an example embodiment of the present disclosure;

[0015] Figure 4 A flowchart depicting an example method for prioritizing audio announcements according to an example embodiment of the present disclosure; and

[0016] Figure 5 An example system is depicted according to an example embodiment of the present disclosure. DETAILED DESCRIPTION

[0017] Reference will now be made in detail to the embodiments, one or more examples of which are illustrated in the accompanying drawings. Each example is provided by way of explanation of the embodiments rather than by way of limitation of the present disclosure. Indeed, it will be apparent to those skilled in the art that various modifications and variations may be made to the embodiments without departing from the scope of the present disclosure. For example, a feature illustrated or described as part of one embodiment may be used together with another embodiment to produce yet another embodiment. Therefore, it is intended that aspects of the present disclosure cover such modifications and variations.

[0018] The example aspects of the present disclosure are directed to providing audio notifications to users at audio devices. As used herein, an audio device may be a device configured to generate an audio signal (e.g., a speaker, a Bluetooth headset, etc.). The systems and methods of the present disclosure are directed to prioritizing audio notifications of such audio devices. For example, an audio device may be associated with a computing device (e.g., a phone, a tablet, a wearable device, etc.). A client application running on a computing device may have multiple audio notifications for audio device playback. The application programming interface (Application Programming Interface, API) of the computing device may allow the client application to submit audio notifications to the controller application for prioritization. For example, a navigation application may submit a first audio notification indicating that a user associated with the computing device should "leave within 0.5 miles". An email application may submit a second audio notification indicating that a user has received an email message. For each message, the client application may submit a preferred priority, indicating how to preferably prioritize the message. The controller application may obtain each of these audio notifications and assign a priority to each of them so that the audio device may identify which notification to play on top of another notification. The assigned priority may be based on the content and / or preferred priority of the message. For example, the controller application may assign a higher priority to a first audio notification (e.g., indicating an impending departure) than to a second audio notification (e.g., indicating an email receipt), such that the audio device may play the navigation notification over, before, in front of, in place of, etc. the email notification. In this manner, the computing device may ensure that the user receives important audio notifications in the event of a conflict. Various aspects therefore address issues associated with how to provide audio notifications at a device and how to handle multiple audio notifications.

[0019] More specifically, the computing device may include one or more processors that may implement an application programming interface and operate to perform the functions of a controller application. For example, the processor(s) may obtain one or more audio notifications from a client application running on the computing device. The audio notification may include one or more messages and one or more preferred priorities associated with the one or more messages. For example, a user associated with the computing device may travel according to instructions provided by a navigation client application. The processor(s) may obtain an audio notification from a navigation client application. The audio notification may include a message associated with a navigation audio announcement (e.g., "Leave in 0.5 miles"). In addition, the audio notification may include a preferred priority associated with the message. The preferred priority may indicate that the client application prefers the priority that the controller application provides to the message relative to other messages. For example, the preferred priority of a message associated with a navigation audio announcement may be "high", which indicates that the navigation client application will prefer that the message be prioritized by the audio device relative to other messages (e.g., played above other messages, played instead of other messages, played in front of other messages, played before other messages, etc.).

[0020] Additionally and / or alternatively, the computing device may include an email client application that provides updates about email messages. The processor(s) may obtain an audio notification from the email client application. For example, the audio notification may include a message indicating that the computing device has received an email (e.g., "email received from someone"). The preferred priority of the message associated with the email audio notification may also be "high."

[0021] The processor(s) may determine the assigned priority of each of the one or more messages. The assigned priority may indicate (e.g., by the processor) the priority assigned to the message and to be used by the audio device. The assigned priority may be based at least in part on the content of each of the messages and the preferred priority associated with each of the messages. For example, the processor may check the content of the navigation notification message, the content of the email notification message, the preferred priority associated with each message, etc. Additionally and / or alternatively, the processor may compare the content of the messages to determine which message may have greater (and / or lesser) importance to the user of the computing device. For example, although both the navigation notification message and the email notification message have a preferred priority of "high", the processor may resolve this conflict and determine that the navigation notification message may have greater importance to the user due to an impending departure instruction. Therefore, the processor may determine that the assigned priority of the navigation notification message is "high", while the assigned priority of the email notification message is "medium", so that the navigation notification message is prioritized in front of the email message.

[0022] In some embodiments, the preferred priority and / or the assigned priority can be based on other parameters. For example, the preferred priority and / or the assigned priority associated with the navigation announcement message can be based at least in part on the distance from the computing device to the object of the navigation announcement message (e.g., from the computing device to the next turn) and / or the speed of the computing device. For example, the shorter the distance from the computing device to the next upcoming turn, the higher the preferred priority and / or the assigned priority. The speed of the computing device can allow the client application (and / or the processor) to estimate the amount of time until the user reaches the next turn (e.g., the distance divided by the speed). The estimated amount of time and the length of the message can be used to determine the time threshold for playing the message. For example, if the user is 30 seconds away from the next turn and the navigation announcement message will take 5 seconds to read, the assigned priority can be determined so that the audio device plays the message in 25 seconds or less.

[0023] In some embodiments, the audio notification can be updated. The client application can update the content and / or preferred priority of the message and send data indicating the update to the processor. For example, the preferred priority can increase as the distance and / or estimated time decreases. If the original announcement is "leaving within 0.5 miles" with a "high" priority, and the message has not yet been read by the audio device, the preferred priority can be increased (e.g., to "very high") if the user is within, for example, 0.25 miles of the exit, and if the user is within 500 feet of the exit, then again to "super" priority (as described herein). The (multiple) processors can obtain such updates and adjust the assigned priorities based at least in part on a data set indicating updates to the notification.

[0024] Additionally and / or alternatively, the audio notification obtained from the client application may include a deadline associated with the message. For example, the notification may include a message "Leaving in 1 mile" with a deadline of 1 minute and a "low" preferred priority. This may indicate that the audio device may continue to play other messages, but if the audio device has not done so within the 1 minute, the audio device should interrupt and force the navigation announcement message (e.g., "Leaving in 1 mile") to be played. The processor(s) may determine the assigned priority based at least in part on such a deadline.

[0025] The processor(s) may generate outputs to be sent to the audio device. For example, the processor(s) may generate one or more outputs indicating one or more messages and an assigned priority associated with each of the one or more messages. In some embodiments, the output(s) may include a deadline associated with the message, as described herein. The processor(s) may provide the one or more outputs to the audio device to audibly generate (e.g., play, read, announce) the output(s) based at least in part on the assigned priority associated with each of the one or more messages.

[0026] The audio device may play the message based at least in part on an assigned priority associated with the message. For example, where the assigned priority of a navigation notification message is "high," the audio device may be configured to interrupt a currently playing audio signal (e.g., a song, a podcast) to play the navigation notification message. Where the assigned priority of an email notification message is "medium," the audio device may be configured to wait to play the email notification message until there is a break in the currently playing audio signal and / or until after a message of a higher assigned priority has been played. The audio device may indicate to the processor(s) when a message has been played, thereby allowing the processor(s) to notify the client application when the message has been played.

[0027] Prioritizing audio notifications associated with a computing device according to various example aspects of the present disclosure can help ensure that important notification communications are delivered to the user. In addition, the systems and methods of the present disclosure can help reduce interruptions to current audio signals with low-priority notifications that the user does not attach much importance to. The systems and methods of the present disclosure can also be implemented to prioritize notifications for audio devices that have limited processing capabilities to perform such prioritization.

[0028] Referring now to the accompanying drawings, example embodiments of the present disclosure will be discussed in greater detail. Figure 1An example system 100 for prioritizing audio announcements according to an example embodiment of the present disclosure is depicted. As shown, the system 100 may include a computing device 102 and an audio device 104. The computing device 102 may be, for example, a smart phone, a tablet computer, a wearable device, a laptop computer, a desktop computer, a mobile device, a device capable of being carried by a user during operation, a display with one or more processors, a vehicle system, and / or other user devices. The audio device 104 may be a device configured to generate an audio signal, such as, for example, a speaker, a Bluetooth headset, a car audio system, a portal audio system, and / or other audio devices. In some embodiments, the audio device 104 may include a display screen, while in some embodiments, the audio device 104 may not include a display screen. The computing device 102 and the audio device 104 may be configured to communicate via a wired and / or wireless connection. In some embodiments, the computing device 102 and the audio device 104 may be physically coupled to each other and / or the audio device 104 may be included as a component of the computing device 102. In some embodiments, the audio device 104 may be physically separated and separated from the computing device 102.

[0029] The computing device 102 may include various components for performing various operations and functions. For example, and as further described herein, the computing device 102 may include one or more processors and one or more memory devices. The one or more memory devices may store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations and functions, such as those described herein for prioritizing audio announcements of the audio device 104.

[0030] like Figure 1 As shown, the computing device 102 may include one or more sensors 112, multiple client software applications 114, and a controller application 116. The sensor(s) 112 may include accelerometers, gyroscopes, ambient light sensors, beacons, proximity sensors, compasses, location sensors (e.g., location sensors based on GPS, Wi-Fi, and cellular signals), positioning sensors, orientation sensors, receivers, microphones, and / or other sensor devices. The sensor(s) 112 may be configured to collect, monitor, and / or determine various information (e.g., location information) associated with the computing device 102 and send such information to one or more client applications 114.

[0031] The client application 114 may be implemented on the computing device 102. The client application 114 may be, for example, a navigation application, a mapping application, an email application, a podcast application, a browser, a ride-sharing application, an application for assisted delivery, a social media application, and / or other software applications. The client application(s) 114 may be stored locally on the computing device 102 and / or may be, for example, a web application accessed via a browser implemented on the computing device 102. In some implementations, the client application(s) 114 may be developed by a third-party entity that is independent of and / or unaffiliated with an entity associated with the computing device 102 and / or the controller application 116.

[0032] The controller application 116 may be implemented on the computing device 102. The controller application 116 may be a software application that can prioritize audio notifications associated with different (multiple) client applications 114. The controller application 116 may or may not have a graphical user interface (GUI) associated with it for a user to interact with the controller application 116. For example, in some embodiments, a user may be allowed to control various settings for determining priorities, as described herein. An application programming interface (API) of the computing device 102 may allow (multiple) client applications 114 to submit audio notifications to the controller application 116 for prioritization. In some embodiments, the controller application 116 may be implemented by one or more processors remote from the computing device 102 (e.g., one or more cloud-based servers). In some embodiments, the (multiple) processors of the computing device 102 may be operable to perform the functions of the controller application 116 to prioritize audio notifications associated with different client applications 114.

[0033] The client applications 114 may obtain information 130 from the sensor(s) 112. The information 130 may indicate one or more circumstances associated with the computing device 102 and / or its user. For example, at least one of the client applications (e.g., 114A) may be associated with a navigation function. The navigation client application 114A may obtain information 130 indicating a location and / or position of the computing device 102 (e.g., from a location sensor). In another example, at least one of the client applications (e.g., 114B) may be associated with an email function. The email client application 114B may obtain information 130 indicating that a user of the computing device 102 has received an email message in her inbox.

[0034] The client application 114 may create messages based at least in part on the information 130 obtained from the sensor(s) 112. For example, the navigation client application 114A may create one or more messages associated with navigation instructions based at least in part on location information (e.g., provided by the sensor(s) 112) about a navigation route (e.g., determined by the navigation client application 114A, requested by the user, and provided for directions). For example, the message may indicate suggested navigation instructions (e.g., "Leave in 500 feet"). Additionally and / or alternatively, the email client application 114B may create one or more messages associated with an email notification (e.g., "Email received from someone") based at least in part on the information 130 it obtains (e.g., time, sender name, email subject).

[0035] The client application 114 can determine a preferred priority associated with the message. The preferred priority can indicate that the client application 114 prefers the priority that the controller application 116 provides to the message relative to other messages. For example, the preferred priority of a message associated with a navigation announcement can be "high", which indicates that the navigation client application 114A will prefer that the message be prioritized by the audio device 104 relative to other messages (e.g., played above other messages, played instead of other messages, played in front of other messages, played before other messages, etc.). Additionally and / or alternatively, the preferred priority of a message associated with an email announcement can be "high", which indicates that the email client application 114B will prefer that the message be prioritized by the audio device 104 relative to other messages. The preferred priority associated with a message can be based at least in part on various parameters, as further described herein.

[0036] The client application 114 may generate one or more audio notifications. For example, Figure 2 An example audio notification 200 is depicted according to an example embodiment of the present disclosure. Each audio notification 200A-200F in the plurality of notifications 200 may include a data set. For example, each audio notification 200A-200F may include a data set indicating a message 202A-202F and a preferred priority 204A-204F associated with the message 202A-202F.

[0037] In some embodiments, the preferred priorities 204A-204F can be based at least in part on the type of client application 114A. For example, a client application (e.g., 114A) can determine that a navigation announcement message (e.g., 202A) from a navigation client application 114A is more important than any other type of message. Thus, the client application 114A can determine that the preferred priority 204A of the message 202A is a "super" priority, so that the audio signal indicating the message is prioritized by the audio device above all other messages. In some embodiments, only certain types of client applications 114 can use a "super" priority designation, so that the audio device interrupts any other audio currently playing in favor of the "super" priority message.

[0038] Additionally and / or alternatively, the preferred priorities 204A-204F may be based at least in part on the content of the message. For example, a navigation notification message 202B indicating "leaving in 0.5 miles" may be associated with a "high" preferred priority 204B, while a navigation notification message 202E indicating "you are on the fastest route" may be associated with a "low" preferred priority 204E. In another example, a message indicating "the software of the computing device has been updated" may be associated with a "low" preferred priority.

[0039] Additionally and / or alternatively, the preferred priorities 204A-204F may be based at least in part on a distance associated with the computing device 102. For example, the preferred priority associated with a navigation announcement message may be based at least in part on a distance from the computing device 102 to the object of the navigation announcement message (e.g., from the computing device 102 to the next turn). For example, a navigation announcement message 202D indicating "leaving in 1 mile" may be associated with a "low" preferred priority 204D, a navigation announcement message 202B indicating "leaving in 0.5 miles" may be associated with a "high" preferred priority 204B, and a navigation announcement message 202A indicating "leaving in 500 feet" may be associated with a "super" preferred priority 204A. In this manner, the shorter the distance from the computing device 102 to the next upcoming exit, the higher the preferred priority. Therefore, messages with lower urgency (e.g., due to a greater distance from the computing device to the object) may be submitted to the controller application 116 at a lower preferred priority.

[0040] Additionally and / or alternatively, the preferred priorities 204A-204F can be based at least in part on a speed associated with the computing device 102. For example, the speed of the computing device 102 can allow the client application 114 (and / or the processor of the computing device 102) to estimate the amount of time until the computing device 102 reaches the next exit (e.g., distance divided by speed). The estimated amount of time and the length of the message can be used to determine a time threshold for playing the message. For example, if the computing device 102 is 30 seconds away from the next exit, and the navigation announcement message (e.g., 202B) will take 5 seconds to read, the preferred priority (e.g., 204B) can be determined so that the audio device can audibly produce the message in 25 seconds or less.

[0041] Additionally and / or alternatively, the audio notifications 200A-200F may include deadlines 206A-206F associated with the messages 202A-202F. For example, the audio notification 200D may include the message 202D "Leaving in 1 mile" with a deadline 206D of "1 minute" and a "low" preferred priority 204D. This may indicate that the audio device 104 may continue to play other messages, but if the audio device 104 has not done so within that 1 minute, the audio device 104 should interrupt and force the navigation announcement message (e.g., "Leaving in 1 mile") to be played.

[0042] In some implementations, deadlines 206A-206F may be associated with timestamps indicating the time at which audio device 104 should audibly produce messages 202A-202F. For example, deadline 206C may indicate that message 202C (e.g., "email received from someone") should be audibly produced by "10:25:00." Additionally and / or alternatively, deadlines 206A-206F may be associated with delays indicating time periods during which audio device 104 should audibly produce messages 202A-202F. For example, deadline 206B may indicate that message 202B (e.g., "exit in 0.5 miles") should be audibly produced by audio device 104 within the next "25s." In some implementations, deadlines may indicate a time threshold for playing a message (e.g., as determined based on speed and / or distance of computing device 102).

[0043] One or more messages may include a deadline, so that if the message is not audibly produced within a certain time interval, the audio device 104 may completely ignore playing the message. For example, message 202F may indicate to the user of computing device 102 and / or audio device 104 "In 1 mile, continue to stay on US-101". The associated deadline 206F may indicate that if there is an available time within the next 2 minutes, the audio device 104 should audibly produce message 202F, but if such a time is not available within the next 2 minutes, the audio device 104 should ignore the audio notification 200F including message 202F. This can allow computing device 102 (and / or audio device 104) to ignore messages that become irrelevant (or less relevant) after a certain period of time.

[0044] In some embodiments, the audio notifications 200A-200F can indicate that the audio device 104 can wait for an arbitrarily long period of time to audibly produce the messages 202A-202F in the event that the audio device 104 audibly produces other messages. For example, the audio notification 200E can include an "indefinite" indication 206E for the message 202E (e.g., "You are on the fastest route"). In this way, the client application 114 can indicate that the user can hear the message 202E at any point along her journey. Additionally and / or alternatively, in some embodiments, the audio notification (e.g., 200A) can indicate that the application controller 116 should not consider the deadline. This can be accomplished, for example, by including "N / A", blank, zero, etc. as the deadline (e.g., 206A) and / or including "N / A", blank, zero, etc. in the deadline field associated with the particular message 202A.

[0045] The processor(s) implementing the controller application 116 may be configured to obtain multiple audio notifications 200A-200F from multiple client applications 114. For example, the processor(s) may obtain an audio notification 200B from a navigation client application 114A. The audio notification 200B may include a message 202B (e.g., “Leaving in 0.5 miles”) with an associated “high” priority 204B and / or deadline 206B (e.g., “25s”). The processor(s) may also obtain an audio notification 200C from an email client application 114B. The audio notification 200C may include a message 202C (e.g., “Email received from someone”) with an associated “high” priority 204C and / or deadline 206C (e.g., “10:25:00”). In some embodiments, processor(s) (and / or portions of processor(s)) implementing controller application 116 may obtain audio notifications 200A-200F from processor(s) (and / or portions of processor(s)) implementing one or more client applications 114.

[0046] The processor(s) may be configured to determine an assigned priority for each message 202A-202F in the plurality of audio notifications 200A-200F based at least in part on the content of the respective messages 202A-202F and / or the preferred priority 206A-206F associated with the respective messages 202A-202F. Additionally and / or alternatively, the assigned priority may be based at least in part on any of the parameters, factors, and / or circumstances (e.g., message content, application type, distance, speed, etc.) on which the preferred priority 204A-204F is based (as described herein). In some implementations, the assigned priority associated with a first message may be based at least in part on one or more other messages (e.g., their associated message content, application type, distance, speed, preferred priority, assigned priority, deadline, etc.).

[0047] The assigned priorities may indicate the actual priorities assigned to the messages 202A-202F and to be used by the audio device 104 to prioritize the messages. For example, the processor(s) may examine the content of the navigation notification message 202B, the content of the email notification message 202C, the preferred priorities 204B-204C associated with each message, and / or any associated deadlines 206B-206C to determine the assigned priorities of each of the messages 202B-202C. The processor(s) may compare the content of the messages 202B-202C to determine which message may be of greater (and / or lesser) importance to the user of the computing device 102. For example, although the navigation notification message 202B and the email notification message 202C both have a preferred priority 204B-204C of "high", the processor(s) may resolve this conflict and determine that the navigation notification message 202B may be of greater importance to the user due to an impending departure instruction. Thus, the processor(s) may determine that the assigned priority of the navigation notification message 202B is "high" while the assigned priority of the email notification message 202C is "medium", such that the navigation notification message 202B is prioritized ahead of the email message 202C.

[0048] In some implementations, the processor(s) may determine the assigned priority based on the content currently being played by the audio device 104. Figure 1, the processor(s) may obtain a data set 140 indicating an audio signal currently being audibly produced by the audio device 104. For example, the data set 140 may indicate a song, a podcast, an email, a navigation instruction, etc. currently being audibly produced by the audio device 104. The processor(s) may determine the assigned priority based at least in part on the audio signal currently being audibly produced by the audio device 104. For example, the processor(s) may determine that the assigned priority of the message should be higher or lower such that the message is prioritized above (or below) the audio signal currently being audibly produced by the audio device 104.

[0049] The processor(s) implementing the controller application 116 may be configured to generate an output indicating the message and the assigned priority associated therewith. Figure 3 Depicted is an example output 300 of a computing device 102 according to an example embodiment of the present disclosure. Each output 300A-300D may indicate a message 202A-202D and an assigned priority 302A-302D associated with the message 202A-202D. In some implementations, the output 300A-300D may include a deadline 206A-206D. In some implementations, the output 300A-300D may include a preferred priority 202A-202D.

[0050] The processor(s) may be configured to generate one or more outputs 300A-300D indicating one or more messages 202A-202D and the assigned priority 302A-302D of each of the one or more messages 202A-202D. For example, the output 300C may include an email notification message 202C and the assigned priority 302C associated with the message 202C. As shown, although the preferred priority 202C submitted from the email client application 114B is "high", the assigned priority 302C of "medium" has been determined by the processor(s) for the message 202C (e.g., "email received from someone").

[0051] In some implementations, the audio notification 200 and / or the generated output 300 may be updated. Figure 1, the client application 114 may obtain additional information from the sensor(s) 112 indicating a change in a condition associated with the computing device 102. The client application 114 may send a data set 150 indicating an update to the audio notification 200A-200F that modifies at least one of the content of the message 202A-202F, the preferred priority 204A-204F associated with the message 202A-202F, and / or the deadline 206A-206F associated with the message 202A-202F. The processor(s) implementing the controller application 116 may obtain the data set 150 and adjust the assigned priority 302A-302D based at least in part on the data set 150 indicating the update to the audio notification 200.

[0052] For example, the navigation client application 114A may obtain information from the sensor(s) 112 indicating that the computing device 102 has changed location so that it is 0.5 miles from the upcoming exit. The navigation client application 114A may update the content of the original message 202D (e.g., "leaving in 1 mile") to an updated message (e.g., "leaving in 0.5 miles"). Additionally and / or alternatively, the navigation client application 114A may update the preferred priority from the original preferred priority 204D (e.g., "low") to an updated preferred priority (e.g., "high"). The navigation client application 114A may also and / or alternatively update the original deadline 206D to the updated deadline. The client application 114A may include the updated message, updated preferred priority, and / or updated deadline in a data set 150 indicating updates to the audio notification 200D and send the data set 150 to the controller application 116 (e.g., the processor(s) associated therewith).

[0053] Back to Figure 3 , the processor(s) may adjust the output 300D based at least in part on the data set 150. For example, the processor(s) may adjust the original assigned priority 302D (e.g., "low") to an updated assigned priority 304 (e.g., "high") based at least in part on the updated message 306 (e.g., "leaving in 0.5 miles"), the updated preferred priority 308 (e.g., "high"), and / or the updated deadline 310 (e.g., 25s). In some implementations, the assigned priority may be adjusted based at least in part on an update to an audio signal currently being audibly produced by the audio device 104.

[0054] Back to Figure 1, the processor(s) may be configured to provide one or more outputs 300 to the audio device 104. The audio device 104 may be configured to audibly generate the outputs 300A-300D based at least in part on the assigned priorities 302A-302D. The audio device 104 may audibly generate the outputs 300A-300D by generating an audio signal 180 indicating a message. For example, the audio device 104 may audibly generate an audio signal 180 indicating the message 202A (e.g., "Leaving within 500 feet") to the listener before audibly generating an audio signal 180 indicating the message 202C (e.g., "Email received by someone") so that the listener can react accordingly.

[0055] In some implementations, the processor(s) may delay and / or ignore the audio notification 200 and / or output 300 to further prioritize the messages 202A-202F. The processor(s) may be configured to delay providing at least one output 300A-300D to the audio device 104 based at least in part on the assigned priority 302A-302D of the message indicated in the at least one output 300A-300D. For example, the processor may be configured to delay providing output 300C (having an assigned priority 302C of "medium") to the audio device 104 until after the processor(s) has provided an output having a higher assigned priority to the audio device 104 and / or until after the audio device 104 has audibly produced an output having a higher priority.

[0056] In some implementations, the processor(s) may ignore one or more audio notifications 200A-200F based at least in part on at least one of the content of the messages 202A-202F, the preferred priorities 204A-204F associated with the respective messages, and / or the assigned priorities 302A-302D associated with the respective messages. For example, the processor(s) may ignore the audio notification 200E based on the content of the message 202E (e.g., "You are on the fastest route") and / or the preferred priority 202E (e.g., "low"), such that the output including the message 202E is not provided to the audio device 104. In this manner, the processor(s) may take a further proactive step to prioritize the messages heard by the listener.

[0057] In some implementations, the client application 114 can continue to provide updates until a message is audibly generated by the audio device 104. For example, the processor(s) can obtain a data set 160 indicating that the audio device 104 has audibly generated the outputs 300A-300D. The processor(s) can send (e.g., to the client application 114) a second data set 170 indicating that the audio device 104 has audibly generated the outputs 300A-300D. This can notify the client application 114 that the audio device 104 has audibly generated the message. Therefore, the client application 114 can stop updating the audio notification associated with the message that has been audibly generated.

[0058] Figure 4 A flow chart of an example method 400 for prioritizing audio announcements according to an example embodiment of the present disclosure is depicted. One or more portions of the method 400 may be executed by one or more processors (e.g., Figure 5 116), client applications (e.g., Figure 1 ) and audio device(s) (e.g., Figure 1 and Figure 5 Implementation may be performed using the audio device 104 depicted in FIG. Figure 4 The steps are depicted to be performed in a specific order for the purpose of illustration and discussion. Using the disclosure provided herein, one of ordinary skill in the art will appreciate that the steps of any method discussed herein may be adjusted, rearranged, expanded, omitted or modified in various ways without departing from the scope of the present disclosure.

[0059] At (402), method 400 may include obtaining information from one or more sensors. For example, client application 114 may obtain information 130 from sensor(s) 112. Information 130 may indicate one or more conditions associated with computing device 102 and / or its user. For example, at least one of the client applications (e.g., 114A) may be associated with a navigation function. Navigation client application 114A may obtain information 130 indicating a location and / or position of computing device 102 (e.g., from a location sensor). In another example, at least one of the client applications (e.g., 114B) may be associated with an email function. Email client application 114B may obtain information 130 indicating that a user of computing device 102 has received an email message in her inbox.

[0060] At (404), the method 400 may include creating a message. The client application 114 may create the messages 202A-202F based at least in part on the information 130 obtained from the sensor(s) 112. For example, the navigation client application 114A may create one or more messages 202B associated with navigation instructions (e.g., "leaving in 500 feet") based at least in part on the location information (e.g., provided by the sensor(s) 112). Additionally and / or alternatively, the email client application 114B may create one or more messages 202C associated with an email notification (e.g., "email received from someone").

[0061] At (406), method 400 may include determining a preferred priority and / or deadline associated with the message. The client application 114 may determine a preferred priority 204A-204F associated with the messages 202A-202F. For example, the preferred priority of message 202B associated with a navigation notification may be "high", indicating that the navigation client application 114A will prefer that the message be prioritized by the audio device 104 relative to other messages (e.g., played above other messages, played in place of other messages, played in front of other messages, played before other messages, etc.). Additionally and / or alternatively, the preferred priority 204C of message 202C associated with an email notification may be "high", indicating that the email client application 114B will prefer that the message be prioritized by the audio device 104 above other messages. As described herein, the preferred priorities 204A-204F associated with messages 202A-202F may be based at least in part on various parameters.

[0062] Additionally and / or alternatively, the audio notifications 200A-200F may include a deadline 206A-206F associated with the messages 202A-202F, as described herein. For example, a notification may include the message "Leaving in 1 mile" with a deadline of 1 minute and a "low" preferred priority. This may indicate that the audio device 104 may continue to play other messages, but if the audio device 104 has not done so within that 1 minute, the audio device 104 should interrupt and force the navigation announcement message (e.g., "Leaving in 1 mile") to be played.

[0063] At (408), the method 400 may include generating an audio notification. For example, the client application 114 may generate one or more audio notifications 200A-200F and may send the audio notifications 200A-200F to the processor(s) implementing the audio controller 116 at (410). At (412), the processor(s) may obtain the audio notifications 200A-200F including the messages 202A-202F and the preferred priorities 204A-204F associated with the messages 202A-202F.

[0064] In some implementations, the method may include providing and / or obtaining data indicating what is currently being audibly produced by the audio device 104. For example, at (414), the audio device 104 may provide a data set 140 indicating audio signals currently being audibly produced by the audio device 104. At (416), the processor(s) may obtain a data set 140 indicating audio signals currently being audibly produced by the audio device 104.

[0065] At (418), method 400 may include determining an assigned priority. For example, the processor(s) may determine an assigned priority (e.g., 302A-302D) associated with a message (e.g., 202A-202D) based at least in part on the content of the message (e.g., 202A-202D) and / or a preferred priority (e.g., 204A-204D) associated with the message (e.g., 202A-202D). In some implementations, the processor(s) may determine the assigned priority 302A-302D (of a message) based at least in part on one or more other audio notifications. For example, the processor(s) may compare the content of messages 202B and 202C to determine which message may have greater (and / or lesser) importance to a user of computing device 102 and / or audio device 104. For example, although both the navigation notification message 202B and the email notification message 202C have a preferred priority of "high", the processor(s) may determine that the navigation notification message 202B may be of greater importance to the user (e.g., due to an impending departure instruction, application type). Therefore, the processor(s) may determine that the assigned priority 302B of the navigation notification message 202B is "high" while the assigned priority 302C of the email notification message 202C is "medium".

[0066] The assigned priorities 302A-302D and / or the preferred priorities 202A-202F can be based at least in part on other factors. For example, in some embodiments, at least one of the preferred priorities 204A and / or the assigned priorities 302A can include a "super" priority, so that the audio signal 180 indicating the message 202A is prioritized by the audio device 104 above all other outputs 300A-300D. In some embodiments, the (multiple) processors can determine the assigned priorities 302A-302D based at least in part on the audio signal 180 currently being audibly produced by the audio device 104. In some embodiments, at least one of the preferred priorities and / or the assigned priorities can be based at least in part on a distance associated with the computing device 102, as further described herein. Additionally and / or alternatively, at least one of the preferred priorities and / or the assigned priorities can be based at least in part on a speed associated with the computing device 102, as further described herein.

[0067] At (420), method 400 may include generating an output. For example, the processor(s) may generate outputs 300A-300D indicating the message 202A-202D and the assigned priority 304A-304D associated with the message 202A-202D. In some embodiments, the message 202A-202F may be a text message, and the processor(s) may convert the text message to an audio format that can be audibly produced by the audio device 104. Additionally and / or alternatively, the audio notification 300A-300D may include a deadline 206A-206D associated with the message 202A-202D, as described herein. The processor(s) may determine the assigned priority 302A-302D associated with the message 202A-202D based at least in part on the deadline 206A-206D, and the output may indicate the deadline 206A-206D.

[0068] At (422), method 400 may include obtaining updated information from sensor(s). For example, client application 114 may obtain information from sensor(s) 112 indicating a change in a circumstance associated with computing device 102 (e.g., a change in location). At (424), client application 114 may update one or more audio notifications 200A-200F (e.g., message content, preferred priority, deadline). At (426), client application 114 may provide a data set 150 indicating an update to an audio notification 200A-200F that modifies at least one of the content of a message 202A-202F, a preferred priority 204A-204F associated with a message 202A-202F, and / or a deadline 206A-206F associated with a message 202A-202F.

[0069] At (428), method 400 may include obtaining data indicating an update. For example, processor(s) may obtain data set 150 indicating an update to audio notifications 200A-200F that modifies at least one of content of messages 202A-202F and / or preferred priorities 204A-204F associated with messages 202A-202F. At (430), processor(s) may adjust assigned priorities 302A-302D based at least in part on data set 150 indicating an update to audio notifications 200A-200F, as described herein.

[0070] At (432), method 400 may include providing outputs. For example, the processor(s) may provide outputs 300A-300D to the audio device 104 to audibly produce the outputs 300A-300D based at least in part on the assigned priorities 302A-302D associated with the message. At (434), the audio device 104 may obtain the outputs 300A-300D and audibly produce the outputs 300A-300D at (436). For example, to audibly produce the outputs 300A-300D, the audio device 104 may generate an audio signal 180 indicative of the message.

[0071] In some embodiments, at (438), the audio device 104 may provide a data set 160 indicating that the audio device 104 has audibly produced the outputs 300A-300D. At (440), the method 400 may include obtaining data indicating that the outputs have been audibly produced. For example, the (multiple) processors may obtain the data set 160 indicating that the audio device 104 has audibly produced the outputs 300A-300D. Additionally and / or alternatively, at (442), the processor may provide a second data set 170 indicating that the audio device 104 has audibly produced the outputs 300A-300D. The client application 114 may obtain the second data set 170. As described herein, the client application 114 may stop providing data for updating the audio notifications 200A-200F based at least in part on the second data set 170 indicating that the audio device 104 has audibly produced the outputs 300A-300D.

[0072] Figure 5An example system 500 is depicted that can be used to implement methods and systems according to example aspects of the present disclosure. The system 500 can include a computing device 102 and one or more audio devices 104. The computing device 102 and the audio device(s) 104 can be configured to communicate via a network 510. In some implementations, the processor(s) (as described herein) can be associated with one or more remote computing devices 520 that are remote from the computing device 102. In such implementations, the remote computing device 520 can be configured to communicate with the computing device 102 and / or the audio device(s) 104 via the network 510.

[0073] The computing device 102 may include one or more computing devices 530. The one or more computing devices 530 may include one or more processors 532 and (multiple) memory devices 534. The one or more processors 532 may include one or more central processing units (CPUs), graphics processing units (GPUs) dedicated to efficiently rendering images or performing other specialized calculations, and / or other processing devices. (Multiple) memory devices 534 may include one or more computer-readable media and may store information accessible by one or more processors 532, including instructions 536 and data 538 that may be executed by one or more processors 532. The instructions 536 may be software written in any suitable programming language, or may be implemented in hardware. Additionally and / or alternatively, the instructions 536 may be executed in logically and / or virtually separate threads on (multiple) processors 532.

[0074] In some embodiments, instructions 536 may be executed by one or more processors 532 to cause one or more processors 532 to perform operations, such as for implementing any operations and functions of controller application 116, for implementing any operations and functions of client application 114, any operations and functions for which processor 532 and / or computing device 102 are configured as described herein, and / or any other operations or functions of processor(s) 532 and / or computing device 102.

[0075] For example, one or more tangible, non-transitory computer-readable media may store computer-readable instructions 536 that, when executed by one or more processors 532, cause the one or more processors 532 to perform operations. As further described herein, the operations may include obtaining one or more audio notifications 200A-200D that include one or more messages 202A-202D and one or more preferred priorities 204A-204D associated with the one or more messages 202A-202D; determining an assigned priority for each of the one or more messages 202A-202D based at least in part on the content of each of the one or more messages 202A-202D and the preferred priority 204A-204D associated with each of the one or more messages 202A-202D; priorities 304A-304D; generating one or more outputs 300A-300D indicating one or more messages 202A-202D and an assigned priority 304A-304D associated with each of the one or more messages 202A-202D; and providing the one or more outputs 300A-300D to the audio device 104 to audibly produce the one or more outputs 300A-300D based at least in part on the assigned priority 302A-302D associated with each of the one or more messages 202A-202D.

[0076] The computing device 102 may include various input / output devices 540 for providing and receiving information from a user, such as a touch screen, a touch pad, data entry keys, a speaker, and / or a microphone suitable for speech recognition. For example, the computing device 102 may have a display device. Additionally and / or alternatively, the computing device 102 may include one or more sensors 112, as described herein.

[0077] The computing device 102 may also include a communication interface 542 for communicating with one or more other components of the system 500 (e.g., the audio device 104) over the network 510, for example, to provide and / or obtain data. The communication interface 542 may include any suitable component for interacting with one or more networks, including, for example, a transmitter, a receiver, a port, a controller, an antenna, or other suitable component.

[0078] The network 510 can be any type of communication network, such as a local area network (e.g., an intranet), a wide area network (e.g., the Internet), a cellular network, or some combination thereof. The network 510 can also include a direct (wired and / or wireless) connection between the computing device 102 and the audio device 104. Typically, the communication between the computing device 102 and the audio device 104 can use various communication protocols (e.g., TCP / IP, HTTP, SMTP, FTP), encodings or formats (e.g., HTML, XML), and / or protection schemes (e.g., VPN, secure HTTP, SSL), using any type of wired and / or wireless connection to be carried via a network interface. In some embodiments, the computing device 102 and the audio device 104 can communicate via one or more other technologies such as near field communication, Bluetooth protocol, etc.

[0079] The audio device 104 may include a communication interface 560, one or more output devices 562, and / or various other components. The communication interface 560 may be used to communicate with one or more other components of the system 500 (e.g., computing device 102) via the network 510, for example, to provide and / or obtain data. The communication interface 560 may include any suitable components for interacting with one or more networks, including, for example, a transmitter, a receiver, a port, a controller, an antenna, or other suitable components. (Multiple) output devices 562 may include devices (e.g., speakers, headphones, etc.) configured to audibly generate audio signals. For example, (multiple) output devices 562 may be configured to audibly generate one or more outputs obtained from the computing device 102, so that the listener may have the opportunity to hear messages associated with (multiple) outputs. For example, at least one message may be associated with a navigation audio announcement.

[0080] The techniques discussed herein refer to servers, databases, software applications, and other computer-based systems, as well as the actions taken and the information sent to and from such systems. It will be appreciated by those of ordinary skill in the art that the inherent flexibility of computer-based systems allows for a wide variety of possible configurations, combinations, and division of tasks and functions between and among components. For example, the server processes discussed herein can be implemented using a single server or multiple servers working in combination. Databases and applications can be implemented on a single system, or can be distributed across multiple systems. Distributed components can operate sequentially or in parallel.

[0081] Furthermore, computing tasks discussed herein as being performed at a server may instead be performed at a user device. Likewise, computing tasks discussed herein as being performed at a user device may instead be performed at a server.

[0082] Although the subject matter has been described in detail with respect to specific example embodiments and methods thereof, it should be understood that those skilled in the art can easily generate replacements, variations, and equivalents to such embodiments after gaining an understanding of the foregoing. Therefore, the scope of the present disclosure is by way of example rather than by way of limitation, and as will be readily apparent to those of ordinary skill in the art, the subject disclosure does not exclude the inclusion of such modifications, variations, and / or additions to the subject matter.

Claims

1. A computer-implemented method for updating an audio output of an audio device, the method comprising: obtaining, by one or more processors associated with a computing device, a plurality of audio notifications from a plurality of different client applications, wherein each of the plurality of audio notifications includes a respective message and a deadline associated with the respective message, and wherein the plurality of different client applications includes a navigation client application, and wherein the respective messages obtained from the navigation client application include a first navigation message, the first navigation message including first content related to a first location of the computing device, and wherein the deadline indicates a time threshold for playing the respective message and the time threshold is determined based on a rate at which the location of the computing device changes; generating, by the one or more processors, for each of the plurality of audio notifications, one or more outputs indicative of a corresponding message; and providing, by the one or more processors, one or more outputs for each of the plurality of audio notifications to an audio device to audibly produce at least one of the one or more outputs; obtaining, by the one or more processors, an updated first navigation message as a second navigation message based on sensor data indicating a change in a location of the computing device, the updated first navigation message including an update to the first content, the update being related to the change in location, and obtaining an updated deadline, the updated deadline including an update to a time threshold for playing a corresponding message, the update being related to the change in location; obtaining, by the one or more processors, from the audio device a data set indicating whether the audio device has audibly produced an output associated with the first navigation message; and In response to the data set indicating that the audio device did not audibly produce an output associated with the first navigation message, updating, by the one or more processors, the first navigation message to a second navigation message.

2. The computer-implemented method of claim 1, wherein: To audibly produce at least one of the outputs, the audio device generates an audio signal indicative of at least one of the respective messages.

3. The computer-implemented method of claim 2, further comprising: One or more processors determine, for a corresponding message of each of a plurality of audio notifications, an assigned priority associated with the corresponding message based at least in part on a type of client application associated with the corresponding message and a time-based deadline associated with the corresponding message; wherein the assigned priority of the corresponding message of a first audio notification among the plurality of audio notifications includes a first priority such that an audio signal indicative of the corresponding message of the first audio notification is prioritized by the audio device over all other outputs.

4. The computer-implemented method of claim 1, wherein: At least one of the one or more outputs for at least one audio notification indicates the deadline.

5. The computer-implemented method of claim 3, further comprising: obtaining, by one or more processors, a data set indicating an audio signal currently being audibly produced by an audio device; as well as An audio signal currently being audibly produced by an audio device is interrupted based, by one or more processors, at least in part on an assigned priority level associated with a first audio notification of the plurality of audio notifications.

6. The computer-implemented method of claim 5, further comprising: An audio signal currently being audibly produced by the audio device is interrupted based, by the one or more processors, at least in part on a time limit associated with the first audio notification.

7. The computer-implemented method of claim 1 , further comprising: One or more outputs are determined, by the one or more processors, based at least in part on a data set indicating that the audio device has audibly produced at least one of the one or more outputs.

8. The computer-implemented method of claim 3, wherein: The first respective message being associated with a higher assigned priority relative to the other messages indicates that the first message should be played prior to the other messages.

9. The computer-implemented method of claim 3, wherein: Determining, by the one or more processors, for a corresponding message of each of the plurality of audio notifications, an assigned priority level associated with the corresponding message includes: The assigned priority is determined by one or more processors based at least in part on one or more other audio notifications.

10. The computer-implemented method of claim 3, further comprising: Providing, by the one or more processors, at least one output to the audio device is delayed based at least in part on an assigned priority of a corresponding message indicated in the at least one output.

11. A computing device comprising: one or more processors; as well as One or more memory devices storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations including: obtaining a plurality of messages and a deadline associated with each respective one of the plurality of messages from a plurality of different client applications, wherein the plurality of different clients include a navigation client application, and wherein the messages obtained from the navigation client application include a first navigation message, the first navigation message including first content related to a first location of a computing device, and wherein the deadline indicates a time threshold for playing each respective one of the plurality of messages and the time threshold is determined based on a rate at which the location of the computing device changes; generating, for each respective message in the plurality of messages, one or more outputs, the one or more outputs indicating the respective message; and audibly providing at least one of the one or more outputs; obtaining, based on sensor data indicating a change in a location of the computing device, an updated first navigation message as a second navigation message, the updated first navigation message including an update to the first content, the update being related to the change in location, and obtaining an updated deadline, the updated deadline including an update to a time threshold for playing each respective message of the plurality of messages, the update being related to the change in location; obtaining, from the audio device, a data set indicating whether the audio device has audibly produced an output associated with the first navigation message; and In response to the data set indicating that the audio device did not audibly produce an output associated with the first navigation message, updating the first navigation message to a second navigation message.

12. The computing device of claim 11, wherein: To audibly provide at least one of the outputs, the computing device generates an audio signal indicative of at least one of the respective messages.

13. The computing device of claim 11, further comprising: For each respective message in a plurality of messages, determining an assigned priority associated with the respective message based at least in part on a type of client application associated with the respective message and a time-based deadline associated with the respective message; wherein the assigned priority of a first message in the plurality of messages is associated with the deadline, and wherein at least one of the one or more outputs of the first message indicates the deadline.

14. The computing device of claim 13, wherein: The deadline associated with the first message includes a delay time indicating a time period during which the computing device should audibly produce the first message.

15. The computing device of claim 13, wherein: The deadline associated with the first message includes a timestamp indicating a time when the computing device should audibly produce the first message.

16. The computing device of claim 13, further comprising: An assigned priority level associated with at least one of the plurality of messages is adjusted based at least in part on a data set indicating an update to at least one of the plurality of messages.

17. One or more tangible, non-transitory computer-readable media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising: obtaining a plurality of messages and a deadline associated with each respective one of the plurality of messages from a plurality of different client applications, wherein the plurality of different clients include a navigation client application, and wherein the messages obtained from the navigation client application include a first navigation message, the first navigation message including first content related to a first location of a computing device, and wherein the deadline indicates a time threshold for playing each respective one of the plurality of messages and the time threshold is determined based on a rate at which the location of the computing device changes; generating, for each respective message in the plurality of messages, one or more outputs indicative of the respective message; providing one or more outputs for each respective message in the plurality of messages to an audio device to audibly produce at least one of the one or more outputs; obtaining, based on sensor data indicating a change in a location of the computing device, an updated first navigation message as a second navigation message, the updated first navigation message including an update to the first content, the update being related to the change in location, and obtaining an updated deadline, the updated deadline including an update to a time threshold for playing each respective message of the plurality of messages, the update being related to the change in location; obtaining, from the audio device, a data set indicating whether the audio device has audibly produced an output associated with the first navigation message; and In response to the data set indicating that the audio device did not audibly produce an output associated with the first navigation message, updating the first navigation message to a second navigation message.

18. The one or more tangible, non-transitory computer-readable media of claim 17, wherein: To audibly produce at least one of the one or more outputs, the audio device generates an audio signal indicative of at least one of the respective messages.

Citation Information

Patent Citations

  • Method and apparatus for brought-in device communication request handling

    CN105634987A

  • Audio notification management system

    US6542868B1