Built motion from commit bab6f49e.|2.6.17
[motion2.git] / server / api / smsInteraction / smsInteraction.controller.js
index 144f494..2687e04 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xba98=['update','then','error','name','index','SmsInteraction','fieldName','type','key','getOptions','findAll','sms','user','catch','model','keys','rawAttributes','query','filters','intersection','attributes','fields','length','includeAll','find','create','body','params','describe','addMessage','SmsMessage','ids','omit','getMessages','hasOwnProperty','nolimit','order','sort','pick','where','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','merge','include','rows','addTags','setTags','spread','Tag','color','emit','smsInteractionTags:save','removeTags','download','unix','root','files','tmp','transcript-%d-%s.zip','push','User','fullname','CmContact','Contact','firstName','lastName','createdAt','secret','SmsAccount','Owner','get','mkdirSync','Sms','Account','toString','closed','disposition','Messages','map','direction','out','System','read','renderFile','join','server','views','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','log','err','unlinkSync','rimraf','zip-dir','bluebird','util','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','redis','socket.io-emitter','./smsInteraction.socket','register','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range'];(function(_0x261527,_0x4aa9f5){var _0x540a18=function(_0xd6cd8){while(--_0xd6cd8){_0x261527['push'](_0x261527['shift']());}};_0x540a18(++_0x4aa9f5);}(_0xba98,0xdd));var _0x8ba9=function(_0x1b4a68,_0x59c033){_0x1b4a68=_0x1b4a68-0x0;var _0x78e106=_0xba98[_0x1b4a68];return _0x78e106;};'use strict';var rimraf=require(_0x8ba9('0x0'));var zipdir=require(_0x8ba9('0x1'));var moment=require('moment');var BPromise=require(_0x8ba9('0x2'));var util=require(_0x8ba9('0x3'));var path=require(_0x8ba9('0x4'));var ejs=require(_0x8ba9('0x5'));var fs=require('fs');var _=require(_0x8ba9('0x6'));var Redis=require(_0x8ba9('0x7'));var interaction=require(_0x8ba9('0x8'));var qs=require(_0x8ba9('0x9'));var pdf=require('../../components/export/pdf');var logger=require(_0x8ba9('0xa'))('api');var config=require(_0x8ba9('0xb'));var db=require(_0x8ba9('0xc'))['db'];config[_0x8ba9('0xd')]=_['defaults'](config[_0x8ba9('0xd')],{'host':'localhost','port':0x18eb});var socket=require(_0x8ba9('0xe'))(new Redis(config[_0x8ba9('0xd')]));require(_0x8ba9('0xf'))[_0x8ba9('0x10')](socket);function respondWithStatusCode(_0x5811f3,_0xd362a8){_0xd362a8=_0xd362a8||0xcc;return function(_0x729eab){if(_0x729eab){return _0x5811f3[_0x8ba9('0x11')](_0xd362a8);}return _0x5811f3['status'](_0xd362a8)[_0x8ba9('0x12')]();};}function respondWithResult(_0x4a44e6,_0x28b5e8){_0x28b5e8=_0x28b5e8||0xc8;return function(_0x428ea1){if(_0x428ea1){return _0x4a44e6[_0x8ba9('0x13')](_0x28b5e8)[_0x8ba9('0x14')](_0x428ea1);}};}function respondWithFilteredResult(_0x3ef351,_0x345293){return function(_0x125666){if(_0x125666){var _0x30d6de=typeof _0x345293[_0x8ba9('0x15')]===_0x8ba9('0x16')&&typeof _0x345293[_0x8ba9('0x17')]===_0x8ba9('0x16');var _0xe8ddd9=_0x125666[_0x8ba9('0x18')];var _0x97da73=_0x30d6de?0x0:_0x345293[_0x8ba9('0x15')];var _0x7d943b=_0x30d6de?_0x125666[_0x8ba9('0x18')]:_0x345293[_0x8ba9('0x15')]+_0x345293['limit'];var _0x356a6f;if(_0x7d943b>=_0xe8ddd9){_0x7d943b=_0xe8ddd9;_0x356a6f=0xc8;}else{_0x356a6f=0xce;}_0x3ef351[_0x8ba9('0x13')](_0x356a6f);return _0x3ef351[_0x8ba9('0x19')](_0x8ba9('0x1a'),_0x97da73+'-'+_0x7d943b+'/'+_0xe8ddd9)['json'](_0x125666);}return null;};}function saveUpdates(_0x157971){return function(_0x45dc70){if(_0x45dc70){return _0x45dc70[_0x8ba9('0x1b')](_0x157971)[_0x8ba9('0x1c')](function(_0xb55625){return _0xb55625;});}return null;};}function removeEntity(_0x266c4b){return function(_0x4612b0){if(_0x4612b0){return _0x4612b0['destroy']()[_0x8ba9('0x1c')](function(){_0x266c4b[_0x8ba9('0x13')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3ca71e){return function(_0x409291){if(!_0x409291){_0x3ca71e[_0x8ba9('0x11')](0x194);}return _0x409291;};}function handleError(_0x52ba8c,_0x124254){_0x124254=_0x124254||0x1f4;return function(_0x5af9f7){logger[_0x8ba9('0x1d')](_0x5af9f7['stack']);if(_0x5af9f7[_0x8ba9('0x1e')]){delete _0x5af9f7[_0x8ba9('0x1e')];}_0x52ba8c['status'](_0x124254)['send'](_0x5af9f7);};}exports[_0x8ba9('0x1f')]=function(_0x10e9b1,_0x1c3662){var _0x381b1e={};var _0x308eee=_['map'](db[_0x8ba9('0x20')]['rawAttributes'],function(_0x1fe5bb){return{'name':_0x1fe5bb[_0x8ba9('0x21')],'type':_0x1fe5bb[_0x8ba9('0x22')][_0x8ba9('0x23')]};});_0x381b1e=qs[_0x8ba9('0x24')](_0x308eee,_0x10e9b1);return interaction[_0x8ba9('0x25')](_0x8ba9('0x26'),_0x10e9b1['query'],_0x10e9b1[_0x8ba9('0x27')],_0x381b1e,_0x308eee)[_0x8ba9('0x1c')](respondWithFilteredResult(_0x1c3662,_0x381b1e))[_0x8ba9('0x28')](handleError(_0x1c3662,null));};exports['show']=function(_0x37cc23,_0x3900ad){var _0x297e47={'raw':![],'where':{'id':_0x37cc23['params']['id']}},_0x125485={};_0x125485[_0x8ba9('0x29')]=_[_0x8ba9('0x2a')](db['SmsInteraction'][_0x8ba9('0x2b')]);_0x125485[_0x8ba9('0x2c')]=_[_0x8ba9('0x2a')](_0x37cc23[_0x8ba9('0x2c')]);_0x125485[_0x8ba9('0x2d')]=_[_0x8ba9('0x2e')](_0x125485[_0x8ba9('0x29')],_0x125485[_0x8ba9('0x2c')]);_0x297e47[_0x8ba9('0x2f')]=_[_0x8ba9('0x2e')](_0x125485['model'],qs[_0x8ba9('0x30')](_0x37cc23['query'][_0x8ba9('0x30')]));_0x297e47[_0x8ba9('0x2f')]=_0x297e47[_0x8ba9('0x2f')][_0x8ba9('0x31')]?_0x297e47[_0x8ba9('0x2f')]:_0x125485[_0x8ba9('0x29')];if(_0x37cc23[_0x8ba9('0x2c')][_0x8ba9('0x32')]){_0x297e47['include']=[{'all':!![]}];}_0x297e47=_['merge']({},_0x297e47,_0x37cc23['options']);return db[_0x8ba9('0x20')][_0x8ba9('0x33')](_0x297e47)[_0x8ba9('0x1c')](handleEntityNotFound(_0x3900ad,null))[_0x8ba9('0x1c')](respondWithResult(_0x3900ad,null))[_0x8ba9('0x28')](handleError(_0x3900ad,null));};exports[_0x8ba9('0x34')]=function(_0x13e453,_0x3713e4){return db[_0x8ba9('0x20')][_0x8ba9('0x34')](_0x13e453[_0x8ba9('0x35')],{})[_0x8ba9('0x1c')](respondWithResult(_0x3713e4,0xc9))[_0x8ba9('0x28')](handleError(_0x3713e4,null));};exports[_0x8ba9('0x1b')]=function(_0x4a4000,_0xc981c3){if(_0x4a4000[_0x8ba9('0x35')]['id']){delete _0x4a4000[_0x8ba9('0x35')]['id'];}return db['SmsInteraction']['find']({'where':{'id':_0x4a4000[_0x8ba9('0x36')]['id']}})[_0x8ba9('0x1c')](handleEntityNotFound(_0xc981c3,null))[_0x8ba9('0x1c')](saveUpdates(_0x4a4000['body'],null))['then'](respondWithResult(_0xc981c3,null))[_0x8ba9('0x28')](handleError(_0xc981c3,null));};exports['destroy']=function(_0x16e916,_0x42670a){return db[_0x8ba9('0x20')][_0x8ba9('0x33')]({'where':{'id':_0x16e916[_0x8ba9('0x36')]['id']}})[_0x8ba9('0x1c')](handleEntityNotFound(_0x42670a,null))[_0x8ba9('0x1c')](removeEntity(_0x42670a,null))[_0x8ba9('0x28')](handleError(_0x42670a,null));};exports[_0x8ba9('0x37')]=function(_0x126d51,_0x4c2341){return db['SmsInteraction'][_0x8ba9('0x37')]()['then'](respondWithResult(_0x4c2341,null))[_0x8ba9('0x28')](handleError(_0x4c2341,null));};exports[_0x8ba9('0x38')]=function(_0x40563b,_0x498d42){return db[_0x8ba9('0x39')]['find']({'where':{'id':_0x40563b[_0x8ba9('0x36')]['id']}})[_0x8ba9('0x1c')](handleEntityNotFound(_0x498d42,null))['then'](function(_0x38e127){if(_0x38e127){return _0x38e127[_0x8ba9('0x38')](_0x40563b[_0x8ba9('0x35')][_0x8ba9('0x3a')],_[_0x8ba9('0x3b')](_0x40563b[_0x8ba9('0x35')],[_0x8ba9('0x3a'),'id'])||{});}})[_0x8ba9('0x1c')](respondWithResult(_0x498d42,null))[_0x8ba9('0x28')](handleError(_0x498d42,null));};exports[_0x8ba9('0x3c')]=function(_0x3a2d5e,_0x3a3fe6){var _0x1bfa83={'raw':![],'where':{}};var _0x484a80={};var _0x4a0ff0={'count':0x0,'rows':[]};return db[_0x8ba9('0x20')]['findOne']({'where':{'id':_0x3a2d5e[_0x8ba9('0x36')]['id']}})[_0x8ba9('0x1c')](handleEntityNotFound(_0x3a3fe6,null))[_0x8ba9('0x1c')](function(_0x393820){if(_0x393820){_0x484a80['model']=_[_0x8ba9('0x2a')](db[_0x8ba9('0x39')]['rawAttributes']);_0x484a80[_0x8ba9('0x2c')]=_['keys'](_0x3a2d5e[_0x8ba9('0x2c')]);_0x484a80[_0x8ba9('0x2d')]=_[_0x8ba9('0x2e')](_0x484a80['model'],_0x484a80[_0x8ba9('0x2c')]);_0x1bfa83[_0x8ba9('0x2f')]=_[_0x8ba9('0x2e')](_0x484a80['model'],qs[_0x8ba9('0x30')](_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x30')]));_0x1bfa83[_0x8ba9('0x2f')]=_0x1bfa83[_0x8ba9('0x2f')]['length']?_0x1bfa83[_0x8ba9('0x2f')]:_0x484a80[_0x8ba9('0x29')];if(!_0x3a2d5e['query'][_0x8ba9('0x3d')](_0x8ba9('0x3e'))){_0x1bfa83['limit']=qs['limit'](_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x17')]);_0x1bfa83[_0x8ba9('0x15')]=qs[_0x8ba9('0x15')](_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x15')]);}_0x1bfa83[_0x8ba9('0x3f')]=qs[_0x8ba9('0x40')](_0x3a2d5e['query'][_0x8ba9('0x40')]);_0x1bfa83['where']=qs['filters'](_[_0x8ba9('0x41')](_0x3a2d5e[_0x8ba9('0x2c')],_0x484a80['filters']));_0x1bfa83[_0x8ba9('0x42')]['SmsInteractionId']=_0x393820['id'];if(_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x43')]){_0x1bfa83[_0x8ba9('0x42')]=_['merge'](_0x1bfa83[_0x8ba9('0x42')],{'$or':_['map'](_0x1bfa83[_0x8ba9('0x2f')],function(_0xa52349){var _0x28bb80={};_0x28bb80[_0xa52349]={'$like':'%'+_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x43')]+'%'};return _0x28bb80;})});}if(_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x44')]){var _0x5502b2=_0x3a2d5e[_0x8ba9('0x2c')]['$gte'][_0x8ba9('0x45')](',');var _0x586491={};_0x586491[_0x5502b2[0x0]]={'$gte':moment(_0x5502b2[0x1])[_0x8ba9('0x46')](_0x8ba9('0x47'))};_0x1bfa83['where']=_[_0x8ba9('0x48')](_0x1bfa83[_0x8ba9('0x42')],_0x586491);}_0x1bfa83=_[_0x8ba9('0x48')]({},_0x1bfa83,_0x3a2d5e['options']);return db[_0x8ba9('0x39')][_0x8ba9('0x18')]({'where':_0x1bfa83[_0x8ba9('0x42')]})[_0x8ba9('0x1c')](function(_0x79caa6){_0x4a0ff0[_0x8ba9('0x18')]=_0x79caa6;if(_0x3a2d5e[_0x8ba9('0x2c')][_0x8ba9('0x32')]){_0x1bfa83[_0x8ba9('0x49')]=[{'all':!![]}];}return db[_0x8ba9('0x39')][_0x8ba9('0x25')](_0x1bfa83);})[_0x8ba9('0x1c')](function(_0x1bc2ef){_0x4a0ff0[_0x8ba9('0x4a')]=_0x1bc2ef;return _0x4a0ff0;});}})[_0x8ba9('0x1c')](respondWithFilteredResult(_0x3a3fe6,_0x1bfa83))[_0x8ba9('0x28')](handleError(_0x3a3fe6,null));};exports[_0x8ba9('0x4b')]=function(_0x27bcb1,_0x40f190){return db['SmsInteraction'][_0x8ba9('0x33')]({'where':{'id':_0x27bcb1[_0x8ba9('0x36')]['id']}})[_0x8ba9('0x1c')](handleEntityNotFound(_0x40f190,null))[_0x8ba9('0x1c')](function(_0x3fea97){if(_0x3fea97){return _0x3fea97[_0x8ba9('0x4c')](_0x27bcb1[_0x8ba9('0x35')][_0x8ba9('0x3a')],_[_0x8ba9('0x3b')](_0x27bcb1[_0x8ba9('0x35')],[_0x8ba9('0x3a'),'id'])||{})[_0x8ba9('0x4d')](function(){return db[_0x8ba9('0x4e')][_0x8ba9('0x25')]({'attributes':['id',_0x8ba9('0x1e'),_0x8ba9('0x4f')],'where':{'id':_0x27bcb1[_0x8ba9('0x35')][_0x8ba9('0x3a')]}});})[_0x8ba9('0x1c')](function(_0x3f1e43){socket[_0x8ba9('0x50')](_0x8ba9('0x51'),{'id':Number(_0x27bcb1[_0x8ba9('0x36')]['id']),'tags':_0x3f1e43||[]});return{'id':Number(_0x27bcb1[_0x8ba9('0x36')]['id']),'tags':_0x3f1e43||[]};});}})[_0x8ba9('0x1c')](respondWithResult(_0x40f190,null))['catch'](handleError(_0x40f190,null));};exports['removeTags']=function(_0x14f521,_0x268020){return db[_0x8ba9('0x20')]['find']({'where':{'id':_0x14f521[_0x8ba9('0x36')]['id']}})['then'](handleEntityNotFound(_0x268020,null))[_0x8ba9('0x1c')](function(_0x4c2ead){if(_0x4c2ead){return _0x4c2ead[_0x8ba9('0x52')](_0x14f521[_0x8ba9('0x2c')]['ids']);}})[_0x8ba9('0x1c')](respondWithStatusCode(_0x268020,null))[_0x8ba9('0x28')](handleError(_0x268020,null));};exports[_0x8ba9('0x53')]=function(_0x41187e,_0x19f1f6){var _0xbf8ec1=moment()[_0x8ba9('0x54')]()['toString']();var _0x2dc148=path['join'](config[_0x8ba9('0x55')],'server',_0x8ba9('0x56'),_0x8ba9('0x57'));var _0x2701f3=path['join'](_0x2dc148,_0xbf8ec1);var _0x184490=util[_0x8ba9('0x46')](_0x8ba9('0x58'),_0x41187e[_0x8ba9('0x36')]['id'],_0xbf8ec1);var _0x170eb8=path['join'](_0x2dc148,_0x184490);var _0x352097=[];_0x352097[_0x8ba9('0x59')]({'model':db[_0x8ba9('0x5a')],'as':_0x8ba9('0x5a'),'attributes':['id',_0x8ba9('0x5b')],'raw':!![]});_0x352097['push']({'model':db[_0x8ba9('0x5c')],'as':_0x8ba9('0x5d'),'attributes':['id',_0x8ba9('0x5e'),_0x8ba9('0x5f')],'raw':!![]});var _0x5efade=[{'model':db[_0x8ba9('0x39')],'as':'Messages','attributes':['id',_0x8ba9('0x35'),_0x8ba9('0x60'),'direction',_0x8ba9('0x61'),'read'],'include':_0x352097}];_0x5efade[_0x8ba9('0x59')]({'model':db[_0x8ba9('0x62')],'as':'Account','attributes':['id',_0x8ba9('0x1e')]});_0x5efade[_0x8ba9('0x59')]({'model':db['User'],'as':_0x8ba9('0x63'),'attributes':['id',_0x8ba9('0x5b')]});return db[_0x8ba9('0x20')][_0x8ba9('0x33')]({'where':{'id':_0x41187e[_0x8ba9('0x36')]['id']},'include':_0x5efade})['then'](handleEntityNotFound(_0x19f1f6,null))[_0x8ba9('0x1c')](function(_0x4bd4da){if(_0x4bd4da){var _0x433d20=_0x4bd4da[_0x8ba9('0x64')]({'plain':!![]});fs[_0x8ba9('0x65')](_0x2701f3);var _0x512303={'channel':_0x8ba9('0x66'),'account':_0x433d20[_0x8ba9('0x67')][_0x8ba9('0x1e')],'agent':_0x433d20[_0x8ba9('0x63')]?_0x433d20[_0x8ba9('0x63')][_0x8ba9('0x5b')]:'N.A.','createdAt':moment(_0x433d20[_0x8ba9('0x60')])[_0x8ba9('0x46')](_0x8ba9('0x47'))[_0x8ba9('0x68')](),'closedAt':_0x433d20[_0x8ba9('0x69')]?moment(_0x433d20['closedAt'])[_0x8ba9('0x46')]('YYYY-MM-DD\x20HH:mm:ss')['toString']():'','disposition':_0x433d20[_0x8ba9('0x6a')],'messages':_(_0x433d20[_0x8ba9('0x6b')])[_0x8ba9('0x43')]({'secret':![]})[_0x8ba9('0x6c')](function(_0x2a4dd1){return{'date':moment(_0x2a4dd1[_0x8ba9('0x60')])['format'](_0x8ba9('0x47'))[_0x8ba9('0x68')](),'sender':_0x2a4dd1[_0x8ba9('0x6d')]===_0x8ba9('0x6e')?_0x2a4dd1[_0x8ba9('0x5a')]?_0x2a4dd1[_0x8ba9('0x5a')][_0x8ba9('0x5b')]:_0x8ba9('0x6f'):_0x2a4dd1[_0x8ba9('0x5d')]['firstName']+(_0x2a4dd1[_0x8ba9('0x5d')]['lastName']?'\x20'+_0x2a4dd1['Contact'][_0x8ba9('0x5f')]:''),'body':_0x2a4dd1['body'],'direction':_0x2a4dd1[_0x8ba9('0x6d')]===_0x8ba9('0x6e')?'A':'C','secret':_0x2a4dd1[_0x8ba9('0x61')],'read':_0x2a4dd1[_0x8ba9('0x70')]};})['value']()};return ejs[_0x8ba9('0x71')](path[_0x8ba9('0x72')](config[_0x8ba9('0x55')],_0x8ba9('0x73'),_0x8ba9('0x74'),_0x8ba9('0x75')),{'interaction':_0x512303})[_0x8ba9('0x1c')](function(_0x5802e1){var _0x5b2146=path[_0x8ba9('0x72')](_0x2701f3,_0x8ba9('0x76')+_0x433d20['id']+'-'+_0xbf8ec1+_0x8ba9('0x77'));var _0x265468={'path':_0x5b2146,'channel':'Sms','interactionId':_0x433d20['id']};return pdf[_0x8ba9('0x78')](_0x5802e1,_0x265468);})[_0x8ba9('0x1c')](function(){return new BPromise(function(_0x5c2687,_0x1fee93){zipdir(_0x2701f3,{'saveTo':_0x170eb8},function(_0x56912a,_0x421dbd){if(_0x56912a)return _0x1fee93(_0x56912a);return _0x5c2687(_0x421dbd);});})['then'](function(){return new BPromise(function(_0x4b96d9,_0x13d289){rimraf(_0x2701f3,function(_0x3e7dc8){if(_0x3e7dc8)_0x13d289(_0x3e7dc8);return _0x4b96d9();});});})[_0x8ba9('0x1c')](function(){return _0x19f1f6[_0x8ba9('0x53')](_0x170eb8,_0x184490,function(_0xce0f6e){if(_0xce0f6e){console[_0x8ba9('0x79')](_0x8ba9('0x7a'),_0xce0f6e);}else{fs[_0x8ba9('0x7b')](_0x170eb8);}});});});}else{return _0x19f1f6[_0x8ba9('0x11')](0xc8);}})[_0x8ba9('0x28')](handleError(_0x19f1f6,null));};
\ No newline at end of file
+var _0xaa7c=['getMessages','findOne','nolimit','order','sort','where','pick','SmsInteractionId','filter','merge','$gte','format','YYYY-MM-DD\x20HH:mm:ss','count','includeAll','rows','addTags','setTags','spread','Tag','removeTags','download','join','root','files','tmp','transcript-%d-%s.zip','push','User','Contact','firstName','lastName','Messages','direction','secret','read','Account','Owner','fullname','get','Sms','N.A.','createdAt','toString','closed','disposition','out','System','renderFile','server','views','downloadInteraction.ejs','log','err','unlinkSync','bluebird','util','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./smsInteraction.socket','register','status','end','offset','undefined','limit','set','Content-Range','json','update','then','destroy','sendStatus','error','name','send','index','map','SmsInteraction','rawAttributes','type','key','getOptions','findAll','sms','user','catch','show','params','keys','query','filters','intersection','model','attributes','fields','length','include','options','find','create','body','describe','SmsMessage','addMessage','ids','omit'];(function(_0x3401ee,_0x19476c){var _0x383615=function(_0x43ff06){while(--_0x43ff06){_0x3401ee['push'](_0x3401ee['shift']());}};_0x383615(++_0x19476c);}(_0xaa7c,0xad));var _0xcaa7=function(_0x491d3e,_0x3ceff6){_0x491d3e=_0x491d3e-0x0;var _0x399b13=_0xaa7c[_0x491d3e];return _0x399b13;};'use strict';var rimraf=require('rimraf');var zipdir=require('zip-dir');var moment=require('moment');var BPromise=require(_0xcaa7('0x0'));var util=require(_0xcaa7('0x1'));var path=require(_0xcaa7('0x2'));var ejs=require(_0xcaa7('0x3'));var fs=require('fs');var _=require(_0xcaa7('0x4'));var Redis=require(_0xcaa7('0x5'));var interaction=require(_0xcaa7('0x6'));var qs=require(_0xcaa7('0x7'));var pdf=require('../../components/export/pdf');var logger=require(_0xcaa7('0x8'))(_0xcaa7('0x9'));var config=require(_0xcaa7('0xa'));var db=require(_0xcaa7('0xb'))['db'];config[_0xcaa7('0xc')]=_['defaults'](config[_0xcaa7('0xc')],{'host':_0xcaa7('0xd'),'port':0x18eb});var socket=require(_0xcaa7('0xe'))(new Redis(config[_0xcaa7('0xc')]));require(_0xcaa7('0xf'))[_0xcaa7('0x10')](socket);function respondWithStatusCode(_0xca0966,_0x128156){_0x128156=_0x128156||0xcc;return function(_0x92495d){if(_0x92495d){return _0xca0966['sendStatus'](_0x128156);}return _0xca0966[_0xcaa7('0x11')](_0x128156)[_0xcaa7('0x12')]();};}function respondWithResult(_0x496403,_0x527022){_0x527022=_0x527022||0xc8;return function(_0x388edf){if(_0x388edf){return _0x496403[_0xcaa7('0x11')](_0x527022)['json'](_0x388edf);}};}function respondWithFilteredResult(_0x47c039,_0x33b381){return function(_0x1c9a5c){if(_0x1c9a5c){var _0x55360e=typeof _0x33b381[_0xcaa7('0x13')]===_0xcaa7('0x14')&&typeof _0x33b381[_0xcaa7('0x15')]===_0xcaa7('0x14');var _0x3bd708=_0x1c9a5c['count'];var _0x193d3e=_0x55360e?0x0:_0x33b381[_0xcaa7('0x13')];var _0x13a1ce=_0x55360e?_0x1c9a5c['count']:_0x33b381['offset']+_0x33b381[_0xcaa7('0x15')];var _0x58e97f;if(_0x13a1ce>=_0x3bd708){_0x13a1ce=_0x3bd708;_0x58e97f=0xc8;}else{_0x58e97f=0xce;}_0x47c039[_0xcaa7('0x11')](_0x58e97f);return _0x47c039[_0xcaa7('0x16')](_0xcaa7('0x17'),_0x193d3e+'-'+_0x13a1ce+'/'+_0x3bd708)[_0xcaa7('0x18')](_0x1c9a5c);}return null;};}function saveUpdates(_0x10456d){return function(_0x32fe30){if(_0x32fe30){return _0x32fe30[_0xcaa7('0x19')](_0x10456d)[_0xcaa7('0x1a')](function(_0x141973){return _0x141973;});}return null;};}function removeEntity(_0x43469a){return function(_0x3d006c){if(_0x3d006c){return _0x3d006c[_0xcaa7('0x1b')]()['then'](function(){_0x43469a[_0xcaa7('0x11')](0xcc)[_0xcaa7('0x12')]();});}};}function handleEntityNotFound(_0x41efcc){return function(_0x5301f0){if(!_0x5301f0){_0x41efcc[_0xcaa7('0x1c')](0x194);}return _0x5301f0;};}function handleError(_0x43e9fa,_0x7f706c){_0x7f706c=_0x7f706c||0x1f4;return function(_0x55b613){logger[_0xcaa7('0x1d')](_0x55b613['stack']);if(_0x55b613[_0xcaa7('0x1e')]){delete _0x55b613['name'];}_0x43e9fa[_0xcaa7('0x11')](_0x7f706c)[_0xcaa7('0x1f')](_0x55b613);};}exports[_0xcaa7('0x20')]=function(_0x31974b,_0x46cd60){var _0x2046ca={};var _0x400bab=_[_0xcaa7('0x21')](db[_0xcaa7('0x22')][_0xcaa7('0x23')],function(_0x1cafaa){return{'name':_0x1cafaa['fieldName'],'type':_0x1cafaa[_0xcaa7('0x24')][_0xcaa7('0x25')]};});_0x2046ca=qs[_0xcaa7('0x26')](_0x400bab,_0x31974b);return interaction[_0xcaa7('0x27')](_0xcaa7('0x28'),_0x31974b['query'],_0x31974b[_0xcaa7('0x29')],_0x2046ca,_0x400bab)[_0xcaa7('0x1a')](respondWithFilteredResult(_0x46cd60,_0x2046ca))[_0xcaa7('0x2a')](handleError(_0x46cd60,null));};exports[_0xcaa7('0x2b')]=function(_0x307788,_0x276672){var _0x57df63={'raw':![],'where':{'id':_0x307788[_0xcaa7('0x2c')]['id']}},_0x1f05a5={};_0x1f05a5['model']=_[_0xcaa7('0x2d')](db[_0xcaa7('0x22')][_0xcaa7('0x23')]);_0x1f05a5[_0xcaa7('0x2e')]=_['keys'](_0x307788['query']);_0x1f05a5[_0xcaa7('0x2f')]=_[_0xcaa7('0x30')](_0x1f05a5[_0xcaa7('0x31')],_0x1f05a5[_0xcaa7('0x2e')]);_0x57df63[_0xcaa7('0x32')]=_[_0xcaa7('0x30')](_0x1f05a5['model'],qs[_0xcaa7('0x33')](_0x307788[_0xcaa7('0x2e')]['fields']));_0x57df63['attributes']=_0x57df63[_0xcaa7('0x32')][_0xcaa7('0x34')]?_0x57df63['attributes']:_0x1f05a5[_0xcaa7('0x31')];if(_0x307788[_0xcaa7('0x2e')]['includeAll']){_0x57df63[_0xcaa7('0x35')]=[{'all':!![]}];}_0x57df63=_['merge']({},_0x57df63,_0x307788[_0xcaa7('0x36')]);return db[_0xcaa7('0x22')][_0xcaa7('0x37')](_0x57df63)[_0xcaa7('0x1a')](handleEntityNotFound(_0x276672,null))[_0xcaa7('0x1a')](respondWithResult(_0x276672,null))[_0xcaa7('0x2a')](handleError(_0x276672,null));};exports[_0xcaa7('0x38')]=function(_0x49b710,_0x20f2c7){return db[_0xcaa7('0x22')][_0xcaa7('0x38')](_0x49b710['body'],{})[_0xcaa7('0x1a')](respondWithResult(_0x20f2c7,0xc9))[_0xcaa7('0x2a')](handleError(_0x20f2c7,null));};exports[_0xcaa7('0x19')]=function(_0x399d2b,_0x3ae32d){if(_0x399d2b[_0xcaa7('0x39')]['id']){delete _0x399d2b[_0xcaa7('0x39')]['id'];}return db[_0xcaa7('0x22')]['find']({'where':{'id':_0x399d2b['params']['id']}})[_0xcaa7('0x1a')](handleEntityNotFound(_0x3ae32d,null))[_0xcaa7('0x1a')](saveUpdates(_0x399d2b[_0xcaa7('0x39')],null))[_0xcaa7('0x1a')](respondWithResult(_0x3ae32d,null))['catch'](handleError(_0x3ae32d,null));};exports[_0xcaa7('0x1b')]=function(_0xf940bb,_0x487bfb){return db[_0xcaa7('0x22')]['find']({'where':{'id':_0xf940bb[_0xcaa7('0x2c')]['id']}})[_0xcaa7('0x1a')](handleEntityNotFound(_0x487bfb,null))[_0xcaa7('0x1a')](removeEntity(_0x487bfb,null))['catch'](handleError(_0x487bfb,null));};exports[_0xcaa7('0x3a')]=function(_0x47f9e7,_0x4d164f){return db[_0xcaa7('0x22')][_0xcaa7('0x3a')]()['then'](respondWithResult(_0x4d164f,null))[_0xcaa7('0x2a')](handleError(_0x4d164f,null));};exports['addMessage']=function(_0x2bb094,_0x309fbb){return db[_0xcaa7('0x3b')][_0xcaa7('0x37')]({'where':{'id':_0x2bb094[_0xcaa7('0x2c')]['id']}})[_0xcaa7('0x1a')](handleEntityNotFound(_0x309fbb,null))[_0xcaa7('0x1a')](function(_0xd33b7c){if(_0xd33b7c){return _0xd33b7c[_0xcaa7('0x3c')](_0x2bb094[_0xcaa7('0x39')][_0xcaa7('0x3d')],_[_0xcaa7('0x3e')](_0x2bb094['body'],[_0xcaa7('0x3d'),'id'])||{});}})[_0xcaa7('0x1a')](respondWithResult(_0x309fbb,null))['catch'](handleError(_0x309fbb,null));};exports[_0xcaa7('0x3f')]=function(_0x31bf8a,_0x1030b8){var _0x281466={'raw':![],'where':{}};var _0x495c9e={};var _0x2a7951={'count':0x0,'rows':[]};return db['SmsInteraction'][_0xcaa7('0x40')]({'where':{'id':_0x31bf8a[_0xcaa7('0x2c')]['id']}})['then'](handleEntityNotFound(_0x1030b8,null))['then'](function(_0x31473e){if(_0x31473e){_0x495c9e['model']=_[_0xcaa7('0x2d')](db[_0xcaa7('0x3b')]['rawAttributes']);_0x495c9e[_0xcaa7('0x2e')]=_[_0xcaa7('0x2d')](_0x31bf8a[_0xcaa7('0x2e')]);_0x495c9e[_0xcaa7('0x2f')]=_[_0xcaa7('0x30')](_0x495c9e[_0xcaa7('0x31')],_0x495c9e[_0xcaa7('0x2e')]);_0x281466[_0xcaa7('0x32')]=_[_0xcaa7('0x30')](_0x495c9e[_0xcaa7('0x31')],qs[_0xcaa7('0x33')](_0x31bf8a['query'][_0xcaa7('0x33')]));_0x281466[_0xcaa7('0x32')]=_0x281466[_0xcaa7('0x32')]['length']?_0x281466[_0xcaa7('0x32')]:_0x495c9e[_0xcaa7('0x31')];if(!_0x31bf8a[_0xcaa7('0x2e')]['hasOwnProperty'](_0xcaa7('0x41'))){_0x281466['limit']=qs[_0xcaa7('0x15')](_0x31bf8a[_0xcaa7('0x2e')][_0xcaa7('0x15')]);_0x281466[_0xcaa7('0x13')]=qs[_0xcaa7('0x13')](_0x31bf8a[_0xcaa7('0x2e')][_0xcaa7('0x13')]);}_0x281466[_0xcaa7('0x42')]=qs['sort'](_0x31bf8a[_0xcaa7('0x2e')][_0xcaa7('0x43')]);_0x281466[_0xcaa7('0x44')]=qs['filters'](_[_0xcaa7('0x45')](_0x31bf8a[_0xcaa7('0x2e')],_0x495c9e['filters']));_0x281466[_0xcaa7('0x44')][_0xcaa7('0x46')]=_0x31473e['id'];if(_0x31bf8a['query'][_0xcaa7('0x47')]){_0x281466['where']=_[_0xcaa7('0x48')](_0x281466[_0xcaa7('0x44')],{'$or':_[_0xcaa7('0x21')](_0x281466['attributes'],function(_0x3e6cff){var _0xa307ea={};_0xa307ea[_0x3e6cff]={'$like':'%'+_0x31bf8a[_0xcaa7('0x2e')][_0xcaa7('0x47')]+'%'};return _0xa307ea;})});}if(_0x31bf8a[_0xcaa7('0x2e')][_0xcaa7('0x49')]){var _0x31b94b=_0x31bf8a[_0xcaa7('0x2e')][_0xcaa7('0x49')]['split'](',');var _0x160c2f={};_0x160c2f[_0x31b94b[0x0]]={'$gte':moment(_0x31b94b[0x1])[_0xcaa7('0x4a')](_0xcaa7('0x4b'))};_0x281466[_0xcaa7('0x44')]=_[_0xcaa7('0x48')](_0x281466[_0xcaa7('0x44')],_0x160c2f);}_0x281466=_['merge']({},_0x281466,_0x31bf8a[_0xcaa7('0x36')]);return db[_0xcaa7('0x3b')][_0xcaa7('0x4c')]({'where':_0x281466[_0xcaa7('0x44')]})[_0xcaa7('0x1a')](function(_0x22b523){_0x2a7951['count']=_0x22b523;if(_0x31bf8a['query'][_0xcaa7('0x4d')]){_0x281466[_0xcaa7('0x35')]=[{'all':!![]}];}return db['SmsMessage'][_0xcaa7('0x27')](_0x281466);})[_0xcaa7('0x1a')](function(_0x3a820e){_0x2a7951[_0xcaa7('0x4e')]=_0x3a820e;return _0x2a7951;});}})[_0xcaa7('0x1a')](respondWithFilteredResult(_0x1030b8,_0x281466))[_0xcaa7('0x2a')](handleError(_0x1030b8,null));};exports[_0xcaa7('0x4f')]=function(_0x7fe2b7,_0x112a1a){return db['SmsInteraction'][_0xcaa7('0x37')]({'where':{'id':_0x7fe2b7[_0xcaa7('0x2c')]['id']}})['then'](handleEntityNotFound(_0x112a1a,null))['then'](function(_0x16ec1b){if(_0x16ec1b){return _0x16ec1b[_0xcaa7('0x50')](_0x7fe2b7[_0xcaa7('0x39')][_0xcaa7('0x3d')],_[_0xcaa7('0x3e')](_0x7fe2b7[_0xcaa7('0x39')],[_0xcaa7('0x3d'),'id'])||{})[_0xcaa7('0x51')](function(){return db[_0xcaa7('0x52')][_0xcaa7('0x27')]({'attributes':['id',_0xcaa7('0x1e'),'color'],'where':{'id':_0x7fe2b7[_0xcaa7('0x39')][_0xcaa7('0x3d')]}});})[_0xcaa7('0x1a')](function(_0x385f1e){socket['emit']('smsInteractionTags:save',{'id':Number(_0x7fe2b7[_0xcaa7('0x2c')]['id']),'tags':_0x385f1e||[]});return{'id':Number(_0x7fe2b7['params']['id']),'tags':_0x385f1e||[]};});}})[_0xcaa7('0x1a')](respondWithResult(_0x112a1a,null))[_0xcaa7('0x2a')](handleError(_0x112a1a,null));};exports['removeTags']=function(_0x502853,_0x577c87){return db[_0xcaa7('0x22')][_0xcaa7('0x37')]({'where':{'id':_0x502853[_0xcaa7('0x2c')]['id']}})[_0xcaa7('0x1a')](handleEntityNotFound(_0x577c87,null))[_0xcaa7('0x1a')](function(_0x518ec3){if(_0x518ec3){return _0x518ec3[_0xcaa7('0x53')](_0x502853[_0xcaa7('0x2e')][_0xcaa7('0x3d')]);}})[_0xcaa7('0x1a')](respondWithStatusCode(_0x577c87,null))[_0xcaa7('0x2a')](handleError(_0x577c87,null));};exports[_0xcaa7('0x54')]=function(_0x15088e,_0x8f8e21){var _0x67d302=moment()['unix']()['toString']();var _0x14c149=path[_0xcaa7('0x55')](config[_0xcaa7('0x56')],'server',_0xcaa7('0x57'),_0xcaa7('0x58'));var _0xc3f944=path['join'](_0x14c149,_0x67d302);var _0x340a26=util['format'](_0xcaa7('0x59'),_0x15088e['params']['id'],_0x67d302);var _0x3f41ed=path[_0xcaa7('0x55')](_0x14c149,_0x340a26);var _0x361e04=[];_0x361e04[_0xcaa7('0x5a')]({'model':db['User'],'as':_0xcaa7('0x5b'),'attributes':['id','fullname'],'raw':!![]});_0x361e04[_0xcaa7('0x5a')]({'model':db['CmContact'],'as':_0xcaa7('0x5c'),'attributes':['id',_0xcaa7('0x5d'),_0xcaa7('0x5e')],'raw':!![]});var _0x2e1cdb=[{'model':db[_0xcaa7('0x3b')],'as':_0xcaa7('0x5f'),'attributes':['id',_0xcaa7('0x39'),'createdAt',_0xcaa7('0x60'),_0xcaa7('0x61'),_0xcaa7('0x62')],'include':_0x361e04}];_0x2e1cdb[_0xcaa7('0x5a')]({'model':db['SmsAccount'],'as':_0xcaa7('0x63'),'attributes':['id','name']});_0x2e1cdb['push']({'model':db['User'],'as':_0xcaa7('0x64'),'attributes':['id',_0xcaa7('0x65')]});return db['SmsInteraction'][_0xcaa7('0x37')]({'where':{'id':_0x15088e[_0xcaa7('0x2c')]['id']},'include':_0x2e1cdb})['then'](handleEntityNotFound(_0x8f8e21,null))[_0xcaa7('0x1a')](function(_0x1fe0e2){if(_0x1fe0e2){var _0x1362ed=_0x1fe0e2[_0xcaa7('0x66')]({'plain':!![]});fs['mkdirSync'](_0xc3f944);var _0x518db8={'channel':_0xcaa7('0x67'),'account':_0x1362ed[_0xcaa7('0x63')][_0xcaa7('0x1e')],'agent':_0x1362ed['Owner']?_0x1362ed[_0xcaa7('0x64')]['fullname']:_0xcaa7('0x68'),'createdAt':moment(_0x1362ed[_0xcaa7('0x69')])[_0xcaa7('0x4a')](_0xcaa7('0x4b'))[_0xcaa7('0x6a')](),'closedAt':_0x1362ed[_0xcaa7('0x6b')]?moment(_0x1362ed['closedAt'])[_0xcaa7('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')[_0xcaa7('0x6a')]():'','disposition':_0x1362ed[_0xcaa7('0x6c')],'messages':_(_0x1362ed[_0xcaa7('0x5f')])[_0xcaa7('0x47')]({'secret':![]})[_0xcaa7('0x21')](function(_0x5ed4af){return{'date':moment(_0x5ed4af[_0xcaa7('0x69')])[_0xcaa7('0x4a')](_0xcaa7('0x4b'))[_0xcaa7('0x6a')](),'sender':_0x5ed4af[_0xcaa7('0x60')]===_0xcaa7('0x6d')?_0x5ed4af[_0xcaa7('0x5b')]?_0x5ed4af['User'][_0xcaa7('0x65')]:_0xcaa7('0x6e'):_0x5ed4af[_0xcaa7('0x5c')][_0xcaa7('0x5d')]+(_0x5ed4af[_0xcaa7('0x5c')][_0xcaa7('0x5e')]?'\x20'+_0x5ed4af[_0xcaa7('0x5c')][_0xcaa7('0x5e')]:''),'body':_0x5ed4af['body'],'direction':_0x5ed4af['direction']==='out'?'A':'C','secret':_0x5ed4af[_0xcaa7('0x61')],'read':_0x5ed4af[_0xcaa7('0x62')]};})['value']()};return ejs[_0xcaa7('0x6f')](path[_0xcaa7('0x55')](config[_0xcaa7('0x56')],_0xcaa7('0x70'),_0xcaa7('0x71'),_0xcaa7('0x72')),{'interaction':_0x518db8})['then'](function(_0x409cfa){var _0x583336=path[_0xcaa7('0x55')](_0xc3f944,'transcript-'+_0x1362ed['id']+'-'+_0x67d302+'.pdf');var _0x13fb22={'path':_0x583336,'channel':_0xcaa7('0x67'),'interactionId':_0x1362ed['id']};return pdf['createPdfFromHTML'](_0x409cfa,_0x13fb22);})[_0xcaa7('0x1a')](function(){return new BPromise(function(_0x2e8495,_0xb7c8d0){zipdir(_0xc3f944,{'saveTo':_0x3f41ed},function(_0x5916f3,_0x30b821){if(_0x5916f3)return _0xb7c8d0(_0x5916f3);return _0x2e8495(_0x30b821);});})[_0xcaa7('0x1a')](function(){return new BPromise(function(_0x255aec,_0x2e84ed){rimraf(_0xc3f944,function(_0x3b0a7f){if(_0x3b0a7f)_0x2e84ed(_0x3b0a7f);return _0x255aec();});});})[_0xcaa7('0x1a')](function(){return _0x8f8e21[_0xcaa7('0x54')](_0x3f41ed,_0x340a26,function(_0x57617a){if(_0x57617a){console[_0xcaa7('0x73')](_0xcaa7('0x74'),_0x57617a);}else{fs[_0xcaa7('0x75')](_0x3f41ed);}});});});}else{return _0x8f8e21[_0xcaa7('0x1c')](0xc8);}})[_0xcaa7('0x2a')](handleError(_0x8f8e21,null));};
\ No newline at end of file