Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / api / smsInteraction / smsInteraction.controller.js
index bdf6b89..e95676c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb3de=['../../components/parsers/qs','../../components/export/pdf','../../config/logger','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./smsInteraction.socket','register','sendStatus','end','json','offset','undefined','limit','set','Content-Range','update','destroy','name','status','map','SmsInteraction','rawAttributes','fieldName','key','findAll','sms','query','user','then','catch','show','params','model','keys','filters','intersection','attributes','fields','length','includeAll','include','options','find','create','body','describe','addMessage','SmsMessage','omit','ids','getMessages','hasOwnProperty','nolimit','where','pick','SmsInteractionId','filter','merge','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','count','addTags','setTags','spread','Tag','color','emit','smsInteractionTags:save','removeTags','download','join','root','server','files','tmp','transcript-%d-%s.zip','push','User','fullname','CmContact','Contact','firstName','lastName','Messages','secret','read','SmsAccount','Account','Owner','get','Sms','N.A.','createdAt','toString','closed','closedAt','direction','out','value','views','transcript-','.pdf','createPdfFromHTML','log','err','unlinkSync','rimraf','zip-dir','moment','bluebird','util','path','ejs','lodash','ioredis','../../components/interaction/service'];(function(_0x4272b1,_0x39eaa6){var _0x579b7e=function(_0x3110f2){while(--_0x3110f2){_0x4272b1['push'](_0x4272b1['shift']());}};_0x579b7e(++_0x39eaa6);}(_0xb3de,0x164));var _0xeb3d=function(_0x2795d4,_0x250a4f){_0x2795d4=_0x2795d4-0x0;var _0x24262c=_0xb3de[_0x2795d4];return _0x24262c;};'use strict';var rimraf=require(_0xeb3d('0x0'));var zipdir=require(_0xeb3d('0x1'));var moment=require(_0xeb3d('0x2'));var BPromise=require(_0xeb3d('0x3'));var util=require(_0xeb3d('0x4'));var path=require(_0xeb3d('0x5'));var ejs=require(_0xeb3d('0x6'));var fs=require('fs');var _=require(_0xeb3d('0x7'));var Redis=require(_0xeb3d('0x8'));var interaction=require(_0xeb3d('0x9'));var qs=require(_0xeb3d('0xa'));var pdf=require(_0xeb3d('0xb'));var logger=require(_0xeb3d('0xc'))('api');var config=require(_0xeb3d('0xd'));var db=require(_0xeb3d('0xe'))['db'];config['redis']=_[_0xeb3d('0xf')](config[_0xeb3d('0x10')],{'host':_0xeb3d('0x11'),'port':0x18eb});var socket=require(_0xeb3d('0x12'))(new Redis(config[_0xeb3d('0x10')]));require(_0xeb3d('0x13'))[_0xeb3d('0x14')](socket);function respondWithStatusCode(_0x1fbbd1,_0x4b57da){_0x4b57da=_0x4b57da||0xcc;return function(_0x2933f7){if(_0x2933f7){return _0x1fbbd1[_0xeb3d('0x15')](_0x4b57da);}return _0x1fbbd1['status'](_0x4b57da)[_0xeb3d('0x16')]();};}function respondWithResult(_0x497e13,_0x3a1a5e){_0x3a1a5e=_0x3a1a5e||0xc8;return function(_0x3d2912){if(_0x3d2912){return _0x497e13['status'](_0x3a1a5e)[_0xeb3d('0x17')](_0x3d2912);}};}function respondWithFilteredResult(_0x59c365,_0x4f35b4){return function(_0x4ea1f1){if(_0x4ea1f1){var _0x367939=typeof _0x4f35b4[_0xeb3d('0x18')]===_0xeb3d('0x19')&&typeof _0x4f35b4[_0xeb3d('0x1a')]==='undefined';var _0x59c8eb=_0x4ea1f1['count'];var _0x27a223=_0x367939?0x0:_0x4f35b4[_0xeb3d('0x18')];var _0x117916=_0x367939?_0x4ea1f1['count']:_0x4f35b4[_0xeb3d('0x18')]+_0x4f35b4[_0xeb3d('0x1a')];var _0x2738d3;if(_0x117916>=_0x59c8eb){_0x117916=_0x59c8eb;_0x2738d3=0xc8;}else{_0x2738d3=0xce;}_0x59c365['status'](_0x2738d3);return _0x59c365[_0xeb3d('0x1b')](_0xeb3d('0x1c'),_0x27a223+'-'+_0x117916+'/'+_0x59c8eb)[_0xeb3d('0x17')](_0x4ea1f1);}return null;};}function saveUpdates(_0xeda6c8){return function(_0x4efbf3){if(_0x4efbf3){return _0x4efbf3[_0xeb3d('0x1d')](_0xeda6c8)['then'](function(_0x33511c){return _0x33511c;});}return null;};}function removeEntity(_0x170470){return function(_0x53b33a){if(_0x53b33a){return _0x53b33a[_0xeb3d('0x1e')]()['then'](function(){_0x170470['status'](0xcc)[_0xeb3d('0x16')]();});}};}function handleEntityNotFound(_0xe2c3bc){return function(_0x106df2){if(!_0x106df2){_0xe2c3bc['sendStatus'](0x194);}return _0x106df2;};}function handleError(_0x577b1f,_0x3c239f){_0x3c239f=_0x3c239f||0x1f4;return function(_0x11e229){logger['error'](_0x11e229['stack']);if(_0x11e229[_0xeb3d('0x1f')]){delete _0x11e229[_0xeb3d('0x1f')];}_0x577b1f[_0xeb3d('0x20')](_0x3c239f)['send'](_0x11e229);};}exports['index']=function(_0x4e789a,_0x1bf9fb){var _0x5a7a1b={};var _0x31eccf=_[_0xeb3d('0x21')](db[_0xeb3d('0x22')][_0xeb3d('0x23')],function(_0x2bf491){return{'name':_0x2bf491[_0xeb3d('0x24')],'type':_0x2bf491['type'][_0xeb3d('0x25')]};});_0x5a7a1b=qs['getOptions'](_0x31eccf,_0x4e789a);return interaction[_0xeb3d('0x26')](_0xeb3d('0x27'),_0x4e789a[_0xeb3d('0x28')],_0x4e789a[_0xeb3d('0x29')],_0x5a7a1b,_0x31eccf)[_0xeb3d('0x2a')](respondWithFilteredResult(_0x1bf9fb,_0x5a7a1b))[_0xeb3d('0x2b')](handleError(_0x1bf9fb,null));};exports[_0xeb3d('0x2c')]=function(_0x114ac4,_0x2b273a){var _0xaed886={'raw':![],'where':{'id':_0x114ac4[_0xeb3d('0x2d')]['id']}},_0x2e7d42={};_0x2e7d42[_0xeb3d('0x2e')]=_[_0xeb3d('0x2f')](db[_0xeb3d('0x22')][_0xeb3d('0x23')]);_0x2e7d42[_0xeb3d('0x28')]=_['keys'](_0x114ac4['query']);_0x2e7d42[_0xeb3d('0x30')]=_[_0xeb3d('0x31')](_0x2e7d42[_0xeb3d('0x2e')],_0x2e7d42[_0xeb3d('0x28')]);_0xaed886[_0xeb3d('0x32')]=_[_0xeb3d('0x31')](_0x2e7d42[_0xeb3d('0x2e')],qs['fields'](_0x114ac4[_0xeb3d('0x28')][_0xeb3d('0x33')]));_0xaed886[_0xeb3d('0x32')]=_0xaed886[_0xeb3d('0x32')][_0xeb3d('0x34')]?_0xaed886[_0xeb3d('0x32')]:_0x2e7d42[_0xeb3d('0x2e')];if(_0x114ac4[_0xeb3d('0x28')][_0xeb3d('0x35')]){_0xaed886[_0xeb3d('0x36')]=[{'all':!![]}];}_0xaed886=_['merge']({},_0xaed886,_0x114ac4[_0xeb3d('0x37')]);return db[_0xeb3d('0x22')][_0xeb3d('0x38')](_0xaed886)['then'](handleEntityNotFound(_0x2b273a,null))[_0xeb3d('0x2a')](respondWithResult(_0x2b273a,null))['catch'](handleError(_0x2b273a,null));};exports[_0xeb3d('0x39')]=function(_0x1ea652,_0x12451d){return db[_0xeb3d('0x22')]['create'](_0x1ea652['body'],{})['then'](respondWithResult(_0x12451d,0xc9))[_0xeb3d('0x2b')](handleError(_0x12451d,null));};exports['update']=function(_0x42705f,_0x47993e){if(_0x42705f[_0xeb3d('0x3a')]['id']){delete _0x42705f[_0xeb3d('0x3a')]['id'];}return db['SmsInteraction'][_0xeb3d('0x38')]({'where':{'id':_0x42705f[_0xeb3d('0x2d')]['id']}})[_0xeb3d('0x2a')](handleEntityNotFound(_0x47993e,null))[_0xeb3d('0x2a')](saveUpdates(_0x42705f[_0xeb3d('0x3a')],null))[_0xeb3d('0x2a')](respondWithResult(_0x47993e,null))[_0xeb3d('0x2b')](handleError(_0x47993e,null));};exports[_0xeb3d('0x1e')]=function(_0x4a8d7f,_0x219f4d){return db[_0xeb3d('0x22')][_0xeb3d('0x38')]({'where':{'id':_0x4a8d7f[_0xeb3d('0x2d')]['id']}})[_0xeb3d('0x2a')](handleEntityNotFound(_0x219f4d,null))[_0xeb3d('0x2a')](removeEntity(_0x219f4d,null))[_0xeb3d('0x2b')](handleError(_0x219f4d,null));};exports[_0xeb3d('0x3b')]=function(_0x18b558,_0x217eeb){return db['SmsInteraction'][_0xeb3d('0x3b')]()[_0xeb3d('0x2a')](respondWithResult(_0x217eeb,null))[_0xeb3d('0x2b')](handleError(_0x217eeb,null));};exports[_0xeb3d('0x3c')]=function(_0xa88f85,_0x41f1db){return db[_0xeb3d('0x3d')]['find']({'where':{'id':_0xa88f85[_0xeb3d('0x2d')]['id']}})[_0xeb3d('0x2a')](handleEntityNotFound(_0x41f1db,null))[_0xeb3d('0x2a')](function(_0x92ceee){if(_0x92ceee){return _0x92ceee[_0xeb3d('0x3c')](_0xa88f85['body']['ids'],_[_0xeb3d('0x3e')](_0xa88f85['body'],[_0xeb3d('0x3f'),'id'])||{});}})[_0xeb3d('0x2a')](respondWithResult(_0x41f1db,null))[_0xeb3d('0x2b')](handleError(_0x41f1db,null));};exports[_0xeb3d('0x40')]=function(_0x43a605,_0x95425c){var _0x6f1cea={'raw':![],'where':{}};var _0x2d1b56={};var _0x10b24b={'count':0x0,'rows':[]};return db[_0xeb3d('0x22')]['findOne']({'where':{'id':_0x43a605[_0xeb3d('0x2d')]['id']}})[_0xeb3d('0x2a')](handleEntityNotFound(_0x95425c,null))[_0xeb3d('0x2a')](function(_0xd75ec4){if(_0xd75ec4){_0x2d1b56['model']=_[_0xeb3d('0x2f')](db[_0xeb3d('0x3d')][_0xeb3d('0x23')]);_0x2d1b56[_0xeb3d('0x28')]=_[_0xeb3d('0x2f')](_0x43a605[_0xeb3d('0x28')]);_0x2d1b56[_0xeb3d('0x30')]=_[_0xeb3d('0x31')](_0x2d1b56[_0xeb3d('0x2e')],_0x2d1b56[_0xeb3d('0x28')]);_0x6f1cea['attributes']=_[_0xeb3d('0x31')](_0x2d1b56[_0xeb3d('0x2e')],qs[_0xeb3d('0x33')](_0x43a605[_0xeb3d('0x28')][_0xeb3d('0x33')]));_0x6f1cea['attributes']=_0x6f1cea[_0xeb3d('0x32')]['length']?_0x6f1cea['attributes']:_0x2d1b56['model'];if(!_0x43a605[_0xeb3d('0x28')][_0xeb3d('0x41')](_0xeb3d('0x42'))){_0x6f1cea['limit']=qs['limit'](_0x43a605[_0xeb3d('0x28')][_0xeb3d('0x1a')]);_0x6f1cea[_0xeb3d('0x18')]=qs[_0xeb3d('0x18')](_0x43a605[_0xeb3d('0x28')]['offset']);}_0x6f1cea['order']=qs['sort'](_0x43a605[_0xeb3d('0x28')]['sort']);_0x6f1cea[_0xeb3d('0x43')]=qs[_0xeb3d('0x30')](_[_0xeb3d('0x44')](_0x43a605['query'],_0x2d1b56['filters']));_0x6f1cea['where'][_0xeb3d('0x45')]=_0xd75ec4['id'];if(_0x43a605[_0xeb3d('0x28')][_0xeb3d('0x46')]){_0x6f1cea['where']=_[_0xeb3d('0x47')](_0x6f1cea['where'],{'$or':_[_0xeb3d('0x21')](_0x6f1cea['attributes'],function(_0x4f6abe){var _0x4663a4={};_0x4663a4[_0x4f6abe]={'$like':'%'+_0x43a605['query'][_0xeb3d('0x46')]+'%'};return _0x4663a4;})});}if(_0x43a605[_0xeb3d('0x28')][_0xeb3d('0x48')]){var _0x573650=_0x43a605[_0xeb3d('0x28')][_0xeb3d('0x48')][_0xeb3d('0x49')](',');var _0x396d67={};_0x396d67[_0x573650[0x0]]={'$gte':moment(_0x573650[0x1])[_0xeb3d('0x4a')](_0xeb3d('0x4b'))};_0x6f1cea[_0xeb3d('0x43')]=_['merge'](_0x6f1cea[_0xeb3d('0x43')],_0x396d67);}_0x6f1cea=_[_0xeb3d('0x47')]({},_0x6f1cea,_0x43a605[_0xeb3d('0x37')]);return db['SmsMessage']['count']({'where':_0x6f1cea[_0xeb3d('0x43')]})[_0xeb3d('0x2a')](function(_0x4cefb9){_0x10b24b[_0xeb3d('0x4c')]=_0x4cefb9;if(_0x43a605[_0xeb3d('0x28')]['includeAll']){_0x6f1cea['include']=[{'all':!![]}];}return db[_0xeb3d('0x3d')]['findAll'](_0x6f1cea);})[_0xeb3d('0x2a')](function(_0xf7cca1){_0x10b24b['rows']=_0xf7cca1;return _0x10b24b;});}})[_0xeb3d('0x2a')](respondWithFilteredResult(_0x95425c,_0x6f1cea))['catch'](handleError(_0x95425c,null));};exports[_0xeb3d('0x4d')]=function(_0x40c4fd,_0x12e1ac){return db[_0xeb3d('0x22')]['find']({'where':{'id':_0x40c4fd[_0xeb3d('0x2d')]['id']}})['then'](handleEntityNotFound(_0x12e1ac,null))[_0xeb3d('0x2a')](function(_0x5d7858){if(_0x5d7858){return _0x5d7858[_0xeb3d('0x4e')](_0x40c4fd[_0xeb3d('0x3a')][_0xeb3d('0x3f')],_[_0xeb3d('0x3e')](_0x40c4fd['body'],[_0xeb3d('0x3f'),'id'])||{})[_0xeb3d('0x4f')](function(){return db[_0xeb3d('0x50')]['findAll']({'attributes':['id',_0xeb3d('0x1f'),_0xeb3d('0x51')],'where':{'id':_0x40c4fd['body'][_0xeb3d('0x3f')]}});})[_0xeb3d('0x2a')](function(_0x96bdac){socket[_0xeb3d('0x52')](_0xeb3d('0x53'),{'id':Number(_0x40c4fd[_0xeb3d('0x2d')]['id']),'tags':_0x96bdac||[]});return{'id':Number(_0x40c4fd[_0xeb3d('0x2d')]['id']),'tags':_0x96bdac||[]};});}})[_0xeb3d('0x2a')](respondWithResult(_0x12e1ac,null))['catch'](handleError(_0x12e1ac,null));};exports[_0xeb3d('0x54')]=function(_0x2a95f5,_0x113a8d){return db[_0xeb3d('0x22')][_0xeb3d('0x38')]({'where':{'id':_0x2a95f5[_0xeb3d('0x2d')]['id']}})[_0xeb3d('0x2a')](handleEntityNotFound(_0x113a8d,null))[_0xeb3d('0x2a')](function(_0x3e8130){if(_0x3e8130){return _0x3e8130[_0xeb3d('0x54')](_0x2a95f5['query']['ids']);}})[_0xeb3d('0x2a')](respondWithStatusCode(_0x113a8d,null))[_0xeb3d('0x2b')](handleError(_0x113a8d,null));};exports[_0xeb3d('0x55')]=function(_0x3b71ec,_0x58c704){var _0x49d4c6=moment()['unix']()['toString']();var _0x592639=path[_0xeb3d('0x56')](config[_0xeb3d('0x57')],_0xeb3d('0x58'),_0xeb3d('0x59'),_0xeb3d('0x5a'));var _0x8b7f8e=path[_0xeb3d('0x56')](_0x592639,_0x49d4c6);var _0x4882f0=util[_0xeb3d('0x4a')](_0xeb3d('0x5b'),_0x3b71ec[_0xeb3d('0x2d')]['id'],_0x49d4c6);var _0x334b8b=path['join'](_0x592639,_0x4882f0);var _0x4779ea=[];_0x4779ea[_0xeb3d('0x5c')]({'model':db[_0xeb3d('0x5d')],'as':_0xeb3d('0x5d'),'attributes':['id',_0xeb3d('0x5e')],'raw':!![]});_0x4779ea[_0xeb3d('0x5c')]({'model':db[_0xeb3d('0x5f')],'as':_0xeb3d('0x60'),'attributes':['id',_0xeb3d('0x61'),_0xeb3d('0x62')],'raw':!![]});var _0x2cc629=[{'model':db['SmsMessage'],'as':_0xeb3d('0x63'),'attributes':['id',_0xeb3d('0x3a'),'createdAt','direction',_0xeb3d('0x64'),_0xeb3d('0x65')],'include':_0x4779ea}];_0x2cc629['push']({'model':db[_0xeb3d('0x66')],'as':_0xeb3d('0x67'),'attributes':['id',_0xeb3d('0x1f')]});_0x2cc629[_0xeb3d('0x5c')]({'model':db['User'],'as':_0xeb3d('0x68'),'attributes':['id','fullname']});return db['SmsInteraction'][_0xeb3d('0x38')]({'where':{'id':_0x3b71ec[_0xeb3d('0x2d')]['id']},'include':_0x2cc629})[_0xeb3d('0x2a')](handleEntityNotFound(_0x58c704,null))[_0xeb3d('0x2a')](function(_0x1be1e0){if(_0x1be1e0){var _0x47c67d=_0x1be1e0[_0xeb3d('0x69')]({'plain':!![]});fs['mkdirSync'](_0x8b7f8e);var _0x5680e4={'channel':_0xeb3d('0x6a'),'account':_0x47c67d[_0xeb3d('0x67')][_0xeb3d('0x1f')],'agent':_0x47c67d[_0xeb3d('0x68')]?_0x47c67d['Owner'][_0xeb3d('0x5e')]:_0xeb3d('0x6b'),'createdAt':moment(_0x47c67d[_0xeb3d('0x6c')])[_0xeb3d('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')[_0xeb3d('0x6d')](),'closedAt':_0x47c67d[_0xeb3d('0x6e')]?moment(_0x47c67d[_0xeb3d('0x6f')])[_0xeb3d('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')[_0xeb3d('0x6d')]():'','disposition':_0x47c67d['disposition'],'messages':_(_0x47c67d[_0xeb3d('0x63')])[_0xeb3d('0x46')]({'secret':![]})[_0xeb3d('0x21')](function(_0x6fc801){return{'date':moment(_0x6fc801[_0xeb3d('0x6c')])[_0xeb3d('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')[_0xeb3d('0x6d')](),'sender':_0x6fc801[_0xeb3d('0x70')]===_0xeb3d('0x71')?_0x6fc801[_0xeb3d('0x5d')]?_0x6fc801['User'][_0xeb3d('0x5e')]:'System':_0x6fc801['Contact'][_0xeb3d('0x61')]+(_0x6fc801[_0xeb3d('0x60')][_0xeb3d('0x62')]?'\x20'+_0x6fc801[_0xeb3d('0x60')][_0xeb3d('0x62')]:''),'body':_0x6fc801[_0xeb3d('0x3a')],'direction':_0x6fc801['direction']==='out'?'A':'C','secret':_0x6fc801[_0xeb3d('0x64')],'read':_0x6fc801[_0xeb3d('0x65')]};})[_0xeb3d('0x72')]()};return ejs['renderFile'](path[_0xeb3d('0x56')](config[_0xeb3d('0x57')],_0xeb3d('0x58'),_0xeb3d('0x73'),'downloadInteraction.ejs'),{'interaction':_0x5680e4})[_0xeb3d('0x2a')](function(_0x1bd371){var _0x57eed8=path['join'](_0x8b7f8e,_0xeb3d('0x74')+_0x47c67d['id']+'-'+_0x49d4c6+_0xeb3d('0x75'));var _0x35aff5={'path':_0x57eed8,'channel':_0xeb3d('0x6a'),'interactionId':_0x47c67d['id']};return pdf[_0xeb3d('0x76')](_0x1bd371,_0x35aff5);})[_0xeb3d('0x2a')](function(){return new BPromise(function(_0x52b32b,_0x131443){zipdir(_0x8b7f8e,{'saveTo':_0x334b8b},function(_0x5e13e2,_0x4dd5ab){if(_0x5e13e2)return _0x131443(_0x5e13e2);return _0x52b32b(_0x4dd5ab);});})[_0xeb3d('0x2a')](function(){return new BPromise(function(_0x16e8e9,_0x41c34a){rimraf(_0x8b7f8e,function(_0xd895d7){if(_0xd895d7)_0x41c34a(_0xd895d7);return _0x16e8e9();});});})['then'](function(){return _0x58c704[_0xeb3d('0x55')](_0x334b8b,_0x4882f0,function(_0x92c13f){if(_0x92c13f){console[_0xeb3d('0x77')](_0xeb3d('0x78'),_0x92c13f);}else{fs[_0xeb3d('0x79')](_0x334b8b);}});});});}else{return _0x58c704[_0xeb3d('0x15')](0xc8);}})[_0xeb3d('0x2b')](handleError(_0x58c704,null));};
\ No newline at end of file
+var _0x6888=['N.A.','closed','closedAt','disposition','direction','out','User','System','renderFile','views','downloadInteraction.ejs','transcript-','createPdfFromHTML','download','log','err','unlinkSync','rimraf','zip-dir','moment','bluebird','util','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','../../config/environment','../../mysqldb','redis','localhost','./smsInteraction.socket','sendStatus','end','json','offset','limit','count','status','set','Content-Range','then','destroy','error','stack','name','send','index','map','SmsInteraction','rawAttributes','fieldName','findAll','sms','query','catch','params','keys','intersection','model','attributes','fields','length','includeAll','include','merge','options','find','create','update','body','describe','addMessage','SmsMessage','ids','findOne','filters','nolimit','order','sort','pick','filter','where','$gte','format','YYYY-MM-DD\x20HH:mm:ss','rows','addTags','setTags','omit','spread','color','emit','removeTags','unix','toString','join','root','server','transcript-%d-%s.zip','push','fullname','CmContact','Contact','firstName','lastName','Messages','createdAt','secret','read','Owner','get','Sms','Account'];(function(_0x17d9e3,_0x1f969c){var _0x14192d=function(_0x159745){while(--_0x159745){_0x17d9e3['push'](_0x17d9e3['shift']());}};_0x14192d(++_0x1f969c);}(_0x6888,0x1e5));var _0x8688=function(_0x82129b,_0x484ae9){_0x82129b=_0x82129b-0x0;var _0x2ae5dc=_0x6888[_0x82129b];return _0x2ae5dc;};'use strict';var rimraf=require(_0x8688('0x0'));var zipdir=require(_0x8688('0x1'));var moment=require(_0x8688('0x2'));var BPromise=require(_0x8688('0x3'));var util=require(_0x8688('0x4'));var path=require(_0x8688('0x5'));var ejs=require(_0x8688('0x6'));var fs=require('fs');var _=require(_0x8688('0x7'));var Redis=require(_0x8688('0x8'));var interaction=require(_0x8688('0x9'));var qs=require(_0x8688('0xa'));var pdf=require(_0x8688('0xb'));var logger=require(_0x8688('0xc'))('api');var config=require(_0x8688('0xd'));var db=require(_0x8688('0xe'))['db'];config[_0x8688('0xf')]=_['defaults'](config[_0x8688('0xf')],{'host':_0x8688('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x8688('0xf')]));require(_0x8688('0x11'))['register'](socket);function respondWithStatusCode(_0x59bd25,_0x3c41a0){_0x3c41a0=_0x3c41a0||0xcc;return function(_0x2275f4){if(_0x2275f4){return _0x59bd25[_0x8688('0x12')](_0x3c41a0);}return _0x59bd25['status'](_0x3c41a0)[_0x8688('0x13')]();};}function respondWithResult(_0x56bd97,_0x5c3092){_0x5c3092=_0x5c3092||0xc8;return function(_0x4d3198){if(_0x4d3198){return _0x56bd97['status'](_0x5c3092)[_0x8688('0x14')](_0x4d3198);}};}function respondWithFilteredResult(_0x107be0,_0x55c87b){return function(_0x432162){if(_0x432162){var _0x1dd296=typeof _0x55c87b[_0x8688('0x15')]==='undefined'&&typeof _0x55c87b[_0x8688('0x16')]==='undefined';var _0x52503e=_0x432162[_0x8688('0x17')];var _0x51cb64=_0x1dd296?0x0:_0x55c87b[_0x8688('0x15')];var _0x2074ec=_0x1dd296?_0x432162[_0x8688('0x17')]:_0x55c87b['offset']+_0x55c87b[_0x8688('0x16')];var _0x651c4b;if(_0x2074ec>=_0x52503e){_0x2074ec=_0x52503e;_0x651c4b=0xc8;}else{_0x651c4b=0xce;}_0x107be0[_0x8688('0x18')](_0x651c4b);return _0x107be0[_0x8688('0x19')](_0x8688('0x1a'),_0x51cb64+'-'+_0x2074ec+'/'+_0x52503e)[_0x8688('0x14')](_0x432162);}return null;};}function saveUpdates(_0x31424b){return function(_0x886138){if(_0x886138){return _0x886138['update'](_0x31424b)[_0x8688('0x1b')](function(_0x602fc6){return _0x602fc6;});}return null;};}function removeEntity(_0xde781e){return function(_0x2517b0){if(_0x2517b0){return _0x2517b0[_0x8688('0x1c')]()[_0x8688('0x1b')](function(){_0xde781e[_0x8688('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0xd80296){return function(_0x5520fd){if(!_0x5520fd){_0xd80296[_0x8688('0x12')](0x194);}return _0x5520fd;};}function handleError(_0x46917b,_0x4d0fd5){_0x4d0fd5=_0x4d0fd5||0x1f4;return function(_0x501c09){logger[_0x8688('0x1d')](_0x501c09[_0x8688('0x1e')]);if(_0x501c09['name']){delete _0x501c09[_0x8688('0x1f')];}_0x46917b[_0x8688('0x18')](_0x4d0fd5)[_0x8688('0x20')](_0x501c09);};}exports[_0x8688('0x21')]=function(_0xcd435e,_0x1f5acd){var _0x3938a3={};var _0x4d0e91=_[_0x8688('0x22')](db[_0x8688('0x23')][_0x8688('0x24')],function(_0x26aa54){return{'name':_0x26aa54[_0x8688('0x25')],'type':_0x26aa54['type']['key']};});_0x3938a3=qs['getOptions'](_0x4d0e91,_0xcd435e);return interaction[_0x8688('0x26')](_0x8688('0x27'),_0xcd435e[_0x8688('0x28')],_0xcd435e['user'],_0x3938a3,_0x4d0e91)[_0x8688('0x1b')](respondWithFilteredResult(_0x1f5acd,_0x3938a3))[_0x8688('0x29')](handleError(_0x1f5acd,null));};exports['show']=function(_0x19ed5e,_0xdbbbbd){var _0x794d85={'raw':![],'where':{'id':_0x19ed5e[_0x8688('0x2a')]['id']}},_0x5e3404={};_0x5e3404['model']=_[_0x8688('0x2b')](db[_0x8688('0x23')]['rawAttributes']);_0x5e3404[_0x8688('0x28')]=_['keys'](_0x19ed5e[_0x8688('0x28')]);_0x5e3404['filters']=_[_0x8688('0x2c')](_0x5e3404[_0x8688('0x2d')],_0x5e3404[_0x8688('0x28')]);_0x794d85[_0x8688('0x2e')]=_['intersection'](_0x5e3404['model'],qs['fields'](_0x19ed5e[_0x8688('0x28')][_0x8688('0x2f')]));_0x794d85[_0x8688('0x2e')]=_0x794d85['attributes'][_0x8688('0x30')]?_0x794d85[_0x8688('0x2e')]:_0x5e3404['model'];if(_0x19ed5e[_0x8688('0x28')][_0x8688('0x31')]){_0x794d85[_0x8688('0x32')]=[{'all':!![]}];}_0x794d85=_[_0x8688('0x33')]({},_0x794d85,_0x19ed5e[_0x8688('0x34')]);return db[_0x8688('0x23')][_0x8688('0x35')](_0x794d85)[_0x8688('0x1b')](handleEntityNotFound(_0xdbbbbd,null))[_0x8688('0x1b')](respondWithResult(_0xdbbbbd,null))[_0x8688('0x29')](handleError(_0xdbbbbd,null));};exports[_0x8688('0x36')]=function(_0x42c33e,_0x401f1b){return db[_0x8688('0x23')]['create'](_0x42c33e['body'],{})['then'](respondWithResult(_0x401f1b,0xc9))[_0x8688('0x29')](handleError(_0x401f1b,null));};exports[_0x8688('0x37')]=function(_0x4c4727,_0x1506e1){if(_0x4c4727[_0x8688('0x38')]['id']){delete _0x4c4727[_0x8688('0x38')]['id'];}return db['SmsInteraction'][_0x8688('0x35')]({'where':{'id':_0x4c4727['params']['id']}})[_0x8688('0x1b')](handleEntityNotFound(_0x1506e1,null))[_0x8688('0x1b')](saveUpdates(_0x4c4727[_0x8688('0x38')],null))[_0x8688('0x1b')](respondWithResult(_0x1506e1,null))['catch'](handleError(_0x1506e1,null));};exports['destroy']=function(_0x1d66c2,_0x476f1c){return db['SmsInteraction']['find']({'where':{'id':_0x1d66c2['params']['id']}})['then'](handleEntityNotFound(_0x476f1c,null))[_0x8688('0x1b')](removeEntity(_0x476f1c,null))['catch'](handleError(_0x476f1c,null));};exports[_0x8688('0x39')]=function(_0xeed56,_0x315ba3){return db[_0x8688('0x23')][_0x8688('0x39')]()[_0x8688('0x1b')](respondWithResult(_0x315ba3,null))['catch'](handleError(_0x315ba3,null));};exports[_0x8688('0x3a')]=function(_0x3d7826,_0x238593){return db[_0x8688('0x3b')][_0x8688('0x35')]({'where':{'id':_0x3d7826[_0x8688('0x2a')]['id']}})['then'](handleEntityNotFound(_0x238593,null))[_0x8688('0x1b')](function(_0x497dc1){if(_0x497dc1){return _0x497dc1['addMessage'](_0x3d7826['body']['ids'],_['omit'](_0x3d7826['body'],[_0x8688('0x3c'),'id'])||{});}})['then'](respondWithResult(_0x238593,null))[_0x8688('0x29')](handleError(_0x238593,null));};exports['getMessages']=function(_0x3cf6d0,_0x5700d6){var _0x1ecdb8={'raw':![],'where':{}};var _0x5f374a={};var _0x214327={'count':0x0,'rows':[]};return db['SmsInteraction'][_0x8688('0x3d')]({'where':{'id':_0x3cf6d0[_0x8688('0x2a')]['id']}})[_0x8688('0x1b')](handleEntityNotFound(_0x5700d6,null))[_0x8688('0x1b')](function(_0x51021d){if(_0x51021d){_0x5f374a[_0x8688('0x2d')]=_['keys'](db['SmsMessage'][_0x8688('0x24')]);_0x5f374a[_0x8688('0x28')]=_['keys'](_0x3cf6d0[_0x8688('0x28')]);_0x5f374a[_0x8688('0x3e')]=_[_0x8688('0x2c')](_0x5f374a[_0x8688('0x2d')],_0x5f374a[_0x8688('0x28')]);_0x1ecdb8[_0x8688('0x2e')]=_[_0x8688('0x2c')](_0x5f374a[_0x8688('0x2d')],qs['fields'](_0x3cf6d0[_0x8688('0x28')][_0x8688('0x2f')]));_0x1ecdb8[_0x8688('0x2e')]=_0x1ecdb8[_0x8688('0x2e')][_0x8688('0x30')]?_0x1ecdb8['attributes']:_0x5f374a[_0x8688('0x2d')];if(!_0x3cf6d0[_0x8688('0x28')]['hasOwnProperty'](_0x8688('0x3f'))){_0x1ecdb8[_0x8688('0x16')]=qs[_0x8688('0x16')](_0x3cf6d0[_0x8688('0x28')][_0x8688('0x16')]);_0x1ecdb8[_0x8688('0x15')]=qs[_0x8688('0x15')](_0x3cf6d0[_0x8688('0x28')][_0x8688('0x15')]);}_0x1ecdb8[_0x8688('0x40')]=qs['sort'](_0x3cf6d0[_0x8688('0x28')][_0x8688('0x41')]);_0x1ecdb8['where']=qs[_0x8688('0x3e')](_[_0x8688('0x42')](_0x3cf6d0[_0x8688('0x28')],_0x5f374a[_0x8688('0x3e')]));_0x1ecdb8['where']['SmsInteractionId']=_0x51021d['id'];if(_0x3cf6d0[_0x8688('0x28')][_0x8688('0x43')]){_0x1ecdb8[_0x8688('0x44')]=_['merge'](_0x1ecdb8['where'],{'$or':_['map'](_0x1ecdb8[_0x8688('0x2e')],function(_0x399ce3){var _0x1a99f8={};_0x1a99f8[_0x399ce3]={'$like':'%'+_0x3cf6d0['query'][_0x8688('0x43')]+'%'};return _0x1a99f8;})});}if(_0x3cf6d0['query'][_0x8688('0x45')]){var _0x5a8690=_0x3cf6d0[_0x8688('0x28')][_0x8688('0x45')]['split'](',');var _0x4d7a90={};_0x4d7a90[_0x5a8690[0x0]]={'$gte':moment(_0x5a8690[0x1])[_0x8688('0x46')](_0x8688('0x47'))};_0x1ecdb8[_0x8688('0x44')]=_[_0x8688('0x33')](_0x1ecdb8[_0x8688('0x44')],_0x4d7a90);}_0x1ecdb8=_[_0x8688('0x33')]({},_0x1ecdb8,_0x3cf6d0['options']);return db['SmsMessage'][_0x8688('0x17')]({'where':_0x1ecdb8[_0x8688('0x44')]})[_0x8688('0x1b')](function(_0x3cef21){_0x214327[_0x8688('0x17')]=_0x3cef21;if(_0x3cf6d0[_0x8688('0x28')][_0x8688('0x31')]){_0x1ecdb8[_0x8688('0x32')]=[{'all':!![]}];}return db[_0x8688('0x3b')][_0x8688('0x26')](_0x1ecdb8);})[_0x8688('0x1b')](function(_0x4f0806){_0x214327[_0x8688('0x48')]=_0x4f0806;return _0x214327;});}})[_0x8688('0x1b')](respondWithFilteredResult(_0x5700d6,_0x1ecdb8))[_0x8688('0x29')](handleError(_0x5700d6,null));};exports[_0x8688('0x49')]=function(_0x1fc875,_0x12af19){return db[_0x8688('0x23')]['find']({'where':{'id':_0x1fc875[_0x8688('0x2a')]['id']}})[_0x8688('0x1b')](handleEntityNotFound(_0x12af19,null))[_0x8688('0x1b')](function(_0x35f4e7){if(_0x35f4e7){return _0x35f4e7[_0x8688('0x4a')](_0x1fc875[_0x8688('0x38')][_0x8688('0x3c')],_[_0x8688('0x4b')](_0x1fc875[_0x8688('0x38')],[_0x8688('0x3c'),'id'])||{})[_0x8688('0x4c')](function(){return db['Tag'][_0x8688('0x26')]({'attributes':['id',_0x8688('0x1f'),_0x8688('0x4d')],'where':{'id':_0x1fc875[_0x8688('0x38')][_0x8688('0x3c')]}});})[_0x8688('0x1b')](function(_0x6b9973){socket[_0x8688('0x4e')]('smsInteractionTags:save',{'id':Number(_0x1fc875['params']['id']),'tags':_0x6b9973||[]});return{'id':Number(_0x1fc875[_0x8688('0x2a')]['id']),'tags':_0x6b9973||[]};});}})['then'](respondWithResult(_0x12af19,null))[_0x8688('0x29')](handleError(_0x12af19,null));};exports[_0x8688('0x4f')]=function(_0x3fc869,_0xfa55ae){return db[_0x8688('0x23')][_0x8688('0x35')]({'where':{'id':_0x3fc869['params']['id']}})[_0x8688('0x1b')](handleEntityNotFound(_0xfa55ae,null))[_0x8688('0x1b')](function(_0x1830a2){if(_0x1830a2){return _0x1830a2[_0x8688('0x4f')](_0x3fc869[_0x8688('0x28')][_0x8688('0x3c')]);}})['then'](respondWithStatusCode(_0xfa55ae,null))['catch'](handleError(_0xfa55ae,null));};exports['download']=function(_0x27de6d,_0x5473dc){var _0x1af432=moment()[_0x8688('0x50')]()[_0x8688('0x51')]();var _0x328d10=path[_0x8688('0x52')](config[_0x8688('0x53')],_0x8688('0x54'),'files','tmp');var _0xcbe26d=path['join'](_0x328d10,_0x1af432);var _0xf6a5c=util[_0x8688('0x46')](_0x8688('0x55'),_0x27de6d['params']['id'],_0x1af432);var _0xba41f0=path[_0x8688('0x52')](_0x328d10,_0xf6a5c);var _0x5bbc22=[];_0x5bbc22[_0x8688('0x56')]({'model':db['User'],'as':'User','attributes':['id',_0x8688('0x57')],'raw':!![]});_0x5bbc22[_0x8688('0x56')]({'model':db[_0x8688('0x58')],'as':_0x8688('0x59'),'attributes':['id',_0x8688('0x5a'),_0x8688('0x5b')],'raw':!![]});var _0x736f24=[{'model':db['SmsMessage'],'as':_0x8688('0x5c'),'attributes':['id','body',_0x8688('0x5d'),'direction',_0x8688('0x5e'),_0x8688('0x5f')],'include':_0x5bbc22}];_0x736f24[_0x8688('0x56')]({'model':db['SmsAccount'],'as':'Account','attributes':['id',_0x8688('0x1f')]});_0x736f24['push']({'model':db['User'],'as':_0x8688('0x60'),'attributes':['id','fullname']});return db['SmsInteraction'][_0x8688('0x35')]({'where':{'id':_0x27de6d[_0x8688('0x2a')]['id']},'include':_0x736f24})[_0x8688('0x1b')](handleEntityNotFound(_0x5473dc,null))[_0x8688('0x1b')](function(_0x335653){if(_0x335653){var _0x4aa96f=_0x335653[_0x8688('0x61')]({'plain':!![]});fs['mkdirSync'](_0xcbe26d);var _0x100266={'channel':_0x8688('0x62'),'account':_0x4aa96f[_0x8688('0x63')]['name'],'agent':_0x4aa96f[_0x8688('0x60')]?_0x4aa96f[_0x8688('0x60')][_0x8688('0x57')]:_0x8688('0x64'),'createdAt':moment(_0x4aa96f[_0x8688('0x5d')])[_0x8688('0x46')](_0x8688('0x47'))['toString'](),'closedAt':_0x4aa96f[_0x8688('0x65')]?moment(_0x4aa96f[_0x8688('0x66')])[_0x8688('0x46')](_0x8688('0x47'))[_0x8688('0x51')]():'','disposition':_0x4aa96f[_0x8688('0x67')],'messages':_(_0x4aa96f[_0x8688('0x5c')])[_0x8688('0x43')]({'secret':![]})[_0x8688('0x22')](function(_0x6e270c){return{'date':moment(_0x6e270c['createdAt'])[_0x8688('0x46')](_0x8688('0x47'))['toString'](),'sender':_0x6e270c[_0x8688('0x68')]===_0x8688('0x69')?_0x6e270c[_0x8688('0x6a')]?_0x6e270c[_0x8688('0x6a')][_0x8688('0x57')]:_0x8688('0x6b'):_0x6e270c['Contact'][_0x8688('0x5a')]+(_0x6e270c[_0x8688('0x59')][_0x8688('0x5b')]?'\x20'+_0x6e270c[_0x8688('0x59')]['lastName']:''),'body':_0x6e270c[_0x8688('0x38')],'direction':_0x6e270c[_0x8688('0x68')]===_0x8688('0x69')?'A':'C','secret':_0x6e270c[_0x8688('0x5e')],'read':_0x6e270c['read']};})['value']()};return ejs[_0x8688('0x6c')](path['join'](config[_0x8688('0x53')],_0x8688('0x54'),_0x8688('0x6d'),_0x8688('0x6e')),{'interaction':_0x100266})[_0x8688('0x1b')](function(_0x59dc93){var _0x16d3cc=path['join'](_0xcbe26d,_0x8688('0x6f')+_0x4aa96f['id']+'-'+_0x1af432+'.pdf');var _0x523889={'path':_0x16d3cc,'channel':'Sms','interactionId':_0x4aa96f['id']};return pdf[_0x8688('0x70')](_0x59dc93,_0x523889);})['then'](function(){return new BPromise(function(_0x3bb3d7,_0x357e76){zipdir(_0xcbe26d,{'saveTo':_0xba41f0},function(_0x108023,_0x20f887){if(_0x108023)return _0x357e76(_0x108023);return _0x3bb3d7(_0x20f887);});})[_0x8688('0x1b')](function(){return new BPromise(function(_0x3110d3,_0x3ea6fe){rimraf(_0xcbe26d,function(_0x546f02){if(_0x546f02)_0x3ea6fe(_0x546f02);return _0x3110d3();});});})[_0x8688('0x1b')](function(){return _0x5473dc[_0x8688('0x71')](_0xba41f0,_0xf6a5c,function(_0x5dfb9c){if(_0x5dfb9c){console[_0x8688('0x72')](_0x8688('0x73'),_0x5dfb9c);}else{fs[_0x8688('0x74')](_0xba41f0);}});});});}else{return _0x5473dc[_0x8688('0x12')](0xc8);}})[_0x8688('0x29')](handleError(_0x5473dc,null));};
\ No newline at end of file