diff --git a/common/lkt.js b/common/lkt.js index 54de47090052d28aceb268c95a5bce0c13df5762..638dde272ca9ed31fe92cca1dcd1cde7ec5507a7 100644 --- a/common/lkt.js +++ b/common/lkt.js @@ -260,7 +260,8 @@ class LktClient { var matches; var dataObj; var karaList; - const regex = /([0-9]+) (vo|va|amv|cdg|autres|vtuber) - (jp|fr|en|ru|sp|it|ch|latin|multi|undefined) \/ (.+) - (OP|ED|IS|AMV|PV|MV|LIVE)([0-9]*) - (.+) \[ (.+) \]/; + var cont; + 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) { return new Promise(resolv => { @@ -271,11 +272,18 @@ class LktClient { once = true; return null; } else { - client.close(); dataObj = __mpdToObject(data); karaList = data.split("\n"); - karaList.splice(dataObj.continue); + if(dataObj.continue){ + karaList.splice(dataObj.continue); + cont = dataObj.continue; + } + 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], @@ -288,7 +296,13 @@ class LktClient { }); //logger.info("kara",matches[1]); }); - resolv(result); + if(dataObj.continue) { + client.m_socket.write(`${cont} listplaylist ${playlist}\n`); + } + else{ + client.close(); + resolv(result); + } } }); });