Addded notifs.

This commit is contained in:
retoor 2025-02-21 00:41:22 +01:00
parent 54920e1545
commit 8ea41bb592
5 changed files with 26 additions and 11 deletions

View File

@ -263,10 +263,12 @@ class NotificationAudio {
this.schedule = new Schedule(timeout);
}
sounds = [
"/audio/soundfx.d_beep3.mp3",
"/audio/mention1.wav"
];
sounds = {
"message": "/audio/soundfx.d_beep3.mp3",
"mention": "/audio/750607__deadrobotmusic__notification-sound-1.wav",
"messageOtherChannel": "/audio/750608__deadrobotmusic__notification-sound-2.wav",
"ping": "/audio/750609__deadrobotmusic__notification-sound-3.wav",
}
play(soundIndex = 0) {
this.schedule.delay(() => {

View File

@ -116,19 +116,32 @@
setInterval(updateTimes, 1000);
function isMention(message){
function isMentionToMe(message){
const mentionText = '@{{ user.username.value }}';
return message.toLowerCase().includes(mentionText);
}
function extractMentions(message) {
return [...new Set(message.match(/@\w+/g) || [])];
}
function isMentionForSomeoneElse(message){
const mentions = extractMentions(message);
const mentionText = '@{{ user.username.value }}';
return mentions.length > 0 && mentions.indexOf(mentionText) == -1;
}
app.addEventListener("channel-message", (data) => {
if (data.channel_uid !== channelUid) return;
if (data.channel_uid !== channelUid) {
if(!isMentionForSomeoneElse(data.message)){
app.playSound("messageOtherChannel");
}
return;
}
if (data.username !== "{{ user.username.value }}") {
if(isMention(data.message)){
app.playSound(1);
}else{
app.playSound(0);
if(isMentionToMe(data.message)){
app.playSound("mention");
}else if (!isMentionForSomeoneElse(data.message)){
app.playSound("message");
}
}