Alterar o som de notificação do chat box
3 participantes
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Alterar o som de notificação do chat box
Detalhes da questão
Endereço do fórum: https://seudiario.forumeiros.com
Versão do fórum: phpBB2
Descrição
ola a todos por gentileza poderiam inserir o som de campainha ding-dong classico no código a seguir
- Código:
window.localStorage && $(window).load(function() {
var sounds = {
'future': 'https://illiweb.com/fa/fdf/future.mp3',
'hal': 'https://illiweb.com/fa/fdf/hal.mp3',
'secret': 'https://illiweb.com/fa/fdf/secret.mp3',
};
var default_sound = sounds['future'];
var default_freq = 'all';
var default_when = 'always';
var default_volume = 100;
if(localStorage.cb_sound && !localStorage.cb_sound.indexOf('https://dl.dropboxusercontent.com/u/181621985/')) localStorage.removeItem('cb_sound');
var a = document.createElement('audio');
if(!a.canPlayType) return;
a.volume = Math.min(1, Math.max(0, localStorage.cb_volume||(default_volume/100)));
var origin_send = Chatbox.prototype.send;
Chatbox.prototype.send = function(params) {
var m = $.trim($("#message").val());
if(m.indexOf('/sound')&&m.indexOf('/soudn'))
return origin_send.call(this, params);
m = $.trim(m.substr(6)).split(/\s+/,3);
var bad_apple = false;
switch(m[0].toLowerCase()) {
case "":
if(!a.src) {
a.src = localStorage.cb_sound||default_sound;
a.load();
}
a.play();
break;
case "all":
case "new":
localStorage.cb_freq = m[0]; break;
case "always":
case "off":
case "on":
case "once":
case "never":
localStorage.cb_when = m[0]; break;
case "stop":
if(!a.paused) a.pause();
if(!a.ended && a.readyState > 0) a.currentTime = 0;
break;
case "pause":
if(!a.paused) a.pause();
break;
case "volume":
if(m.length>1) {
localStorage.cb_volume = Math.min(1, Math.max(0, parseFloat(m[1].replace(',','.'))/100));
a.volume = localStorage.cb_volume;
break
}
default:
bad_apple = true;
};
if(bad_apple) {
if(m[0] in sounds) {
m[0]= sounds[m[0]];
}
if(m[0]=="default") {
m[0]=default_sound;
localStorage.removeItem('cb_sound');
localStorage.removeItem('cb_freq');
localStorage.removeItem('cb_volume');
localStorage.removeItem('cb_when');
a.volume = Math.min(1, Math.max(0, default_volume/100));
}
if(/^https?:\/\/.+/.test(m[0])) {
localStorage.cb_sound = m[0];
a.pause();
a.src = m[0];
a.load();
a.play();
} else {
var message = $('#message').val();
alert('/sound [all | new]\n/sound [always | off | on | once | never]\n/sound [stop | pause]\n/sound default\n/sound volume 0-100\n/sound ['+$.map(sounds,function(_,k){return k}).join(' | ')+']\n/sound [http://* | https://*]');
setTimeout(function(){ $("#message").val(message).select().focus(); }, 100);
return;
}
}
return $("#message").val('').focus();
};
$(window).on("focus", function(){ localStorage.removeItem('cb_once'); localStorage.removeItem('cb_blurred') }).on("blur", function(){ localStorage.cb_blurred=1; });
var play_sound = function(){
if(a.paused || a.ended) {
if(a.readyState > 0) a.currentTime=0;
if(!a.src) {
a.src = localStorage.cb_sound||default_sound;
a.load()
}
a.play()
}
};
var overrided = Chatbox.prototype.refresh;
Chatbox.prototype.refresh = function(data) {
if (data.messages && data.messages.length) {
var lm = data.messages.slice(-1)[0];
var last_message = lm.time+','+lm.action+','+lm.msg;
if(this.last_message_sound != last_message) {
var user = $.grep(data.users, function(v){return v.id==chatbox.userId});
user = user.length ? user[0] : [{}];
if(this.last_message_sound!==undefined) {
var freq = (localStorage.cb_freq||default_freq);
var when = (localStorage.cb_when||default_when);
if(when != "never" && (when != "off" || localStorage.cb_blurred) && (when != "on" || !localStorage.cb_blurred) && (when != "once" || (localStorage.cb_blurred && !localStorage.cb_once))) {
if(freq =="all" || (lm.userId!=chatbox.userId && user.username!=lm.username)) {
if(when!="once" || !localStorage.cb_once) {
play_sound();
localStorage.cb_once = 1;
}
}
}
}
this.last_message_sound = lm;
}
}
overrided.call(this, data);
};
});
https://toque123.com/campainha-ding-dong/
desde já muito obrigado
Re: Alterar o som de notificação do chat box
Boa tarde.
É bom ensinar como incluir novos sons... Então, vou explicar como fazê-lo. Tecnicamente você tem uma variável de nome sounds do tipo array que contém os links dos áudios. Quando conseguir um áudio desejado, então você poderá incluir (exemplo do que citou). Esse array contém o nome do som e o valor dele. Para incluir, basta duplicar a primeira linha (por exemplo) e substituir os valores:
O que define qual é o som padrão do chat então? A variável default_sound define qual é o som padrão. Então, basta trocar o nome que está entre as aspas dessa variável pelo nome do som que incluímos no array. Ou seja, o DingDong e pronto. A variável ficará:
Atenciosamente,
Shek
É bom ensinar como incluir novos sons... Então, vou explicar como fazê-lo. Tecnicamente você tem uma variável de nome sounds do tipo array que contém os links dos áudios. Quando conseguir um áudio desejado, então você poderá incluir (exemplo do que citou). Esse array contém o nome do som e o valor dele. Para incluir, basta duplicar a primeira linha (por exemplo) e substituir os valores:
- Código:
'future': 'https://illiweb.com/fa/fdf/future.mp3',
- Código:
'DingDong':'https://toque123.com/wp-content/uploads/2020/10/Campainha-Ding-Dong.mp3',
O que define qual é o som padrão do chat então? A variável default_sound define qual é o som padrão. Então, basta trocar o nome que está entre as aspas dessa variável pelo nome do som que incluímos no array. Ou seja, o DingDong e pronto. A variável ficará:
- Código:
var default_sound = sounds['DingDong'];
- Código:
var sounds = {
'future': 'https://illiweb.com/fa/fdf/future.mp3',
'hal': 'https://illiweb.com/fa/fdf/hal.mp3',
'secret': 'https://illiweb.com/fa/fdf/secret.mp3',
'DingDong':'https://toque123.com/wp-content/uploads/2020/10/Campainha-Ding-Dong.mp3'
};
var default_sound = sounds['DingDong'];
var default_freq = 'all';
var default_when = 'always';
var default_volume = 100;
Atenciosamente,
Shek
Re: Alterar o som de notificação do chat box
Obrigado vou guardar esse tutorial caso um dia eu queira modificar o som do chat novamente obrigado Shek pode fechar o tópico
tikky- Admineiro
- Membro desde : 13/01/2017
Mensagens : 7962
Pontos : 9217
Tópicos semelhantes
» Notificação sonora ao receber uma mensagem no Chat box
» Como alterar a cor da chat box
» Alterar o título do chat box
» Alterar a cor do texto no chat
» Alterar posição do chat
» Como alterar a cor da chat box
» Alterar o título do chat box
» Alterar a cor do texto no chat
» Alterar posição do chat
Fórum dos Fóruns :: Ajuda e atendimento ao utilizador :: Questões sobre códigos :: Questões resolvidas sobre códigos Javascript e jQuery
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos