e466566925f7b2622e9d5962bb34c7eac0498242
[motion2.git] / server / config / schedule / whatsapp.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x26c4=['findAll','subtract','hours','then','map','info','join','WhatsappInteraction','format','length','[WHATSAPP]\x20Sending\x20updates\x20for\x20interactions:','emit','whatsappInteraction:update','catch','error','[WHATSAPP]\x20Error\x20closing\x20interactions','inspect','start','lodash','moment','ioredis','util','../../config/environment','../../mysqldb','../logger','schedule','localhost','redis'];(function(_0x5ad144,_0x4b1087){var _0x48f80a=function(_0x48113c){while(--_0x48113c){_0x5ad144['push'](_0x5ad144['shift']());}};_0x48f80a(++_0x4b1087);}(_0x26c4,0x82));var _0x426c=function(_0x392489,_0x53cd8e){_0x392489=_0x392489-0x0;var _0x476834=_0x26c4[_0x392489];return _0x476834;};'use strict';var _=require(_0x426c('0x0'));var moment=require(_0x426c('0x1'));var Redis=require(_0x426c('0x2'));var util=require(_0x426c('0x3'));var config=require(_0x426c('0x4'));var db=require(_0x426c('0x5'))['db'];var logger=require(_0x426c('0x6'))(_0x426c('0x7'));config['redis']=_['defaults'](config['redis'],{'host':_0x426c('0x8'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0x426c('0x9')]));function closeInteractions(){var _0x419845=[];return db['WhatsappInteraction'][_0x426c('0xa')]({'raw':!![],'attributes':['id','lastMsgAt'],'where':{'closed':![],'lastMsgDirection':'in','lastMsgAt':{'$lt':moment()[_0x426c('0xb')](0x18,_0x426c('0xc'))}}})[_0x426c('0xd')](function(_0x8c85b7){if(_0x8c85b7&&_0x8c85b7['length']){_0x419845=_[_0x426c('0xe')](_0x8c85b7||[],'id');logger[_0x426c('0xf')]('[WHATSAPP]\x20Interactions\x20to\x20close:',_0x419845[_0x426c('0x10')]());return db[_0x426c('0x11')]['update']({'closeReason':'system','disposition':'timeout','closed':!![],'closedAt':moment()[_0x426c('0x12')]('YYYY-MM-DD\x20HH:mm:ss')},{'where':{'id':_0x419845}});}})[_0x426c('0xd')](function(){if(_0x419845&&_0x419845[_0x426c('0x13')]){logger[_0x426c('0xf')](_0x426c('0x14'),_0x419845['join']());for(var _0x221c7e=0x0;_0x221c7e<_0x419845[_0x426c('0x13')];_0x221c7e++){io[_0x426c('0x15')](_0x426c('0x16'),{'id':_0x419845[_0x221c7e],'closed':!![]});}}})[_0x426c('0x17')](function(_0x1c1f3f){logger[_0x426c('0x18')](_0x426c('0x19'),_0x1c1f3f?util[_0x426c('0x1a')](_0x1c1f3f,{'showHidden':![],'depth':null}):'');});}exports[_0x426c('0x1b')]=function(){setInterval(function(){return closeInteractions();},0x3c*0x3e8);return closeInteractions();};