Compare commits
3 commits
dev
...
feat/invit
Author | SHA1 | Date | |
---|---|---|---|
|
b203e326ea | ||
|
060ab54444 | ||
|
f1032acc7a |
2 changed files with 14 additions and 3 deletions
BIN
public/sound/invite.ogg
Executable file
BIN
public/sound/invite.ogg
Executable file
Binary file not shown.
|
@ -7,6 +7,7 @@ import navigation from './navigation';
|
||||||
import settings from './settings';
|
import settings from './settings';
|
||||||
|
|
||||||
import NotificationSound from '../../../public/sound/notification.ogg';
|
import NotificationSound from '../../../public/sound/notification.ogg';
|
||||||
|
import InviteSound from '../../../public/sound/invite.ogg';
|
||||||
|
|
||||||
function isNotifEvent(mEvent) {
|
function isNotifEvent(mEvent) {
|
||||||
const eType = mEvent.getType();
|
const eType = mEvent.getType();
|
||||||
|
@ -222,21 +223,28 @@ class Notifications extends EventEmitter {
|
||||||
silent: settings.isNotificationSounds,
|
silent: settings.isNotificationSounds,
|
||||||
});
|
});
|
||||||
if (settings.isNotificationSounds) {
|
if (settings.isNotificationSounds) {
|
||||||
noti.onshow = () => this._playNotiSounds();
|
noti.onshow = () => this._playNotiSound();
|
||||||
}
|
}
|
||||||
noti.onclick = () => selectRoom(room.roomId, mEvent.getId());
|
noti.onclick = () => selectRoom(room.roomId, mEvent.getId());
|
||||||
} else {
|
} else {
|
||||||
this._playNotiSounds();
|
this._playNotiSound();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_playNotiSounds() {
|
_playNotiSound() {
|
||||||
if (!this._notiAudio) {
|
if (!this._notiAudio) {
|
||||||
this._notiAudio = new Audio(NotificationSound);
|
this._notiAudio = new Audio(NotificationSound);
|
||||||
}
|
}
|
||||||
this._notiAudio.play();
|
this._notiAudio.play();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_playInviteSound() {
|
||||||
|
if (!this._inviteAudio) {
|
||||||
|
this._inviteAudio = new Audio(InviteSound);
|
||||||
|
}
|
||||||
|
this._inviteAudio.play();
|
||||||
|
}
|
||||||
|
|
||||||
_listenEvents() {
|
_listenEvents() {
|
||||||
this.matrixClient.on('Room.timeline', (mEvent, room) => {
|
this.matrixClient.on('Room.timeline', (mEvent, room) => {
|
||||||
if (room.isSpaceRoom()) return;
|
if (room.isSpaceRoom()) return;
|
||||||
|
@ -316,6 +324,9 @@ class Notifications extends EventEmitter {
|
||||||
if (membership === 'leave' && this.hasNoti(room.roomId)) {
|
if (membership === 'leave' && this.hasNoti(room.roomId)) {
|
||||||
this.deleteNoti(room.roomId);
|
this.deleteNoti(room.roomId);
|
||||||
}
|
}
|
||||||
|
if (membership === 'invite') {
|
||||||
|
this._playInviteSound();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue