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