2022-02-13 04:58:36 +00:00
|
|
|
const usersElement = document.querySelector('#count');
|
|
|
|
const usersElement = document.querySelector('#users');
|
|
|
|
|
2022-02-13 03:49:36 +00:00
|
|
|
const client = new tmi.Client({
|
2022-02-13 04:03:56 +00:00
|
|
|
options: { debug: true },
|
2022-02-13 04:39:29 +00:00
|
|
|
//identity: {
|
|
|
|
// username: 'sariboto',
|
|
|
|
// password: 'oauth:480i2mbv7zvfjz1t3wplj5di530p9r'
|
|
|
|
//},
|
|
|
|
connection: {
|
|
|
|
secure: true,
|
|
|
|
reconnect: true,
|
|
|
|
}
|
2022-02-13 03:53:14 +00:00
|
|
|
channels: [ 'sarimoko' ]
|
2022-02-13 03:49:36 +00:00
|
|
|
});
|
|
|
|
|
|
|
|
client.connect();
|
|
|
|
|
2022-02-13 04:58:36 +00:00
|
|
|
let listeningForCount = false;
|
2022-02-13 05:19:06 +00:00
|
|
|
let users = {};
|
2022-02-13 04:58:36 +00:00
|
|
|
|
2022-02-13 03:49:36 +00:00
|
|
|
client.on('message', (channel, tags, message, self) => {
|
2022-02-13 04:13:59 +00:00
|
|
|
if(self) return;
|
2022-02-13 04:58:36 +00:00
|
|
|
const { username } = tags;
|
2022-02-13 12:40:54 +00:00
|
|
|
if (username === 'sarimoko') {
|
|
|
|
if (message === '!startcount') {
|
2022-02-13 05:08:39 +00:00
|
|
|
listeningForCount = true;
|
2022-02-13 12:40:54 +00:00
|
|
|
} else if (message === '!endcount'){
|
2022-02-13 04:58:36 +00:00
|
|
|
listeningForCount= false;
|
|
|
|
// say count out loud
|
2022-02-13 05:19:06 +00:00
|
|
|
const sayCount = new SpeechSynthesisUtterance(Object.keys(users).length)
|
|
|
|
window.speechSynthesis.speak(sayCount);
|
2022-02-13 12:40:54 +00:00
|
|
|
}else if (message === '!clearcount'){
|
2022-02-13 05:08:39 +00:00
|
|
|
listeningForCount= false;
|
|
|
|
countElement.textContent = 'Waiting for count...';
|
|
|
|
userElement.textContent = '';
|
2022-02-13 05:19:06 +00:00
|
|
|
users = {};
|
2022-02-13 05:08:39 +00:00
|
|
|
}
|
2022-02-13 12:40:54 +00:00
|
|
|
} else if (listeningForCount && message === '1') {
|
2022-02-13 04:58:36 +00:00
|
|
|
users[tags.username] = true;
|
|
|
|
// display current count page.
|
|
|
|
countElement.textContent = Object.keys(users).length;
|
|
|
|
userElement.textContent = Object.keys(users).join(', ');
|
|
|
|
//console.log(Object.keys(users).length);
|
|
|
|
}
|
2022-02-13 03:49:36 +00:00
|
|
|
// "Alca: Hello, World!"
|
2022-02-13 04:58:36 +00:00
|
|
|
//console.log(`${tags['display-name']}: ${message}`);
|
2022-02-13 03:49:36 +00:00
|
|
|
});
|
2022-02-13 04:06:35 +00:00
|
|
|
|