fix: Audio notification would not work without action on the dashboard (#4303)

* fixes: Audio notification would not work without an action on dashboard

* fixes spec

* Minor fixes

* Minor fixes

* Review fixes

Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
This commit is contained in:
Sivin Varghese 2022-04-07 10:23:18 +05:30 committed by GitHub
parent 8482ecc1b1
commit d4a046a21e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 2 deletions

View file

@ -3,7 +3,7 @@ import { IFrameHelper } from 'widget/helpers/utils';
import { showBadgeOnFavicon } from './faviconHelper';
export const initOnEvents = ['click', 'touchstart', 'keypress'];
export const initOnEvents = ['click', 'touchstart', 'keypress', 'keydown'];
export const getAlertAudio = async (baseUrl = '') => {
const audioCtx = new (window.AudioContext || window.webkitAudioContext)();
const playsound = audioBuffer => {
@ -53,6 +53,10 @@ export const shouldPlayAudio = (
message_type: messageType,
private: isPrivate,
} = message;
if (!isDocHidden && messageType === MESSAGE_TYPE.INCOMING) {
showBadgeOnFavicon();
return false;
}
const isFromCurrentUser = userId === senderId;
const playAudio =

View file

@ -17,7 +17,7 @@ describe('shouldPlayAudio', () => {
message_type: 0,
private: false,
};
const [conversationId, userId, isDocHiddden] = [1, 2, false];
const [conversationId, userId, isDocHiddden] = [1, 2, true];
const result = shouldPlayAudio(
message,
conversationId,