var idleTimeout = 1000 * 60 * 15; // 15 minutes
var participantTimeouts = {};
function onParticipantActivity(participant) {
if (participantTimeouts[participant.id]) {
clearTimeout(participantTimeouts[participant.id]);
} else {
console.log(participant.name, "is no longer AFMPP");
}
participantTimeouts[participant.id] = setTimeout(onParticipantInactivity, idleTimeout, participant);
}
function onParticipantInactivity(participant) {
participantTimeouts[participant.id] = undefined;
console.log(participant.name, "is now AFMPP");
}
MPP.client.on("a", msg => { // chat
onParticipantActivity(msg.p);
});
MPP.client.on("m", msg => { // mouse
onParticipantActivity(MPP.client.ppl[msg.id]);
});
MPP.client.on("n", msg => { // notes
onParticipantActivity(MPP.client.ppl[msg.p]);
});