From 2192e8e08658479002c060a57aaa837cd1a471ab Mon Sep 17 00:00:00 2001 From: Adhidarma Hadiwinoto <adhisimon@gmail.com> Date: Tue, 17 Mar 2015 22:26:44 +0700 Subject: [PATCH] fix duplicate messages handling --- index.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/index.js b/index.js index fb12b60..1b84271 100644 --- a/index.js +++ b/index.js @@ -9,7 +9,7 @@ var strftime = require('strftime'); var pollingTimer; -var lastDataOnPM; +var loggedPM = []; var logger = require('winston'); logger.remove(logger.transports.Console); @@ -87,10 +87,14 @@ function onYmPM(data) { console.log(data); } - if (lastDataOnPM != null) { - if ((lastDataOnPM.sender == data.sender) && (lastDataOnPM.message == data.message)) { - return; - } + // check duplicate message + if (loggedPM.indexOf(data.message_id) >= 0) { + return; + } + + loggedPM.unshift(data.message_id); + if (loggedPM.length > 30) { + loggedPM = loggedPM.slice(0, 10); } lastDataOnPM = data; -- 1.9.0