Built motion from commit bab6f49e.|2.6.17
[motion2.git] / server / api / smsInteraction / smsInteraction.controller.js
index a3cb8fe..2687e04 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x2c3d=['rimraf','moment','bluebird','util','ejs','lodash','../../components/interaction/service','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./smsInteraction.socket','register','sendStatus','status','offset','undefined','count','limit','Content-Range','json','update','then','destroy','end','stack','name','send','index','map','rawAttributes','fieldName','key','sms','query','user','catch','params','model','keys','SmsInteraction','filters','intersection','attributes','fields','length','include','merge','options','find','body','describe','addMessage','SmsMessage','omit','ids','getMessages','findOne','nolimit','order','sort','where','filter','$gte','format','rows','addTags','setTags','spread','Tag','findAll','emit','removeTags','download','toString','join','root','files','tmp','transcript-%d-%s.zip','push','User','fullname','CmContact','Contact','firstName','lastName','Messages','direction','SmsAccount','Account','Owner','get','mkdirSync','Sms','createdAt','YYYY-MM-DD\x20HH:mm:ss','closed','disposition','out','secret','read','value','renderFile','server','views','downloadInteraction.ejs','.pdf','createPdfFromHTML','err','unlinkSync'];(function(_0x2ec6a0,_0x48dfd6){var _0x3976f3=function(_0x224640){while(--_0x224640){_0x2ec6a0['push'](_0x2ec6a0['shift']());}};_0x3976f3(++_0x48dfd6);}(_0x2c3d,0xe4));var _0xd2c3=function(_0x1e4484,_0x4327cf){_0x1e4484=_0x1e4484-0x0;var _0x253244=_0x2c3d[_0x1e4484];return _0x253244;};'use strict';var rimraf=require(_0xd2c3('0x0'));var zipdir=require('zip-dir');var moment=require(_0xd2c3('0x1'));var BPromise=require(_0xd2c3('0x2'));var util=require(_0xd2c3('0x3'));var path=require('path');var ejs=require(_0xd2c3('0x4'));var fs=require('fs');var _=require(_0xd2c3('0x5'));var Redis=require('ioredis');var interaction=require(_0xd2c3('0x6'));var qs=require('../../components/parsers/qs');var pdf=require('../../components/export/pdf');var logger=require(_0xd2c3('0x7'))(_0xd2c3('0x8'));var config=require(_0xd2c3('0x9'));var db=require('../../mysqldb')['db'];config[_0xd2c3('0xa')]=_[_0xd2c3('0xb')](config['redis'],{'host':_0xd2c3('0xc'),'port':0x18eb});var socket=require(_0xd2c3('0xd'))(new Redis(config[_0xd2c3('0xa')]));require(_0xd2c3('0xe'))[_0xd2c3('0xf')](socket);function respondWithStatusCode(_0x133b1e,_0x1cc290){_0x1cc290=_0x1cc290||0xcc;return function(_0x118f81){if(_0x118f81){return _0x133b1e[_0xd2c3('0x10')](_0x1cc290);}return _0x133b1e[_0xd2c3('0x11')](_0x1cc290)['end']();};}function respondWithResult(_0x3b39fc,_0x28abfd){_0x28abfd=_0x28abfd||0xc8;return function(_0x18b6f7){if(_0x18b6f7){return _0x3b39fc[_0xd2c3('0x11')](_0x28abfd)['json'](_0x18b6f7);}};}function respondWithFilteredResult(_0x2667c5,_0x4c9ffa){return function(_0x287175){if(_0x287175){var _0x3e60f5=typeof _0x4c9ffa[_0xd2c3('0x12')]==='undefined'&&typeof _0x4c9ffa['limit']===_0xd2c3('0x13');var _0x5b14c6=_0x287175[_0xd2c3('0x14')];var _0xf29f19=_0x3e60f5?0x0:_0x4c9ffa['offset'];var _0x3a1d02=_0x3e60f5?_0x287175['count']:_0x4c9ffa[_0xd2c3('0x12')]+_0x4c9ffa[_0xd2c3('0x15')];var _0x30d914;if(_0x3a1d02>=_0x5b14c6){_0x3a1d02=_0x5b14c6;_0x30d914=0xc8;}else{_0x30d914=0xce;}_0x2667c5[_0xd2c3('0x11')](_0x30d914);return _0x2667c5['set'](_0xd2c3('0x16'),_0xf29f19+'-'+_0x3a1d02+'/'+_0x5b14c6)[_0xd2c3('0x17')](_0x287175);}return null;};}function saveUpdates(_0x2d7b12){return function(_0x307592){if(_0x307592){return _0x307592[_0xd2c3('0x18')](_0x2d7b12)[_0xd2c3('0x19')](function(_0x16d511){return _0x16d511;});}return null;};}function removeEntity(_0x34cddf){return function(_0x1f04b6){if(_0x1f04b6){return _0x1f04b6[_0xd2c3('0x1a')]()[_0xd2c3('0x19')](function(){_0x34cddf[_0xd2c3('0x11')](0xcc)[_0xd2c3('0x1b')]();});}};}function handleEntityNotFound(_0x59f2e3){return function(_0x451275){if(!_0x451275){_0x59f2e3[_0xd2c3('0x10')](0x194);}return _0x451275;};}function handleError(_0x31752e,_0x1ef36f){_0x1ef36f=_0x1ef36f||0x1f4;return function(_0x1a207b){logger['error'](_0x1a207b[_0xd2c3('0x1c')]);if(_0x1a207b[_0xd2c3('0x1d')]){delete _0x1a207b[_0xd2c3('0x1d')];}_0x31752e['status'](_0x1ef36f)[_0xd2c3('0x1e')](_0x1a207b);};}exports[_0xd2c3('0x1f')]=function(_0x30ded3,_0x29354a){var _0x4e1e6a={};var _0x35dc33=_[_0xd2c3('0x20')](db['SmsInteraction'][_0xd2c3('0x21')],function(_0x1f2f76){return{'name':_0x1f2f76[_0xd2c3('0x22')],'type':_0x1f2f76['type'][_0xd2c3('0x23')]};});_0x4e1e6a=qs['getOptions'](_0x35dc33,_0x30ded3);return interaction['findAll'](_0xd2c3('0x24'),_0x30ded3[_0xd2c3('0x25')],_0x30ded3[_0xd2c3('0x26')],_0x4e1e6a,_0x35dc33)[_0xd2c3('0x19')](respondWithFilteredResult(_0x29354a,_0x4e1e6a))[_0xd2c3('0x27')](handleError(_0x29354a,null));};exports['show']=function(_0x45ad40,_0x3b911f){var _0x5eb115={'raw':![],'where':{'id':_0x45ad40[_0xd2c3('0x28')]['id']}},_0x3778d3={};_0x3778d3[_0xd2c3('0x29')]=_[_0xd2c3('0x2a')](db[_0xd2c3('0x2b')]['rawAttributes']);_0x3778d3['query']=_[_0xd2c3('0x2a')](_0x45ad40[_0xd2c3('0x25')]);_0x3778d3[_0xd2c3('0x2c')]=_[_0xd2c3('0x2d')](_0x3778d3[_0xd2c3('0x29')],_0x3778d3[_0xd2c3('0x25')]);_0x5eb115[_0xd2c3('0x2e')]=_[_0xd2c3('0x2d')](_0x3778d3[_0xd2c3('0x29')],qs[_0xd2c3('0x2f')](_0x45ad40['query'][_0xd2c3('0x2f')]));_0x5eb115[_0xd2c3('0x2e')]=_0x5eb115[_0xd2c3('0x2e')][_0xd2c3('0x30')]?_0x5eb115[_0xd2c3('0x2e')]:_0x3778d3[_0xd2c3('0x29')];if(_0x45ad40['query']['includeAll']){_0x5eb115[_0xd2c3('0x31')]=[{'all':!![]}];}_0x5eb115=_[_0xd2c3('0x32')]({},_0x5eb115,_0x45ad40[_0xd2c3('0x33')]);return db['SmsInteraction'][_0xd2c3('0x34')](_0x5eb115)[_0xd2c3('0x19')](handleEntityNotFound(_0x3b911f,null))[_0xd2c3('0x19')](respondWithResult(_0x3b911f,null))[_0xd2c3('0x27')](handleError(_0x3b911f,null));};exports['create']=function(_0x5210ab,_0x43ef74){return db[_0xd2c3('0x2b')]['create'](_0x5210ab[_0xd2c3('0x35')],{})['then'](respondWithResult(_0x43ef74,0xc9))[_0xd2c3('0x27')](handleError(_0x43ef74,null));};exports[_0xd2c3('0x18')]=function(_0x37ae6f,_0x436d8b){if(_0x37ae6f[_0xd2c3('0x35')]['id']){delete _0x37ae6f[_0xd2c3('0x35')]['id'];}return db[_0xd2c3('0x2b')][_0xd2c3('0x34')]({'where':{'id':_0x37ae6f[_0xd2c3('0x28')]['id']}})[_0xd2c3('0x19')](handleEntityNotFound(_0x436d8b,null))[_0xd2c3('0x19')](saveUpdates(_0x37ae6f[_0xd2c3('0x35')],null))[_0xd2c3('0x19')](respondWithResult(_0x436d8b,null))[_0xd2c3('0x27')](handleError(_0x436d8b,null));};exports['destroy']=function(_0x25d875,_0x4b4fc9){return db[_0xd2c3('0x2b')][_0xd2c3('0x34')]({'where':{'id':_0x25d875[_0xd2c3('0x28')]['id']}})[_0xd2c3('0x19')](handleEntityNotFound(_0x4b4fc9,null))[_0xd2c3('0x19')](removeEntity(_0x4b4fc9,null))[_0xd2c3('0x27')](handleError(_0x4b4fc9,null));};exports[_0xd2c3('0x36')]=function(_0x65f25d,_0x29afa1){return db[_0xd2c3('0x2b')][_0xd2c3('0x36')]()['then'](respondWithResult(_0x29afa1,null))[_0xd2c3('0x27')](handleError(_0x29afa1,null));};exports[_0xd2c3('0x37')]=function(_0x21971a,_0x1150ab){return db[_0xd2c3('0x38')]['find']({'where':{'id':_0x21971a[_0xd2c3('0x28')]['id']}})[_0xd2c3('0x19')](handleEntityNotFound(_0x1150ab,null))[_0xd2c3('0x19')](function(_0x377eeb){if(_0x377eeb){return _0x377eeb[_0xd2c3('0x37')](_0x21971a[_0xd2c3('0x35')]['ids'],_[_0xd2c3('0x39')](_0x21971a[_0xd2c3('0x35')],[_0xd2c3('0x3a'),'id'])||{});}})[_0xd2c3('0x19')](respondWithResult(_0x1150ab,null))[_0xd2c3('0x27')](handleError(_0x1150ab,null));};exports[_0xd2c3('0x3b')]=function(_0x44a7c4,_0x35ecac){var _0x2bbbc5={'raw':![],'where':{}};var _0x8f01db={};var _0x5ddc94={'count':0x0,'rows':[]};return db[_0xd2c3('0x2b')][_0xd2c3('0x3c')]({'where':{'id':_0x44a7c4[_0xd2c3('0x28')]['id']}})[_0xd2c3('0x19')](handleEntityNotFound(_0x35ecac,null))[_0xd2c3('0x19')](function(_0x13d742){if(_0x13d742){_0x8f01db[_0xd2c3('0x29')]=_[_0xd2c3('0x2a')](db[_0xd2c3('0x38')][_0xd2c3('0x21')]);_0x8f01db[_0xd2c3('0x25')]=_['keys'](_0x44a7c4['query']);_0x8f01db[_0xd2c3('0x2c')]=_[_0xd2c3('0x2d')](_0x8f01db['model'],_0x8f01db[_0xd2c3('0x25')]);_0x2bbbc5[_0xd2c3('0x2e')]=_[_0xd2c3('0x2d')](_0x8f01db[_0xd2c3('0x29')],qs[_0xd2c3('0x2f')](_0x44a7c4['query'][_0xd2c3('0x2f')]));_0x2bbbc5[_0xd2c3('0x2e')]=_0x2bbbc5[_0xd2c3('0x2e')][_0xd2c3('0x30')]?_0x2bbbc5[_0xd2c3('0x2e')]:_0x8f01db[_0xd2c3('0x29')];if(!_0x44a7c4[_0xd2c3('0x25')]['hasOwnProperty'](_0xd2c3('0x3d'))){_0x2bbbc5[_0xd2c3('0x15')]=qs['limit'](_0x44a7c4['query']['limit']);_0x2bbbc5[_0xd2c3('0x12')]=qs['offset'](_0x44a7c4['query'][_0xd2c3('0x12')]);}_0x2bbbc5[_0xd2c3('0x3e')]=qs[_0xd2c3('0x3f')](_0x44a7c4[_0xd2c3('0x25')][_0xd2c3('0x3f')]);_0x2bbbc5[_0xd2c3('0x40')]=qs[_0xd2c3('0x2c')](_['pick'](_0x44a7c4['query'],_0x8f01db['filters']));_0x2bbbc5[_0xd2c3('0x40')]['SmsInteractionId']=_0x13d742['id'];if(_0x44a7c4[_0xd2c3('0x25')][_0xd2c3('0x41')]){_0x2bbbc5[_0xd2c3('0x40')]=_['merge'](_0x2bbbc5['where'],{'$or':_[_0xd2c3('0x20')](_0x2bbbc5[_0xd2c3('0x2e')],function(_0x527aa5){var _0x253b51={};_0x253b51[_0x527aa5]={'$like':'%'+_0x44a7c4[_0xd2c3('0x25')][_0xd2c3('0x41')]+'%'};return _0x253b51;})});}if(_0x44a7c4['query']['$gte']){var _0x218a72=_0x44a7c4[_0xd2c3('0x25')][_0xd2c3('0x42')]['split'](',');var _0x499fe6={};_0x499fe6[_0x218a72[0x0]]={'$gte':moment(_0x218a72[0x1])[_0xd2c3('0x43')]('YYYY-MM-DD\x20HH:mm:ss')};_0x2bbbc5[_0xd2c3('0x40')]=_[_0xd2c3('0x32')](_0x2bbbc5[_0xd2c3('0x40')],_0x499fe6);}_0x2bbbc5=_[_0xd2c3('0x32')]({},_0x2bbbc5,_0x44a7c4[_0xd2c3('0x33')]);return db[_0xd2c3('0x38')]['count']({'where':_0x2bbbc5[_0xd2c3('0x40')]})[_0xd2c3('0x19')](function(_0xebf250){_0x5ddc94[_0xd2c3('0x14')]=_0xebf250;if(_0x44a7c4[_0xd2c3('0x25')]['includeAll']){_0x2bbbc5[_0xd2c3('0x31')]=[{'all':!![]}];}return db[_0xd2c3('0x38')]['findAll'](_0x2bbbc5);})[_0xd2c3('0x19')](function(_0x2efe39){_0x5ddc94[_0xd2c3('0x44')]=_0x2efe39;return _0x5ddc94;});}})[_0xd2c3('0x19')](respondWithFilteredResult(_0x35ecac,_0x2bbbc5))[_0xd2c3('0x27')](handleError(_0x35ecac,null));};exports[_0xd2c3('0x45')]=function(_0x32745b,_0x185860){return db[_0xd2c3('0x2b')][_0xd2c3('0x34')]({'where':{'id':_0x32745b[_0xd2c3('0x28')]['id']}})['then'](handleEntityNotFound(_0x185860,null))['then'](function(_0x51b81d){if(_0x51b81d){return _0x51b81d[_0xd2c3('0x46')](_0x32745b[_0xd2c3('0x35')][_0xd2c3('0x3a')],_[_0xd2c3('0x39')](_0x32745b[_0xd2c3('0x35')],[_0xd2c3('0x3a'),'id'])||{})[_0xd2c3('0x47')](function(){return db[_0xd2c3('0x48')][_0xd2c3('0x49')]({'attributes':['id',_0xd2c3('0x1d'),'color'],'where':{'id':_0x32745b[_0xd2c3('0x35')]['ids']}});})[_0xd2c3('0x19')](function(_0x39ad2f){socket[_0xd2c3('0x4a')]('smsInteractionTags:save',{'id':Number(_0x32745b[_0xd2c3('0x28')]['id']),'tags':_0x39ad2f||[]});return{'id':Number(_0x32745b[_0xd2c3('0x28')]['id']),'tags':_0x39ad2f||[]};});}})['then'](respondWithResult(_0x185860,null))['catch'](handleError(_0x185860,null));};exports[_0xd2c3('0x4b')]=function(_0x1d3665,_0x5cf91a){return db[_0xd2c3('0x2b')][_0xd2c3('0x34')]({'where':{'id':_0x1d3665[_0xd2c3('0x28')]['id']}})[_0xd2c3('0x19')](handleEntityNotFound(_0x5cf91a,null))[_0xd2c3('0x19')](function(_0x245b3a){if(_0x245b3a){return _0x245b3a['removeTags'](_0x1d3665[_0xd2c3('0x25')][_0xd2c3('0x3a')]);}})[_0xd2c3('0x19')](respondWithStatusCode(_0x5cf91a,null))[_0xd2c3('0x27')](handleError(_0x5cf91a,null));};exports[_0xd2c3('0x4c')]=function(_0xd3207f,_0x24999c){var _0xb0a4d7=moment()['unix']()[_0xd2c3('0x4d')]();var _0x555cc8=path[_0xd2c3('0x4e')](config[_0xd2c3('0x4f')],'server',_0xd2c3('0x50'),_0xd2c3('0x51'));var _0x98170b=path['join'](_0x555cc8,_0xb0a4d7);var _0x2aea50=util[_0xd2c3('0x43')](_0xd2c3('0x52'),_0xd3207f['params']['id'],_0xb0a4d7);var _0x21aa21=path[_0xd2c3('0x4e')](_0x555cc8,_0x2aea50);var _0x42bcdd=[];_0x42bcdd[_0xd2c3('0x53')]({'model':db['User'],'as':_0xd2c3('0x54'),'attributes':['id',_0xd2c3('0x55')],'raw':!![]});_0x42bcdd[_0xd2c3('0x53')]({'model':db[_0xd2c3('0x56')],'as':_0xd2c3('0x57'),'attributes':['id',_0xd2c3('0x58'),_0xd2c3('0x59')],'raw':!![]});var _0x1f3493=[{'model':db[_0xd2c3('0x38')],'as':_0xd2c3('0x5a'),'attributes':['id','body','createdAt',_0xd2c3('0x5b'),'secret','read'],'include':_0x42bcdd}];_0x1f3493[_0xd2c3('0x53')]({'model':db[_0xd2c3('0x5c')],'as':_0xd2c3('0x5d'),'attributes':['id',_0xd2c3('0x1d')]});_0x1f3493[_0xd2c3('0x53')]({'model':db[_0xd2c3('0x54')],'as':_0xd2c3('0x5e'),'attributes':['id',_0xd2c3('0x55')]});return db[_0xd2c3('0x2b')]['find']({'where':{'id':_0xd3207f[_0xd2c3('0x28')]['id']},'include':_0x1f3493})[_0xd2c3('0x19')](handleEntityNotFound(_0x24999c,null))[_0xd2c3('0x19')](function(_0x4a39a6){if(_0x4a39a6){var _0xaf9a92=_0x4a39a6[_0xd2c3('0x5f')]({'plain':!![]});fs[_0xd2c3('0x60')](_0x98170b);var _0x2f6e59={'channel':_0xd2c3('0x61'),'account':_0xaf9a92[_0xd2c3('0x5d')][_0xd2c3('0x1d')],'agent':_0xaf9a92['Owner']?_0xaf9a92['Owner'][_0xd2c3('0x55')]:'N.A.','createdAt':moment(_0xaf9a92[_0xd2c3('0x62')])[_0xd2c3('0x43')](_0xd2c3('0x63'))[_0xd2c3('0x4d')](),'closedAt':_0xaf9a92[_0xd2c3('0x64')]?moment(_0xaf9a92['closedAt'])[_0xd2c3('0x43')](_0xd2c3('0x63'))[_0xd2c3('0x4d')]():'','disposition':_0xaf9a92[_0xd2c3('0x65')],'messages':_(_0xaf9a92['Messages'])[_0xd2c3('0x41')]({'secret':![]})['map'](function(_0x28540f){return{'date':moment(_0x28540f[_0xd2c3('0x62')])[_0xd2c3('0x43')](_0xd2c3('0x63'))[_0xd2c3('0x4d')](),'sender':_0x28540f[_0xd2c3('0x5b')]===_0xd2c3('0x66')?_0x28540f[_0xd2c3('0x54')]?_0x28540f[_0xd2c3('0x54')][_0xd2c3('0x55')]:'System':_0x28540f['Contact']['firstName']+(_0x28540f['Contact'][_0xd2c3('0x59')]?'\x20'+_0x28540f[_0xd2c3('0x57')][_0xd2c3('0x59')]:''),'body':_0x28540f[_0xd2c3('0x35')],'direction':_0x28540f[_0xd2c3('0x5b')]==='out'?'A':'C','secret':_0x28540f[_0xd2c3('0x67')],'read':_0x28540f[_0xd2c3('0x68')]};})[_0xd2c3('0x69')]()};return ejs[_0xd2c3('0x6a')](path[_0xd2c3('0x4e')](config[_0xd2c3('0x4f')],_0xd2c3('0x6b'),_0xd2c3('0x6c'),_0xd2c3('0x6d')),{'interaction':_0x2f6e59})[_0xd2c3('0x19')](function(_0x4ab008){var _0x479c56=path[_0xd2c3('0x4e')](_0x98170b,'transcript-'+_0xaf9a92['id']+'-'+_0xb0a4d7+_0xd2c3('0x6e'));var _0x55dbb0={'path':_0x479c56,'channel':_0xd2c3('0x61'),'interactionId':_0xaf9a92['id']};return pdf[_0xd2c3('0x6f')](_0x4ab008,_0x55dbb0);})[_0xd2c3('0x19')](function(){return new BPromise(function(_0x237141,_0xd70541){zipdir(_0x98170b,{'saveTo':_0x21aa21},function(_0x24f134,_0x1eb38f){if(_0x24f134)return _0xd70541(_0x24f134);return _0x237141(_0x1eb38f);});})[_0xd2c3('0x19')](function(){return new BPromise(function(_0x5ba19a,_0x57e69f){rimraf(_0x98170b,function(_0x5cb1e6){if(_0x5cb1e6)_0x57e69f(_0x5cb1e6);return _0x5ba19a();});});})[_0xd2c3('0x19')](function(){return _0x24999c[_0xd2c3('0x4c')](_0x21aa21,_0x2aea50,function(_0x5c80a8){if(_0x5c80a8){console['log'](_0xd2c3('0x70'),_0x5c80a8);}else{fs[_0xd2c3('0x71')](_0x21aa21);}});});});}else{return _0x24999c[_0xd2c3('0x10')](0xc8);}})[_0xd2c3('0x27')](handleError(_0x24999c,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