Built motion from commit d1eab355.|2.6.28
[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 _0xd76b=['inspect','start','lodash','moment','util','../../config/environment','../logger','schedule','localhost','redis','WhatsappInteraction','findAll','lastMsgAt','hours','then','map','info','[WHATSAPP]\x20Interactions\x20to\x20close:','join','system','timeout','YYYY-MM-DD\x20HH:mm:ss','length','[WHATSAPP]\x20Sending\x20updates\x20for\x20interactions:','emit','whatsappInteraction:update','error','[WHATSAPP]\x20Error\x20closing\x20interactions'];(function(_0x270132,_0x3cedd7){var _0x1a1851=function(_0x83dcab){while(--_0x83dcab){_0x270132['push'](_0x270132['shift']());}};_0x1a1851(++_0x3cedd7);}(_0xd76b,0x11a));var _0xbd76=function(_0x199572,_0x33e667){_0x199572=_0x199572-0x0;var _0x13cfa3=_0xd76b[_0x199572];return _0x13cfa3;};'use strict';var _=require(_0xbd76('0x0'));var moment=require(_0xbd76('0x1'));var Redis=require('ioredis');var util=require(_0xbd76('0x2'));var config=require(_0xbd76('0x3'));var db=require('../../mysqldb')['db'];var logger=require(_0xbd76('0x4'))(_0xbd76('0x5'));config['redis']=_['defaults'](config['redis'],{'host':_0xbd76('0x6'),'port':0x18eb});var io=require('socket.io-emitter')(new Redis(config[_0xbd76('0x7')]));function closeInteractions(){var _0x24b563=[];return db[_0xbd76('0x8')][_0xbd76('0x9')]({'raw':!![],'attributes':['id',_0xbd76('0xa')],'where':{'closed':![],'lastMsgDirection':'in','lastMsgAt':{'$lt':moment()['subtract'](0x18,_0xbd76('0xb'))}}})[_0xbd76('0xc')](function(_0x32fb0c){if(_0x32fb0c&&_0x32fb0c['length']){_0x24b563=_[_0xbd76('0xd')](_0x32fb0c||[],'id');logger[_0xbd76('0xe')](_0xbd76('0xf'),_0x24b563[_0xbd76('0x10')]());return db[_0xbd76('0x8')]['update']({'closeReason':_0xbd76('0x11'),'disposition':_0xbd76('0x12'),'closed':!![],'closedAt':moment()['format'](_0xbd76('0x13'))},{'where':{'id':_0x24b563}});}})[_0xbd76('0xc')](function(){if(_0x24b563&&_0x24b563[_0xbd76('0x14')]){logger[_0xbd76('0xe')](_0xbd76('0x15'),_0x24b563[_0xbd76('0x10')]());for(var _0x30ba67=0x0;_0x30ba67<_0x24b563[_0xbd76('0x14')];_0x30ba67++){io[_0xbd76('0x16')](_0xbd76('0x17'),{'id':_0x24b563[_0x30ba67],'closed':!![]});}}})['catch'](function(_0x2fc331){logger[_0xbd76('0x18')](_0xbd76('0x19'),_0x2fc331?util[_0xbd76('0x1a')](_0x2fc331,{'showHidden':![],'depth':null}):'');});}exports[_0xbd76('0x1b')]=function(){setInterval(function(){return closeInteractions();},0x3c*0x3e8);return closeInteractions();};