diff --git a/common/lkt.js b/common/lkt.js index 638dde272ca9ed31fe92cca1dcd1cde7ec5507a7..c1672218baf1b4243b4af26dae340bf0e4de925e 100644 --- a/common/lkt.js +++ b/common/lkt.js @@ -260,7 +260,7 @@ class LktClient { var matches; var dataObj; var karaList; - var cont; + var prevcont=0; const regex = /([0-9]+) (vo|va|amv|cdg|autres|vtuber) - (jp|fr|en|ru|sp|it|ch|latin|heb|multi|undefined) \/ (.+) - (OP|ED|IS|AMV|PV|MV|LIVE)([0-9]*) - (.+) \[ (.+) \]/; var reg = new RegExp(regex); function __getResult(client) { @@ -275,15 +275,12 @@ class LktClient { dataObj = __mpdToObject(data); karaList = data.split("\n"); if(dataObj.continue){ - karaList.splice(dataObj.continue); - cont = dataObj.continue; + karaList.splice(-3); } else{ karaList.splice(-1); } - logger.debug("abab",JSON.stringify(karaList)); karaList.forEach(kara => { - logger.debug("pokemon",kara) matches = reg.exec(kara); result.push( { id:matches[1], @@ -296,10 +293,11 @@ class LktClient { }); //logger.info("kara",matches[1]); }); - if(dataObj.continue) { - client.m_socket.write(`${cont} listplaylist ${playlist}\n`); + if(dataObj.continue && prevcont!= dataObj.continue) { + client.m_socket.write(`${dataObj.continue} listplaylist ${playlist}\n`); + prevcont = dataObj.continue; } - else{ + else if(dataObj.continue){ client.close(); resolv(result); }