fix: Catch audio context errors (#5051)
Prevent errors in decoding and playing sounds from propagating by catching them in the promise chain. Fixes #4281.
This commit is contained in:
parent
1dc7ce526e
commit
558e3c7499
1 changed files with 11 additions and 12 deletions
|
@ -16,19 +16,18 @@ export const getAlertAudio = async (baseUrl = '', type = 'dashboard') => {
|
|||
};
|
||||
};
|
||||
|
||||
try {
|
||||
const resourceUrl = `${baseUrl}/audio/${type}/ding.mp3`;
|
||||
const audioRequest = new Request(resourceUrl);
|
||||
const resourceUrl = `${baseUrl}/audio/${type}/ding.mp3`;
|
||||
const audioRequest = new Request(resourceUrl);
|
||||
|
||||
fetch(audioRequest)
|
||||
.then(response => response.arrayBuffer())
|
||||
.then(buffer => {
|
||||
audioCtx.decodeAudioData(buffer).then(playsound);
|
||||
return new Promise(res => res());
|
||||
});
|
||||
} catch (error) {
|
||||
// error
|
||||
}
|
||||
fetch(audioRequest)
|
||||
.then(response => response.arrayBuffer())
|
||||
.then(buffer => {
|
||||
audioCtx.decodeAudioData(buffer).then(playsound);
|
||||
return new Promise(res => res());
|
||||
})
|
||||
.catch(() => {
|
||||
// error
|
||||
});
|
||||
};
|
||||
|
||||
export const notificationEnabled = (enableAudioAlerts, id, userId) => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue