Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / api / smsInteraction / smsInteraction.controller.js
index fd06de4..4f343f5 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf9b2=['destroy','error','stack','name','send','index','map','SmsInteraction','rawAttributes','fieldName','key','findAll','sms','query','user','catch','show','params','model','keys','filters','intersection','fields','attributes','includeAll','include','merge','options','find','create','body','describe','addMessage','SmsMessage','ids','omit','getMessages','findOne','length','hasOwnProperty','nolimit','sort','where','pick','SmsInteractionId','filter','$gte','split','YYYY-MM-DD\x20HH:mm:ss','rows','setTags','spread','Tag','color','emit','removeTags','unix','toString','server','files','tmp','join','format','transcript-%d-%s.zip','push','User','fullname','CmContact','Contact','firstName','lastName','Messages','createdAt','direction','secret','read','SmsAccount','Owner','get','mkdirSync','Sms','Account','closed','closedAt','disposition','System','out','value','renderFile','root','views','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','download','log','err','unlinkSync','bluebird','util','path','ejs','lodash','../../components/interaction/service','../../components/parsers/qs','api','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./smsInteraction.socket','register','sendStatus','status','end','json','offset','undefined','count','limit','Content-Range','update','then'];(function(_0x1988f1,_0x290a23){var _0x3c848e=function(_0x3600e7){while(--_0x3600e7){_0x1988f1['push'](_0x1988f1['shift']());}};_0x3c848e(++_0x290a23);}(_0xf9b2,0x1da));var _0x2f9b=function(_0x41a3e9,_0x6e1859){_0x41a3e9=_0x41a3e9-0x0;var _0x118c88=_0xf9b2[_0x41a3e9];return _0x118c88;};'use strict';var rimraf=require('rimraf');var zipdir=require('zip-dir');var moment=require('moment');var BPromise=require(_0x2f9b('0x0'));var util=require(_0x2f9b('0x1'));var path=require(_0x2f9b('0x2'));var ejs=require(_0x2f9b('0x3'));var fs=require('fs');var _=require(_0x2f9b('0x4'));var Redis=require('ioredis');var interaction=require(_0x2f9b('0x5'));var qs=require(_0x2f9b('0x6'));var pdf=require('../../components/export/pdf');var logger=require('../../config/logger')(_0x2f9b('0x7'));var config=require(_0x2f9b('0x8'));var db=require(_0x2f9b('0x9'))['db'];config[_0x2f9b('0xa')]=_[_0x2f9b('0xb')](config[_0x2f9b('0xa')],{'host':'localhost','port':0x18eb});var socket=require(_0x2f9b('0xc'))(new Redis(config['redis']));require(_0x2f9b('0xd'))[_0x2f9b('0xe')](socket);function respondWithStatusCode(_0x31ad34,_0x286f7f){_0x286f7f=_0x286f7f||0xcc;return function(_0x197a8b){if(_0x197a8b){return _0x31ad34[_0x2f9b('0xf')](_0x286f7f);}return _0x31ad34[_0x2f9b('0x10')](_0x286f7f)[_0x2f9b('0x11')]();};}function respondWithResult(_0x10bc0b,_0x5b873c){_0x5b873c=_0x5b873c||0xc8;return function(_0xe37f53){if(_0xe37f53){return _0x10bc0b[_0x2f9b('0x10')](_0x5b873c)[_0x2f9b('0x12')](_0xe37f53);}};}function respondWithFilteredResult(_0x34080e,_0x2936ce){return function(_0x1c7c70){if(_0x1c7c70){var _0x4ebc7b=typeof _0x2936ce[_0x2f9b('0x13')]==='undefined'&&typeof _0x2936ce['limit']===_0x2f9b('0x14');var _0x54dcc9=_0x1c7c70[_0x2f9b('0x15')];var _0x38ca40=_0x4ebc7b?0x0:_0x2936ce[_0x2f9b('0x13')];var _0x5425c1=_0x4ebc7b?_0x1c7c70[_0x2f9b('0x15')]:_0x2936ce[_0x2f9b('0x13')]+_0x2936ce[_0x2f9b('0x16')];var _0x4115f9;if(_0x5425c1>=_0x54dcc9){_0x5425c1=_0x54dcc9;_0x4115f9=0xc8;}else{_0x4115f9=0xce;}_0x34080e[_0x2f9b('0x10')](_0x4115f9);return _0x34080e['set'](_0x2f9b('0x17'),_0x38ca40+'-'+_0x5425c1+'/'+_0x54dcc9)[_0x2f9b('0x12')](_0x1c7c70);}return null;};}function saveUpdates(_0x14fbd3){return function(_0x46e3e0){if(_0x46e3e0){return _0x46e3e0[_0x2f9b('0x18')](_0x14fbd3)[_0x2f9b('0x19')](function(_0x423ea5){return _0x423ea5;});}return null;};}function removeEntity(_0x55a787){return function(_0x1ec994){if(_0x1ec994){return _0x1ec994[_0x2f9b('0x1a')]()['then'](function(){_0x55a787[_0x2f9b('0x10')](0xcc)[_0x2f9b('0x11')]();});}};}function handleEntityNotFound(_0x54902c){return function(_0x502273){if(!_0x502273){_0x54902c[_0x2f9b('0xf')](0x194);}return _0x502273;};}function handleError(_0x4bf3b0,_0x4c667d){_0x4c667d=_0x4c667d||0x1f4;return function(_0x5a7462){logger[_0x2f9b('0x1b')](_0x5a7462[_0x2f9b('0x1c')]);if(_0x5a7462[_0x2f9b('0x1d')]){delete _0x5a7462[_0x2f9b('0x1d')];}_0x4bf3b0[_0x2f9b('0x10')](_0x4c667d)[_0x2f9b('0x1e')](_0x5a7462);};}exports[_0x2f9b('0x1f')]=function(_0x4bd83e,_0x389dd0){var _0x2454fa={};var _0x7d06d4=_[_0x2f9b('0x20')](db[_0x2f9b('0x21')][_0x2f9b('0x22')],function(_0xa88d81){return{'name':_0xa88d81[_0x2f9b('0x23')],'type':_0xa88d81['type'][_0x2f9b('0x24')]};});_0x2454fa=qs['getOptions'](_0x7d06d4,_0x4bd83e);return interaction[_0x2f9b('0x25')](_0x2f9b('0x26'),_0x4bd83e[_0x2f9b('0x27')],_0x4bd83e[_0x2f9b('0x28')],_0x2454fa,_0x7d06d4)[_0x2f9b('0x19')](respondWithFilteredResult(_0x389dd0,_0x2454fa))[_0x2f9b('0x29')](handleError(_0x389dd0,null));};exports[_0x2f9b('0x2a')]=function(_0x14f0d1,_0x218854){var _0x1ce387={'raw':![],'where':{'id':_0x14f0d1[_0x2f9b('0x2b')]['id']}},_0x153ad5={};_0x153ad5[_0x2f9b('0x2c')]=_[_0x2f9b('0x2d')](db[_0x2f9b('0x21')][_0x2f9b('0x22')]);_0x153ad5[_0x2f9b('0x27')]=_['keys'](_0x14f0d1[_0x2f9b('0x27')]);_0x153ad5[_0x2f9b('0x2e')]=_[_0x2f9b('0x2f')](_0x153ad5[_0x2f9b('0x2c')],_0x153ad5[_0x2f9b('0x27')]);_0x1ce387['attributes']=_[_0x2f9b('0x2f')](_0x153ad5[_0x2f9b('0x2c')],qs[_0x2f9b('0x30')](_0x14f0d1['query'][_0x2f9b('0x30')]));_0x1ce387[_0x2f9b('0x31')]=_0x1ce387['attributes']['length']?_0x1ce387[_0x2f9b('0x31')]:_0x153ad5['model'];if(_0x14f0d1['query'][_0x2f9b('0x32')]){_0x1ce387[_0x2f9b('0x33')]=[{'all':!![]}];}_0x1ce387=_[_0x2f9b('0x34')]({},_0x1ce387,_0x14f0d1[_0x2f9b('0x35')]);return db[_0x2f9b('0x21')][_0x2f9b('0x36')](_0x1ce387)['then'](handleEntityNotFound(_0x218854,null))[_0x2f9b('0x19')](respondWithResult(_0x218854,null))['catch'](handleError(_0x218854,null));};exports[_0x2f9b('0x37')]=function(_0x17e067,_0x34bd3e){return db[_0x2f9b('0x21')]['create'](_0x17e067[_0x2f9b('0x38')],{})[_0x2f9b('0x19')](respondWithResult(_0x34bd3e,0xc9))[_0x2f9b('0x29')](handleError(_0x34bd3e,null));};exports[_0x2f9b('0x18')]=function(_0x538b6f,_0x1112f0){if(_0x538b6f[_0x2f9b('0x38')]['id']){delete _0x538b6f['body']['id'];}return db[_0x2f9b('0x21')][_0x2f9b('0x36')]({'where':{'id':_0x538b6f[_0x2f9b('0x2b')]['id']}})[_0x2f9b('0x19')](handleEntityNotFound(_0x1112f0,null))[_0x2f9b('0x19')](saveUpdates(_0x538b6f['body'],null))[_0x2f9b('0x19')](respondWithResult(_0x1112f0,null))[_0x2f9b('0x29')](handleError(_0x1112f0,null));};exports[_0x2f9b('0x1a')]=function(_0x33a637,_0x546413){return db[_0x2f9b('0x21')][_0x2f9b('0x36')]({'where':{'id':_0x33a637['params']['id']}})[_0x2f9b('0x19')](handleEntityNotFound(_0x546413,null))[_0x2f9b('0x19')](removeEntity(_0x546413,null))[_0x2f9b('0x29')](handleError(_0x546413,null));};exports[_0x2f9b('0x39')]=function(_0x4c06aa,_0x15ec86){return db[_0x2f9b('0x21')][_0x2f9b('0x39')]()[_0x2f9b('0x19')](respondWithResult(_0x15ec86,null))['catch'](handleError(_0x15ec86,null));};exports[_0x2f9b('0x3a')]=function(_0x578537,_0x3f4ac0){return db[_0x2f9b('0x3b')][_0x2f9b('0x36')]({'where':{'id':_0x578537[_0x2f9b('0x2b')]['id']}})[_0x2f9b('0x19')](handleEntityNotFound(_0x3f4ac0,null))['then'](function(_0xc7c333){if(_0xc7c333){return _0xc7c333[_0x2f9b('0x3a')](_0x578537['body'][_0x2f9b('0x3c')],_[_0x2f9b('0x3d')](_0x578537['body'],[_0x2f9b('0x3c'),'id'])||{});}})[_0x2f9b('0x19')](respondWithResult(_0x3f4ac0,null))[_0x2f9b('0x29')](handleError(_0x3f4ac0,null));};exports[_0x2f9b('0x3e')]=function(_0xeb2ce0,_0x5dbbe7){var _0x5dc882={'raw':![],'where':{}};var _0x452eb2={};var _0x803e47={'count':0x0,'rows':[]};return db[_0x2f9b('0x21')][_0x2f9b('0x3f')]({'where':{'id':_0xeb2ce0[_0x2f9b('0x2b')]['id']}})['then'](handleEntityNotFound(_0x5dbbe7,null))['then'](function(_0xe35b24){if(_0xe35b24){_0x452eb2[_0x2f9b('0x2c')]=_[_0x2f9b('0x2d')](db[_0x2f9b('0x3b')][_0x2f9b('0x22')]);_0x452eb2[_0x2f9b('0x27')]=_['keys'](_0xeb2ce0[_0x2f9b('0x27')]);_0x452eb2[_0x2f9b('0x2e')]=_['intersection'](_0x452eb2['model'],_0x452eb2[_0x2f9b('0x27')]);_0x5dc882[_0x2f9b('0x31')]=_[_0x2f9b('0x2f')](_0x452eb2['model'],qs[_0x2f9b('0x30')](_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x30')]));_0x5dc882[_0x2f9b('0x31')]=_0x5dc882[_0x2f9b('0x31')][_0x2f9b('0x40')]?_0x5dc882[_0x2f9b('0x31')]:_0x452eb2[_0x2f9b('0x2c')];if(!_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x41')](_0x2f9b('0x42'))){_0x5dc882[_0x2f9b('0x16')]=qs['limit'](_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x16')]);_0x5dc882[_0x2f9b('0x13')]=qs[_0x2f9b('0x13')](_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x13')]);}_0x5dc882['order']=qs[_0x2f9b('0x43')](_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x43')]);_0x5dc882[_0x2f9b('0x44')]=qs[_0x2f9b('0x2e')](_[_0x2f9b('0x45')](_0xeb2ce0[_0x2f9b('0x27')],_0x452eb2[_0x2f9b('0x2e')]));_0x5dc882[_0x2f9b('0x44')][_0x2f9b('0x46')]=_0xe35b24['id'];if(_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x47')]){_0x5dc882['where']=_[_0x2f9b('0x34')](_0x5dc882[_0x2f9b('0x44')],{'$or':_[_0x2f9b('0x20')](_0x5dc882['attributes'],function(_0x91581e){var _0x1a0978={};_0x1a0978[_0x91581e]={'$like':'%'+_0xeb2ce0['query']['filter']+'%'};return _0x1a0978;})});}if(_0xeb2ce0[_0x2f9b('0x27')]['$gte']){var _0x3020e3=_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x48')][_0x2f9b('0x49')](',');var _0x2ec007={};_0x2ec007[_0x3020e3[0x0]]={'$gte':moment(_0x3020e3[0x1])['format'](_0x2f9b('0x4a'))};_0x5dc882['where']=_[_0x2f9b('0x34')](_0x5dc882[_0x2f9b('0x44')],_0x2ec007);}_0x5dc882=_[_0x2f9b('0x34')]({},_0x5dc882,_0xeb2ce0['options']);return db['SmsMessage'][_0x2f9b('0x15')]({'where':_0x5dc882['where']})[_0x2f9b('0x19')](function(_0x2d53c0){_0x803e47[_0x2f9b('0x15')]=_0x2d53c0;if(_0xeb2ce0[_0x2f9b('0x27')][_0x2f9b('0x32')]){_0x5dc882[_0x2f9b('0x33')]=[{'all':!![]}];}return db[_0x2f9b('0x3b')][_0x2f9b('0x25')](_0x5dc882);})['then'](function(_0xa13ef3){_0x803e47[_0x2f9b('0x4b')]=_0xa13ef3;return _0x803e47;});}})['then'](respondWithFilteredResult(_0x5dbbe7,_0x5dc882))[_0x2f9b('0x29')](handleError(_0x5dbbe7,null));};exports['addTags']=function(_0x1a3ea9,_0x61d25f){return db['SmsInteraction']['find']({'where':{'id':_0x1a3ea9[_0x2f9b('0x2b')]['id']}})[_0x2f9b('0x19')](handleEntityNotFound(_0x61d25f,null))[_0x2f9b('0x19')](function(_0x1fae78){if(_0x1fae78){return _0x1fae78[_0x2f9b('0x4c')](_0x1a3ea9[_0x2f9b('0x38')][_0x2f9b('0x3c')],_[_0x2f9b('0x3d')](_0x1a3ea9['body'],['ids','id'])||{})[_0x2f9b('0x4d')](function(){return db[_0x2f9b('0x4e')][_0x2f9b('0x25')]({'attributes':['id',_0x2f9b('0x1d'),_0x2f9b('0x4f')],'where':{'id':_0x1a3ea9['body'][_0x2f9b('0x3c')]}});})[_0x2f9b('0x19')](function(_0x3f28e4){socket[_0x2f9b('0x50')]('smsInteractionTags:save',{'id':Number(_0x1a3ea9[_0x2f9b('0x2b')]['id']),'tags':_0x3f28e4||[]});return{'id':Number(_0x1a3ea9[_0x2f9b('0x2b')]['id']),'tags':_0x3f28e4||[]};});}})['then'](respondWithResult(_0x61d25f,null))[_0x2f9b('0x29')](handleError(_0x61d25f,null));};exports[_0x2f9b('0x51')]=function(_0x50d050,_0x48eb5d){return db[_0x2f9b('0x21')]['find']({'where':{'id':_0x50d050[_0x2f9b('0x2b')]['id']}})[_0x2f9b('0x19')](handleEntityNotFound(_0x48eb5d,null))[_0x2f9b('0x19')](function(_0x13708d){if(_0x13708d){return _0x13708d[_0x2f9b('0x51')](_0x50d050[_0x2f9b('0x27')][_0x2f9b('0x3c')]);}})['then'](respondWithStatusCode(_0x48eb5d,null))[_0x2f9b('0x29')](handleError(_0x48eb5d,null));};exports['download']=function(_0x5ee272,_0x232357){var _0x5039b7=moment()[_0x2f9b('0x52')]()[_0x2f9b('0x53')]();var _0x5ca37b=path['join'](config['root'],_0x2f9b('0x54'),_0x2f9b('0x55'),_0x2f9b('0x56'));var _0x5dc6ce=path[_0x2f9b('0x57')](_0x5ca37b,_0x5039b7);var _0x5a8f91=util[_0x2f9b('0x58')](_0x2f9b('0x59'),_0x5ee272['params']['id'],_0x5039b7);var _0x25ead2=path[_0x2f9b('0x57')](_0x5ca37b,_0x5a8f91);var _0x3d8bd4=[];_0x3d8bd4[_0x2f9b('0x5a')]({'model':db['User'],'as':_0x2f9b('0x5b'),'attributes':['id',_0x2f9b('0x5c')],'raw':!![]});_0x3d8bd4[_0x2f9b('0x5a')]({'model':db[_0x2f9b('0x5d')],'as':_0x2f9b('0x5e'),'attributes':['id',_0x2f9b('0x5f'),_0x2f9b('0x60')],'raw':!![]});var _0x10530c=[{'model':db[_0x2f9b('0x3b')],'as':_0x2f9b('0x61'),'attributes':['id',_0x2f9b('0x38'),_0x2f9b('0x62'),_0x2f9b('0x63'),_0x2f9b('0x64'),_0x2f9b('0x65')],'include':_0x3d8bd4}];_0x10530c[_0x2f9b('0x5a')]({'model':db[_0x2f9b('0x66')],'as':'Account','attributes':['id','name']});_0x10530c['push']({'model':db['User'],'as':_0x2f9b('0x67'),'attributes':['id',_0x2f9b('0x5c')]});return db[_0x2f9b('0x21')][_0x2f9b('0x36')]({'where':{'id':_0x5ee272[_0x2f9b('0x2b')]['id']},'include':_0x10530c})[_0x2f9b('0x19')](handleEntityNotFound(_0x232357,null))[_0x2f9b('0x19')](function(_0x1e20c5){if(_0x1e20c5){var _0x565bbd=_0x1e20c5[_0x2f9b('0x68')]({'plain':!![]});fs[_0x2f9b('0x69')](_0x5dc6ce);var _0x4720ad={'channel':_0x2f9b('0x6a'),'account':_0x565bbd[_0x2f9b('0x6b')]['name'],'agent':_0x565bbd[_0x2f9b('0x67')]?_0x565bbd[_0x2f9b('0x67')][_0x2f9b('0x5c')]:'N.A.','createdAt':moment(_0x565bbd[_0x2f9b('0x62')])['format']('YYYY-MM-DD\x20HH:mm:ss')[_0x2f9b('0x53')](),'closedAt':_0x565bbd[_0x2f9b('0x6c')]?moment(_0x565bbd[_0x2f9b('0x6d')])[_0x2f9b('0x58')](_0x2f9b('0x4a'))[_0x2f9b('0x53')]():'','disposition':_0x565bbd[_0x2f9b('0x6e')],'messages':_(_0x565bbd[_0x2f9b('0x61')])[_0x2f9b('0x47')]({'secret':![]})[_0x2f9b('0x20')](function(_0x43952f){return{'date':moment(_0x43952f[_0x2f9b('0x62')])[_0x2f9b('0x58')](_0x2f9b('0x4a'))[_0x2f9b('0x53')](),'sender':_0x43952f[_0x2f9b('0x63')]==='out'?_0x43952f[_0x2f9b('0x5b')]?_0x43952f[_0x2f9b('0x5b')]['fullname']:_0x2f9b('0x6f'):_0x43952f[_0x2f9b('0x5e')][_0x2f9b('0x5f')]+(_0x43952f[_0x2f9b('0x5e')]['lastName']?'\x20'+_0x43952f[_0x2f9b('0x5e')][_0x2f9b('0x60')]:''),'body':_0x43952f[_0x2f9b('0x38')],'direction':_0x43952f[_0x2f9b('0x63')]===_0x2f9b('0x70')?'A':'C','secret':_0x43952f['secret'],'read':_0x43952f['read']};})[_0x2f9b('0x71')]()};return ejs[_0x2f9b('0x72')](path['join'](config[_0x2f9b('0x73')],'server',_0x2f9b('0x74'),_0x2f9b('0x75')),{'interaction':_0x4720ad})[_0x2f9b('0x19')](function(_0x775d3e){var _0x59fd86=path[_0x2f9b('0x57')](_0x5dc6ce,_0x2f9b('0x76')+_0x565bbd['id']+'-'+_0x5039b7+_0x2f9b('0x77'));var _0x29bab3={'path':_0x59fd86,'channel':_0x2f9b('0x6a'),'interactionId':_0x565bbd['id']};return pdf[_0x2f9b('0x78')](_0x775d3e,_0x29bab3);})[_0x2f9b('0x19')](function(){return new BPromise(function(_0x33a755,_0xda8cd5){zipdir(_0x5dc6ce,{'saveTo':_0x25ead2},function(_0x4c68bf,_0x30271d){if(_0x4c68bf)return _0xda8cd5(_0x4c68bf);return _0x33a755(_0x30271d);});})[_0x2f9b('0x19')](function(){return new BPromise(function(_0x255468,_0x4e4514){rimraf(_0x5dc6ce,function(_0x45abad){if(_0x45abad)_0x4e4514(_0x45abad);return _0x255468();});});})[_0x2f9b('0x19')](function(){return _0x232357[_0x2f9b('0x79')](_0x25ead2,_0x5a8f91,function(_0x438efe){if(_0x438efe){console[_0x2f9b('0x7a')](_0x2f9b('0x7b'),_0x438efe);}else{fs[_0x2f9b('0x7c')](_0x25ead2);}});});});}else{return _0x232357[_0x2f9b('0xf')](0xc8);}})[_0x2f9b('0x29')](handleError(_0x232357,null));};
\ No newline at end of file
+var _0xa776=['getOptions','findAll','sms','query','user','catch','show','params','filters','intersection','model','attributes','fields','includeAll','merge','options','find','create','body','update','describe','addMessage','SmsMessage','ids','getMessages','findOne','keys','length','hasOwnProperty','nolimit','sort','pick','where','SmsInteractionId','filter','$gte','split','format','include','omit','spread','color','emit','smsInteractionTags:save','removeTags','download','unix','toString','join','root','files','transcript-%d-%s.zip','push','User','fullname','Messages','secret','read','Account','Owner','get','mkdirSync','Sms','YYYY-MM-DD\x20HH:mm:ss','closedAt','disposition','map','createdAt','direction','out','Contact','firstName','lastName','value','renderFile','downloadInteraction.ejs','err','unlinkSync','rimraf','zip-dir','moment','bluebird','util','path','ejs','lodash','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./smsInteraction.socket','register','sendStatus','end','status','json','limit','undefined','count','offset','set','Content-Range','destroy','then','stack','name','send','SmsInteraction','rawAttributes','fieldName','type','key'];(function(_0x462ef4,_0x25eec7){var _0x3566fe=function(_0x5071f2){while(--_0x5071f2){_0x462ef4['push'](_0x462ef4['shift']());}};_0x3566fe(++_0x25eec7);}(_0xa776,0x13a));var _0x6a77=function(_0x54e759,_0x1f3266){_0x54e759=_0x54e759-0x0;var _0x56c289=_0xa776[_0x54e759];return _0x56c289;};'use strict';var rimraf=require(_0x6a77('0x0'));var zipdir=require(_0x6a77('0x1'));var moment=require(_0x6a77('0x2'));var BPromise=require(_0x6a77('0x3'));var util=require(_0x6a77('0x4'));var path=require(_0x6a77('0x5'));var ejs=require(_0x6a77('0x6'));var fs=require('fs');var _=require(_0x6a77('0x7'));var Redis=require('ioredis');var interaction=require(_0x6a77('0x8'));var qs=require(_0x6a77('0x9'));var pdf=require(_0x6a77('0xa'));var logger=require(_0x6a77('0xb'))(_0x6a77('0xc'));var config=require(_0x6a77('0xd'));var db=require('../../mysqldb')['db'];config[_0x6a77('0xe')]=_[_0x6a77('0xf')](config[_0x6a77('0xe')],{'host':_0x6a77('0x10'),'port':0x18eb});var socket=require(_0x6a77('0x11'))(new Redis(config[_0x6a77('0xe')]));require(_0x6a77('0x12'))[_0x6a77('0x13')](socket);function respondWithStatusCode(_0x2e6927,_0xc057f9){_0xc057f9=_0xc057f9||0xcc;return function(_0xd84c02){if(_0xd84c02){return _0x2e6927[_0x6a77('0x14')](_0xc057f9);}return _0x2e6927['status'](_0xc057f9)[_0x6a77('0x15')]();};}function respondWithResult(_0x3b56ad,_0x3af163){_0x3af163=_0x3af163||0xc8;return function(_0x1f90f4){if(_0x1f90f4){return _0x3b56ad[_0x6a77('0x16')](_0x3af163)[_0x6a77('0x17')](_0x1f90f4);}};}function respondWithFilteredResult(_0x8308f0,_0x58740f){return function(_0x93d4bd){if(_0x93d4bd){var _0x23c286=typeof _0x58740f['offset']==='undefined'&&typeof _0x58740f[_0x6a77('0x18')]===_0x6a77('0x19');var _0x23064a=_0x93d4bd[_0x6a77('0x1a')];var _0x408635=_0x23c286?0x0:_0x58740f[_0x6a77('0x1b')];var _0x2d734f=_0x23c286?_0x93d4bd[_0x6a77('0x1a')]:_0x58740f[_0x6a77('0x1b')]+_0x58740f[_0x6a77('0x18')];var _0x3448b5;if(_0x2d734f>=_0x23064a){_0x2d734f=_0x23064a;_0x3448b5=0xc8;}else{_0x3448b5=0xce;}_0x8308f0[_0x6a77('0x16')](_0x3448b5);return _0x8308f0[_0x6a77('0x1c')](_0x6a77('0x1d'),_0x408635+'-'+_0x2d734f+'/'+_0x23064a)[_0x6a77('0x17')](_0x93d4bd);}return null;};}function saveUpdates(_0x3b2531){return function(_0x323162){if(_0x323162){return _0x323162['update'](_0x3b2531)['then'](function(_0x51cca2){return _0x51cca2;});}return null;};}function removeEntity(_0x2df600){return function(_0x75917c){if(_0x75917c){return _0x75917c[_0x6a77('0x1e')]()[_0x6a77('0x1f')](function(){_0x2df600[_0x6a77('0x16')](0xcc)[_0x6a77('0x15')]();});}};}function handleEntityNotFound(_0x56d26c){return function(_0x32051e){if(!_0x32051e){_0x56d26c[_0x6a77('0x14')](0x194);}return _0x32051e;};}function handleError(_0x294963,_0x31b1e3){_0x31b1e3=_0x31b1e3||0x1f4;return function(_0x59b851){logger['error'](_0x59b851[_0x6a77('0x20')]);if(_0x59b851[_0x6a77('0x21')]){delete _0x59b851[_0x6a77('0x21')];}_0x294963['status'](_0x31b1e3)[_0x6a77('0x22')](_0x59b851);};}exports['index']=function(_0x4b6879,_0x506f1b){var _0xa64f52={};var _0x12cdfd=_['map'](db[_0x6a77('0x23')][_0x6a77('0x24')],function(_0x1de2f1){return{'name':_0x1de2f1[_0x6a77('0x25')],'type':_0x1de2f1[_0x6a77('0x26')][_0x6a77('0x27')]};});_0xa64f52=qs[_0x6a77('0x28')](_0x12cdfd,_0x4b6879);return interaction[_0x6a77('0x29')](_0x6a77('0x2a'),_0x4b6879[_0x6a77('0x2b')],_0x4b6879[_0x6a77('0x2c')],_0xa64f52,_0x12cdfd)[_0x6a77('0x1f')](respondWithFilteredResult(_0x506f1b,_0xa64f52))[_0x6a77('0x2d')](handleError(_0x506f1b,null));};exports[_0x6a77('0x2e')]=function(_0x1440dd,_0x44461e){var _0x2951a4={'raw':![],'where':{'id':_0x1440dd[_0x6a77('0x2f')]['id']}},_0x3415ef={};_0x3415ef['model']=_['keys'](db[_0x6a77('0x23')][_0x6a77('0x24')]);_0x3415ef['query']=_['keys'](_0x1440dd['query']);_0x3415ef[_0x6a77('0x30')]=_[_0x6a77('0x31')](_0x3415ef[_0x6a77('0x32')],_0x3415ef[_0x6a77('0x2b')]);_0x2951a4[_0x6a77('0x33')]=_['intersection'](_0x3415ef['model'],qs[_0x6a77('0x34')](_0x1440dd['query'][_0x6a77('0x34')]));_0x2951a4[_0x6a77('0x33')]=_0x2951a4['attributes']['length']?_0x2951a4['attributes']:_0x3415ef['model'];if(_0x1440dd[_0x6a77('0x2b')][_0x6a77('0x35')]){_0x2951a4['include']=[{'all':!![]}];}_0x2951a4=_[_0x6a77('0x36')]({},_0x2951a4,_0x1440dd[_0x6a77('0x37')]);return db[_0x6a77('0x23')][_0x6a77('0x38')](_0x2951a4)['then'](handleEntityNotFound(_0x44461e,null))[_0x6a77('0x1f')](respondWithResult(_0x44461e,null))[_0x6a77('0x2d')](handleError(_0x44461e,null));};exports[_0x6a77('0x39')]=function(_0xd8e926,_0x6fa5ab){return db[_0x6a77('0x23')]['create'](_0xd8e926[_0x6a77('0x3a')],{})[_0x6a77('0x1f')](respondWithResult(_0x6fa5ab,0xc9))[_0x6a77('0x2d')](handleError(_0x6fa5ab,null));};exports[_0x6a77('0x3b')]=function(_0x422084,_0x3710be){if(_0x422084['body']['id']){delete _0x422084[_0x6a77('0x3a')]['id'];}return db[_0x6a77('0x23')][_0x6a77('0x38')]({'where':{'id':_0x422084[_0x6a77('0x2f')]['id']}})[_0x6a77('0x1f')](handleEntityNotFound(_0x3710be,null))['then'](saveUpdates(_0x422084['body'],null))[_0x6a77('0x1f')](respondWithResult(_0x3710be,null))[_0x6a77('0x2d')](handleError(_0x3710be,null));};exports[_0x6a77('0x1e')]=function(_0x38d59f,_0x39ad99){return db[_0x6a77('0x23')]['find']({'where':{'id':_0x38d59f[_0x6a77('0x2f')]['id']}})[_0x6a77('0x1f')](handleEntityNotFound(_0x39ad99,null))[_0x6a77('0x1f')](removeEntity(_0x39ad99,null))[_0x6a77('0x2d')](handleError(_0x39ad99,null));};exports[_0x6a77('0x3c')]=function(_0x18b4b4,_0x15b08c){return db[_0x6a77('0x23')][_0x6a77('0x3c')]()[_0x6a77('0x1f')](respondWithResult(_0x15b08c,null))[_0x6a77('0x2d')](handleError(_0x15b08c,null));};exports[_0x6a77('0x3d')]=function(_0x567427,_0x41d01e){return db[_0x6a77('0x3e')][_0x6a77('0x38')]({'where':{'id':_0x567427[_0x6a77('0x2f')]['id']}})['then'](handleEntityNotFound(_0x41d01e,null))[_0x6a77('0x1f')](function(_0x4e195f){if(_0x4e195f){return _0x4e195f[_0x6a77('0x3d')](_0x567427[_0x6a77('0x3a')][_0x6a77('0x3f')],_['omit'](_0x567427[_0x6a77('0x3a')],[_0x6a77('0x3f'),'id'])||{});}})[_0x6a77('0x1f')](respondWithResult(_0x41d01e,null))['catch'](handleError(_0x41d01e,null));};exports[_0x6a77('0x40')]=function(_0x250694,_0x35ffb4){var _0x398a04={'raw':![],'where':{}};var _0x48f151={};var _0x5415bf={'count':0x0,'rows':[]};return db[_0x6a77('0x23')][_0x6a77('0x41')]({'where':{'id':_0x250694[_0x6a77('0x2f')]['id']}})[_0x6a77('0x1f')](handleEntityNotFound(_0x35ffb4,null))[_0x6a77('0x1f')](function(_0x56739a){if(_0x56739a){_0x48f151[_0x6a77('0x32')]=_[_0x6a77('0x42')](db[_0x6a77('0x3e')][_0x6a77('0x24')]);_0x48f151[_0x6a77('0x2b')]=_[_0x6a77('0x42')](_0x250694[_0x6a77('0x2b')]);_0x48f151[_0x6a77('0x30')]=_[_0x6a77('0x31')](_0x48f151[_0x6a77('0x32')],_0x48f151[_0x6a77('0x2b')]);_0x398a04[_0x6a77('0x33')]=_[_0x6a77('0x31')](_0x48f151[_0x6a77('0x32')],qs[_0x6a77('0x34')](_0x250694[_0x6a77('0x2b')][_0x6a77('0x34')]));_0x398a04[_0x6a77('0x33')]=_0x398a04[_0x6a77('0x33')][_0x6a77('0x43')]?_0x398a04[_0x6a77('0x33')]:_0x48f151['model'];if(!_0x250694[_0x6a77('0x2b')][_0x6a77('0x44')](_0x6a77('0x45'))){_0x398a04[_0x6a77('0x18')]=qs[_0x6a77('0x18')](_0x250694['query'][_0x6a77('0x18')]);_0x398a04['offset']=qs['offset'](_0x250694[_0x6a77('0x2b')][_0x6a77('0x1b')]);}_0x398a04['order']=qs['sort'](_0x250694[_0x6a77('0x2b')][_0x6a77('0x46')]);_0x398a04['where']=qs[_0x6a77('0x30')](_[_0x6a77('0x47')](_0x250694[_0x6a77('0x2b')],_0x48f151['filters']));_0x398a04[_0x6a77('0x48')][_0x6a77('0x49')]=_0x56739a['id'];if(_0x250694['query'][_0x6a77('0x4a')]){_0x398a04['where']=_['merge'](_0x398a04[_0x6a77('0x48')],{'$or':_['map'](_0x398a04[_0x6a77('0x33')],function(_0xf223bf){var _0x2784a7={};_0x2784a7[_0xf223bf]={'$like':'%'+_0x250694['query'][_0x6a77('0x4a')]+'%'};return _0x2784a7;})});}if(_0x250694['query'][_0x6a77('0x4b')]){var _0x45a20b=_0x250694[_0x6a77('0x2b')]['$gte'][_0x6a77('0x4c')](',');var _0x46d219={};_0x46d219[_0x45a20b[0x0]]={'$gte':moment(_0x45a20b[0x1])[_0x6a77('0x4d')]('YYYY-MM-DD\x20HH:mm:ss')};_0x398a04[_0x6a77('0x48')]=_['merge'](_0x398a04[_0x6a77('0x48')],_0x46d219);}_0x398a04=_[_0x6a77('0x36')]({},_0x398a04,_0x250694[_0x6a77('0x37')]);return db[_0x6a77('0x3e')][_0x6a77('0x1a')]({'where':_0x398a04[_0x6a77('0x48')]})[_0x6a77('0x1f')](function(_0xf4e7de){_0x5415bf[_0x6a77('0x1a')]=_0xf4e7de;if(_0x250694[_0x6a77('0x2b')][_0x6a77('0x35')]){_0x398a04[_0x6a77('0x4e')]=[{'all':!![]}];}return db['SmsMessage']['findAll'](_0x398a04);})['then'](function(_0x743182){_0x5415bf['rows']=_0x743182;return _0x5415bf;});}})['then'](respondWithFilteredResult(_0x35ffb4,_0x398a04))[_0x6a77('0x2d')](handleError(_0x35ffb4,null));};exports['addTags']=function(_0x5e8169,_0xb91ddd){return db['SmsInteraction'][_0x6a77('0x38')]({'where':{'id':_0x5e8169[_0x6a77('0x2f')]['id']}})[_0x6a77('0x1f')](handleEntityNotFound(_0xb91ddd,null))[_0x6a77('0x1f')](function(_0x3b02a4){if(_0x3b02a4){return _0x3b02a4['setTags'](_0x5e8169['body']['ids'],_[_0x6a77('0x4f')](_0x5e8169[_0x6a77('0x3a')],['ids','id'])||{})[_0x6a77('0x50')](function(){return db['Tag'][_0x6a77('0x29')]({'attributes':['id',_0x6a77('0x21'),_0x6a77('0x51')],'where':{'id':_0x5e8169[_0x6a77('0x3a')][_0x6a77('0x3f')]}});})[_0x6a77('0x1f')](function(_0x512218){socket[_0x6a77('0x52')](_0x6a77('0x53'),{'id':Number(_0x5e8169[_0x6a77('0x2f')]['id']),'tags':_0x512218||[]});return{'id':Number(_0x5e8169[_0x6a77('0x2f')]['id']),'tags':_0x512218||[]};});}})[_0x6a77('0x1f')](respondWithResult(_0xb91ddd,null))[_0x6a77('0x2d')](handleError(_0xb91ddd,null));};exports[_0x6a77('0x54')]=function(_0x3ac1c5,_0x37bacb){return db[_0x6a77('0x23')]['find']({'where':{'id':_0x3ac1c5[_0x6a77('0x2f')]['id']}})[_0x6a77('0x1f')](handleEntityNotFound(_0x37bacb,null))[_0x6a77('0x1f')](function(_0x30d4dc){if(_0x30d4dc){return _0x30d4dc[_0x6a77('0x54')](_0x3ac1c5[_0x6a77('0x2b')][_0x6a77('0x3f')]);}})[_0x6a77('0x1f')](respondWithStatusCode(_0x37bacb,null))[_0x6a77('0x2d')](handleError(_0x37bacb,null));};exports[_0x6a77('0x55')]=function(_0x2c212f,_0x459fe3){var _0x43a155=moment()[_0x6a77('0x56')]()[_0x6a77('0x57')]();var _0x1131cc=path[_0x6a77('0x58')](config[_0x6a77('0x59')],'server',_0x6a77('0x5a'),'tmp');var _0x2b08c3=path[_0x6a77('0x58')](_0x1131cc,_0x43a155);var _0x31eb59=util['format'](_0x6a77('0x5b'),_0x2c212f[_0x6a77('0x2f')]['id'],_0x43a155);var _0x31b46c=path[_0x6a77('0x58')](_0x1131cc,_0x31eb59);var _0x35b69f=[];_0x35b69f[_0x6a77('0x5c')]({'model':db[_0x6a77('0x5d')],'as':_0x6a77('0x5d'),'attributes':['id',_0x6a77('0x5e')],'raw':!![]});_0x35b69f['push']({'model':db['CmContact'],'as':'Contact','attributes':['id','firstName','lastName'],'raw':!![]});var _0x4ac977=[{'model':db['SmsMessage'],'as':_0x6a77('0x5f'),'attributes':['id','body','createdAt','direction',_0x6a77('0x60'),_0x6a77('0x61')],'include':_0x35b69f}];_0x4ac977['push']({'model':db['SmsAccount'],'as':_0x6a77('0x62'),'attributes':['id',_0x6a77('0x21')]});_0x4ac977['push']({'model':db[_0x6a77('0x5d')],'as':_0x6a77('0x63'),'attributes':['id',_0x6a77('0x5e')]});return db[_0x6a77('0x23')][_0x6a77('0x38')]({'where':{'id':_0x2c212f[_0x6a77('0x2f')]['id']},'include':_0x4ac977})[_0x6a77('0x1f')](handleEntityNotFound(_0x459fe3,null))[_0x6a77('0x1f')](function(_0x6b997a){if(_0x6b997a){var _0x41c30f=_0x6b997a[_0x6a77('0x64')]({'plain':!![]});fs[_0x6a77('0x65')](_0x2b08c3);var _0x3bf435={'channel':_0x6a77('0x66'),'account':_0x41c30f[_0x6a77('0x62')]['name'],'agent':_0x41c30f[_0x6a77('0x63')]?_0x41c30f['Owner']['fullname']:'N.A.','createdAt':moment(_0x41c30f['createdAt'])[_0x6a77('0x4d')](_0x6a77('0x67'))[_0x6a77('0x57')](),'closedAt':_0x41c30f['closed']?moment(_0x41c30f[_0x6a77('0x68')])['format']('YYYY-MM-DD\x20HH:mm:ss')['toString']():'','disposition':_0x41c30f[_0x6a77('0x69')],'messages':_(_0x41c30f[_0x6a77('0x5f')])[_0x6a77('0x4a')]({'secret':![]})[_0x6a77('0x6a')](function(_0x58f75b){return{'date':moment(_0x58f75b[_0x6a77('0x6b')])[_0x6a77('0x4d')](_0x6a77('0x67'))['toString'](),'sender':_0x58f75b[_0x6a77('0x6c')]===_0x6a77('0x6d')?_0x58f75b['User']?_0x58f75b[_0x6a77('0x5d')][_0x6a77('0x5e')]:'System':_0x58f75b[_0x6a77('0x6e')][_0x6a77('0x6f')]+(_0x58f75b[_0x6a77('0x6e')]['lastName']?'\x20'+_0x58f75b[_0x6a77('0x6e')][_0x6a77('0x70')]:''),'body':_0x58f75b[_0x6a77('0x3a')],'direction':_0x58f75b[_0x6a77('0x6c')]==='out'?'A':'C','secret':_0x58f75b[_0x6a77('0x60')],'read':_0x58f75b[_0x6a77('0x61')]};})[_0x6a77('0x71')]()};return ejs[_0x6a77('0x72')](path[_0x6a77('0x58')](config['root'],'server','views',_0x6a77('0x73')),{'interaction':_0x3bf435})[_0x6a77('0x1f')](function(_0xa4a750){var _0x13e346=path[_0x6a77('0x58')](_0x2b08c3,'transcript-'+_0x41c30f['id']+'-'+_0x43a155+'.pdf');var _0x5ae5c2={'path':_0x13e346,'channel':_0x6a77('0x66'),'interactionId':_0x41c30f['id']};return pdf['createPdfFromHTML'](_0xa4a750,_0x5ae5c2);})[_0x6a77('0x1f')](function(){return new BPromise(function(_0x309b62,_0x1a17ba){zipdir(_0x2b08c3,{'saveTo':_0x31b46c},function(_0x3402a8,_0x3a8ec8){if(_0x3402a8)return _0x1a17ba(_0x3402a8);return _0x309b62(_0x3a8ec8);});})['then'](function(){return new BPromise(function(_0x2e3f38,_0xe29e44){rimraf(_0x2b08c3,function(_0x17ac48){if(_0x17ac48)_0xe29e44(_0x17ac48);return _0x2e3f38();});});})[_0x6a77('0x1f')](function(){return _0x459fe3[_0x6a77('0x55')](_0x31b46c,_0x31eb59,function(_0x445548){if(_0x445548){console['log'](_0x6a77('0x74'),_0x445548);}else{fs[_0x6a77('0x75')](_0x31b46c);}});});});}else{return _0x459fe3[_0x6a77('0x14')](0xc8);}})[_0x6a77('0x2d')](handleError(_0x459fe3,null));};
\ No newline at end of file