Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / smsInteraction / smsInteraction.controller.js
index 380b122..1bd0e4f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x4e83=['having','`\x20>\x200','operator','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','buildExpression','text','start','User','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','body','keys','some','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','isNumeric','i.phone\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','isEmpty','t.id\x20IN\x20?','SmsAccountId','i.SmsAccountId\x20IS\x20NOT\x20NULL','user','role','getSmsAccounts','i.SmsAccountId\x20IS\x20NULL','i.SmsAccountId\x20IN\x20?','agent','sequelize','toString','keyBy','merge','a.key','a.mandatoryDisposition','Account.mandatoryDisposition','CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','c.firstName','Contact.firstName','c.lastName','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','Contact.fax','Owner.fullname','o.internal','Owner.internal','ui.SmsInteractionId\x20IN\x20?','SmsInteractionId','all','rows','show','params','includeAll','include','create','describe','SmsMessage','addMessage','omit','ids','getMessages','findOne','hasOwnProperty','format','YYYY-MM-DD\x20HH:mm:ss','addTags','setTags','spread','Tag','findAll','color','emit','smsInteractionTags:save','removeTags','download','unix','join','root','server','files','tmp','transcript-%d-%s.zip','CmContact','firstName','lastName','secret','SmsAccount','Account','Owner','get','mkdirSync','Sms','N.A.','closedAt','disposition','Messages','out','System','Contact','direction','renderFile','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','err','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../components/export/pdf','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','redis','defaults','localhost','register','sendStatus','end','status','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','destroy','then','error','stack','name','send','map','fullname','TagIds','split','forEach','Tags','push','catch','talking','answered','unmanaged','total','closed','waiting','UserId','index','SmsInteraction','rawAttributes','type','key','model','query','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','select','field','from','u.fullname','ui.SmsInteractionId','user_has_sms_interactions','left_join','u.id\x20=\x20ui.UserId','sms_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','sms_accounts','a.id\x20=\x20i.SmsAccountId','sms_messages','it.SmsInteractionId\x20=\x20i.id','expr','search','parseSearch','conditions','unreadMessages','value'];(function(_0x10c47f,_0x1bc4fc){var _0x3b2b11=function(_0x2c41a8){while(--_0x2c41a8){_0x10c47f['push'](_0x10c47f['shift']());}};_0x3b2b11(++_0x1bc4fc);}(_0x4e83,0x88));var _0x34e8=function(_0x320c90,_0x515e0a){_0x320c90=_0x320c90-0x0;var _0x4b8824=_0x4e83[_0x320c90];return _0x4b8824;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x34e8('0x0'));var zipdir=require(_0x34e8('0x1'));var jsonpatch=require(_0x34e8('0x2'));var rp=require(_0x34e8('0x3'));var moment=require('moment');var BPromise=require(_0x34e8('0x4'));var Mustache=require(_0x34e8('0x5'));var util=require(_0x34e8('0x6'));var path=require(_0x34e8('0x7'));var sox=require(_0x34e8('0x8'));var csv=require(_0x34e8('0x9'));var ejs=require(_0x34e8('0xa'));var fs=require('fs');var fs_extra=require(_0x34e8('0xb'));var _=require(_0x34e8('0xc'));var squel=require(_0x34e8('0xd'));var crypto=require(_0x34e8('0xe'));var jsforce=require(_0x34e8('0xf'));var deskjs=require(_0x34e8('0x10'));var toCsv=require('to-csv');var querystring=require(_0x34e8('0x11'));var Papa=require(_0x34e8('0x12'));var Redis=require(_0x34e8('0x13'));var authService=require('../../components/auth/service');var qs=require(_0x34e8('0x14'));var as=require(_0x34e8('0x15'));var pdf=require(_0x34e8('0x16'));var hardwareService=require(_0x34e8('0x17'));var logger=require(_0x34e8('0x18'))('api');var utils=require(_0x34e8('0x19'));var config=require('../../config/environment');var licenseUtil=require(_0x34e8('0x1a'));var db=require(_0x34e8('0x1b'))['db'];config[_0x34e8('0x1c')]=_[_0x34e8('0x1d')](config[_0x34e8('0x1c')],{'host':_0x34e8('0x1e'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x34e8('0x1c')]));require('./smsInteraction.socket')[_0x34e8('0x1f')](socket);function respondWithStatusCode(_0x544e36,_0x398621){_0x398621=_0x398621||0xcc;return function(_0x217e81){if(_0x217e81){return _0x544e36[_0x34e8('0x20')](_0x398621);}return _0x544e36['status'](_0x398621)[_0x34e8('0x21')]();};}function respondWithResult(_0x5628d2,_0x423e12){_0x423e12=_0x423e12||0xc8;return function(_0xed8219){if(_0xed8219){return _0x5628d2[_0x34e8('0x22')](_0x423e12)['json'](_0xed8219);}};}function respondWithFilteredResult(_0x8e15d2,_0x1a2fa7){return function(_0x3b83bb){if(_0x3b83bb){var _0x38edda=typeof _0x1a2fa7[_0x34e8('0x23')]===_0x34e8('0x24')&&typeof _0x1a2fa7[_0x34e8('0x25')]===_0x34e8('0x24');var _0xafe909=_0x3b83bb[_0x34e8('0x26')];var _0x498599=_0x38edda?0x0:_0x1a2fa7[_0x34e8('0x23')];var _0x7462d9=_0x38edda?_0x3b83bb[_0x34e8('0x26')]:_0x1a2fa7[_0x34e8('0x23')]+_0x1a2fa7[_0x34e8('0x25')];var _0x40e631;if(_0x7462d9>=_0xafe909){_0x7462d9=_0xafe909;_0x40e631=0xc8;}else{_0x40e631=0xce;}_0x8e15d2[_0x34e8('0x22')](_0x40e631);return _0x8e15d2[_0x34e8('0x27')](_0x34e8('0x28'),_0x498599+'-'+_0x7462d9+'/'+_0xafe909)[_0x34e8('0x29')](_0x3b83bb);}return null;};}function patchUpdates(_0xe68802){return function(_0x181d2e){try{jsonpatch[_0x34e8('0x2a')](_0x181d2e,_0xe68802,!![]);}catch(_0x2e3038){return BPromise[_0x34e8('0x2b')](_0x2e3038);}return _0x181d2e[_0x34e8('0x2c')]();};}function saveUpdates(_0x3df27a,_0x210d13){return function(_0x3ad08e){if(_0x3ad08e){return _0x3ad08e[_0x34e8('0x2d')](_0x3df27a)['then'](function(_0x4cf03e){return _0x4cf03e;});}return null;};}function removeEntity(_0x4a2caa,_0x3c8cb3){return function(_0x5e4809){if(_0x5e4809){return _0x5e4809[_0x34e8('0x2e')]()[_0x34e8('0x2f')](function(){_0x4a2caa['status'](0xcc)[_0x34e8('0x21')]();});}};}function handleEntityNotFound(_0x4cc3e5,_0x1440d0){return function(_0x57a1f6){if(!_0x57a1f6){_0x4cc3e5[_0x34e8('0x20')](0x194);}return _0x57a1f6;};}function handleError(_0x47fb2d,_0x3d6123){_0x3d6123=_0x3d6123||0x1f4;return function(_0x4087dc){logger[_0x34e8('0x30')](_0x4087dc[_0x34e8('0x31')]);if(_0x4087dc['name']){delete _0x4087dc[_0x34e8('0x32')];}_0x47fb2d[_0x34e8('0x22')](_0x3d6123)[_0x34e8('0x33')](_0x4087dc);};}function getInteractionUsers(_0x52b2ba,_0x14b416){return new BPromise(function(_0x5d60f0,_0x301c44){try{if(_0x14b416[_0x52b2ba['id']]){_0x52b2ba['Users']=_[_0x34e8('0x34')](_0x14b416[_0x52b2ba['id']],function(_0x396ac3){return{'id':_0x396ac3['id'],'fullname':_0x396ac3[_0x34e8('0x35')]};});}}catch(_0x3d0ec2){_0x301c44(_0x3d0ec2);}_0x5d60f0(_0x52b2ba);});}function getInteractionTags(_0xf2ba18,_0x210c99){return new BPromise(function(_0xe3ac21,_0x4f13da){try{if(_0xf2ba18[_0x34e8('0x36')]){_0xf2ba18['Tags']=[];_0xf2ba18[_0x34e8('0x36')][_0x34e8('0x37')](',')[_0x34e8('0x38')](function(_0x37d2f3){_0xf2ba18[_0x34e8('0x39')][_0x34e8('0x3a')](_0x210c99[_0x37d2f3]);});}delete _0xf2ba18[_0x34e8('0x36')];}catch(_0x57299d){_0x4f13da(_0x57299d);}_0xe3ac21(_0xf2ba18);});}function updateSmsInteraction(_0x3e74d5,_0x3d41eb,_0x1a26e3){return new BPromise(function(_0x35e21c,_0x3a600c){return getInteractionUsers(_0x3e74d5,_0x1a26e3)[_0x34e8('0x2f')](function(_0x22d507){return getInteractionTags(_0x22d507,_0x3d41eb);})[_0x34e8('0x2f')](function(_0x458587){return getStateInteraction(_0x458587);})[_0x34e8('0x2f')](function(_0x370d43){_0x35e21c(_0x370d43);})[_0x34e8('0x3b')](function(_0x36bd94){_0x3a600c(_0x36bd94);});});}function getStateInteraction(_0x5b81ed){return new BPromise(function(_0xbf00d6){_0x5b81ed['waiting']=0x0;_0x5b81ed[_0x34e8('0x3c')]=0x0;_0x5b81ed[_0x34e8('0x3d')]=0x0;_0x5b81ed[_0x34e8('0x3e')]=0x0;_0x5b81ed[_0x34e8('0x3f')]=0x0;if(!_0x5b81ed[_0x34e8('0x40')]&&!_0x5b81ed['UserId']){_0x5b81ed[_0x34e8('0x41')]+=0x1;}if(!_0x5b81ed[_0x34e8('0x40')]&&_0x5b81ed[_0x34e8('0x42')]){_0x5b81ed[_0x34e8('0x3c')]+=0x1;if(_0x5b81ed[_0x34e8('0x41')]){_0x5b81ed[_0x34e8('0x41')]-=0x1;}}if(_0x5b81ed['closed']&&_0x5b81ed[_0x34e8('0x42')]){_0x5b81ed[_0x34e8('0x3d')]+=0x1;if(_0x5b81ed[_0x34e8('0x3c')]){_0x5b81ed[_0x34e8('0x3c')]-=0x1;}}if(_0x5b81ed['closed']&&!_0x5b81ed[_0x34e8('0x42')]){_0x5b81ed['unmanaged']+=0x1;if(_0x5b81ed[_0x34e8('0x41')]){_0x5b81ed[_0x34e8('0x41')]-=0x1;}}_0x5b81ed[_0x34e8('0x3f')]+=0x1;_0xbf00d6(_0x5b81ed);});}exports[_0x34e8('0x43')]=function(_0x14ffe0,_0x4d14a6){var _0x2747f4={},_0x5ee752={},_0x1ac0e8={'count':0x0,'rows':[]};var _0x31d911=_[_0x34e8('0x34')](db[_0x34e8('0x44')][_0x34e8('0x45')],function(_0x24fddd){return{'name':_0x24fddd['fieldName'],'type':_0x24fddd[_0x34e8('0x46')][_0x34e8('0x47')]};});_0x5ee752[_0x34e8('0x48')]=_['map'](_0x31d911,_0x34e8('0x32'));_0x5ee752[_0x34e8('0x49')]=_['keys'](_0x14ffe0[_0x34e8('0x49')]);_0x5ee752[_0x34e8('0x4a')]=_[_0x34e8('0x4b')](_0x5ee752[_0x34e8('0x48')],_0x5ee752['query']);_0x2747f4[_0x34e8('0x4c')]=_[_0x34e8('0x4b')](_0x5ee752[_0x34e8('0x48')],qs[_0x34e8('0x4d')](_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x4d')]));_0x2747f4[_0x34e8('0x4c')]=_0x2747f4[_0x34e8('0x4c')][_0x34e8('0x4e')]?_0x2747f4[_0x34e8('0x4c')]:_0x5ee752[_0x34e8('0x48')];if(!_0x14ffe0[_0x34e8('0x49')]['hasOwnProperty'](_0x34e8('0x4f'))){_0x2747f4['limit']=qs[_0x34e8('0x25')](_0x14ffe0['query']['limit']);_0x2747f4['offset']=qs['offset'](_0x14ffe0['query']['offset']);}_0x2747f4[_0x34e8('0x50')]=qs['sort'](_0x14ffe0['query'][_0x34e8('0x51')]);_0x2747f4[_0x34e8('0x52')]=qs[_0x34e8('0x4a')](_[_0x34e8('0x53')](_0x14ffe0[_0x34e8('0x49')],_0x5ee752[_0x34e8('0x4a')]),_0x31d911);var _0x595f01=[];var _0xfb37b3=squel[_0x34e8('0x54')]()[_0x34e8('0x55')]('id')['field']('name')[_0x34e8('0x55')]('color')[_0x34e8('0x56')]('tools_tags');var _0x611df8=squel[_0x34e8('0x54')]()[_0x34e8('0x55')]('u.id')[_0x34e8('0x55')](_0x34e8('0x57'))['field'](_0x34e8('0x58'))[_0x34e8('0x56')](_0x34e8('0x59'),'ui')[_0x34e8('0x5a')]('users','u',_0x34e8('0x5b'));var _0x1b244c=squel[_0x34e8('0x54')]()['from'](_0x34e8('0x5c'),'i')['left_join'](_0x34e8('0x5d'),'c',_0x34e8('0x5e'))[_0x34e8('0x5a')]('users','o',_0x34e8('0x5f'))[_0x34e8('0x5a')](_0x34e8('0x60'),'a',_0x34e8('0x61'))[_0x34e8('0x5a')](_0x34e8('0x62'),'me','me.SmsInteractionId\x20=\x20i.id')[_0x34e8('0x5a')]('sms_interaction_has_tags','it',_0x34e8('0x63'))['left_join']('tools_tags','t','t.id\x20=\x20it.TagId');var _0x1e8496=squel[_0x34e8('0x64')]();var _0x245145=[];var _0x3061c1=squel[_0x34e8('0x64')]();var _0x11fca6;if(_0x14ffe0['query'][_0x34e8('0x65')]){_0x11fca6=as[_0x34e8('0x66')](_0x14ffe0[_0x34e8('0x49')]['search']);var _0x2b970c=_0x11fca6['sqlOperator'];for(var _0x37b60d=0x0;_0x37b60d<_0x11fca6['conditions']['length'];_0x37b60d++){var _0x1b3762=_0x11fca6[_0x34e8('0x67')][_0x37b60d];var _0x4186d9='i';var _0x567c77=_['find'](_0x31d911,[_0x34e8('0x32'),_0x1b3762['field']]);if(!_0x567c77){switch(_0x1b3762[_0x34e8('0x55')]){case _0x34e8('0x68'):if(_0x1b3762[_0x34e8('0x69')]==0x1){_0x1b244c[_0x34e8('0x6a')]('`'+_0x1b3762[_0x34e8('0x55')]+'`\x20=\x200');}else{_0x1b244c['having']('`'+_0x1b3762[_0x34e8('0x55')]+_0x34e8('0x6b'));}break;case'Contact':if(_0x1b3762[_0x34e8('0x6c')]==='$substring'){if(_0x1b3762[_0x34e8('0x69')][_0x34e8('0x37')]('\x20')[_0x34e8('0x4e')]>0x1){_0x1e8496[_0x2b970c](_0x34e8('0x6d'),qs['getFullTextValue'](_0x1b3762[_0x34e8('0x69')]),null);}else{var _0x56fb47='%'+_0x1b3762['value']+'%';_0x1e8496[_0x2b970c](_0x34e8('0x6e'),_0x56fb47,_0x56fb47,_0x56fb47);}}else{_0x567c77=_[_0x34e8('0x6f')](_0x31d911,[_0x34e8('0x32'),_0x34e8('0x70')]);_0x1b3762[_0x34e8('0x55')]=_0x34e8('0x70');_0x21898a=as[_0x34e8('0x71')](_0x4186d9,_0x567c77[_0x34e8('0x46')],_0x1b3762);_0x1e8496[_0x2b970c](_0x21898a[_0x34e8('0x72')],_0x21898a['value'][_0x34e8('0x73')],_0x21898a[_0x34e8('0x69')][_0x34e8('0x21')]);}break;case'Tag':var _0x293cfa=_0x1b3762[_0x34e8('0x69')][_0x34e8('0x37')](',')['map'](function(_0x35cf0a){return Number(_0x35cf0a);});_0x293cfa[_0x34e8('0x38')](function(_0x242acb){_0x3061c1['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x242acb+',%');});_0x245145=_['union'](_0x245145,_0x293cfa);break;case _0x34e8('0x74'):if(_0x1b3762[_0x34e8('0x6c')]===_0x34e8('0x75')){_0x1e8496[_0x2b970c](_0x34e8('0x76'),'%'+_0x1b3762['value']+'%',null);}else{_0x567c77=_[_0x34e8('0x6f')](_0x31d911,[_0x34e8('0x32'),'UserId']);_0x1b3762['field']=_0x34e8('0x42');_0x21898a=as[_0x34e8('0x71')](_0x4186d9,_0x567c77[_0x34e8('0x46')],_0x1b3762);_0x1e8496[_0x2b970c](_0x21898a[_0x34e8('0x72')],_0x21898a[_0x34e8('0x69')][_0x34e8('0x73')],_0x21898a[_0x34e8('0x69')][_0x34e8('0x21')]);}break;case _0x34e8('0x77'):_0x21898a=as[_0x34e8('0x71')]('me',null,_0x1b3762);_0x1e8496[_0x2b970c](_0x21898a[_0x34e8('0x72')],_0x21898a[_0x34e8('0x69')][_0x34e8('0x73')],_0x21898a[_0x34e8('0x69')][_0x34e8('0x21')]);break;}}else{var _0x21898a=as[_0x34e8('0x71')](_0x4186d9,_0x567c77['type'],_0x1b3762);_0x1e8496[_0x2b970c](_0x21898a['text'],_0x21898a[_0x34e8('0x69')][_0x34e8('0x73')],_0x21898a[_0x34e8('0x69')][_0x34e8('0x21')]);}}}else{var _0x4493f0=_(_0x14ffe0['query'])[_0x34e8('0x78')]()[_0x34e8('0x34')](function(_0x3b5dc3){return _[_0x34e8('0x79')](_0x31d911,[_0x34e8('0x32'),_0x3b5dc3])?_0x3b5dc3:undefined;})['compact']()[_0x34e8('0x69')]();if(!_['isEmpty'](_0x4493f0)){_0x4493f0['forEach'](function(_0x185dbb){if(_0x185dbb==='SmsAccountId'){_0x1b244c[_0x34e8('0x52')]('i.SmsAccountId\x20IN\x20?',[][_0x34e8('0x7a')](_0x14ffe0[_0x34e8('0x49')][_0x185dbb]));}else if(_0x185dbb===_0x34e8('0x7b')){var _0x3a7d65=JSON[_0x34e8('0x7c')](_0x14ffe0[_0x34e8('0x49')][_0x185dbb])[_0x34e8('0x7d')];var _0xca869=JSON[_0x34e8('0x7c')](_0x14ffe0[_0x34e8('0x49')][_0x185dbb])[_0x34e8('0x7e')];_0x1b244c[_0x34e8('0x52')](_0x34e8('0x7f'),_0x3a7d65,_0xca869);}else{if(_0x14ffe0[_0x34e8('0x49')][_0x185dbb]===_0x34e8('0x80')){_0x1b244c['where']('i.'+_0x185dbb+_0x34e8('0x81'));}else{_0x1b244c[_0x34e8('0x52')]('i.'+_0x185dbb+_0x34e8('0x82'),_0x14ffe0[_0x34e8('0x49')][_0x185dbb]);}}});}if(_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x83')]){if(_0x14ffe0['query']['read']==0x1){_0x1b244c[_0x34e8('0x6a')](_0x34e8('0x84'));}else{_0x1b244c['having'](_0x34e8('0x85'));}}if(_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x86')]){_0x245145=_[_0x34e8('0x87')](_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x86')])?_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x86')]:new Array(_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x86')]);_0x245145['forEach'](function(_0x25607f){_0x3061c1['or'](_0x34e8('0x88'),'%,'+_0x25607f+',%');});}if(_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x89')]){var _0x4fff0c=_0x14ffe0[_0x34e8('0x49')]['filter']['replace']('\x5c','\x5c\x5c')[_0x34e8('0x8a')](/'/g,'\x27\x27');if(qs[_0x34e8('0x8b')](_0x4fff0c)){_0x1e8496['or']('i.id\x20LIKE\x20?',_0x4fff0c+'%')['or'](_0x34e8('0x8c'),_0x4fff0c+'%');}else{_0x1e8496['or'](_0x34e8('0x8d'),qs[_0x34e8('0x8e')](_0x4fff0c))['or'](_0x34e8('0x8f'),_0x4fff0c+'%');}}}_0x1b244c[_0x34e8('0x52')](_0x1e8496);_0x1b244c['group'](_0x34e8('0x90'));var _0xc171fa={'type':db[_0x34e8('0x91')][_0x34e8('0x92')][_0x34e8('0x93')],'raw':!![]};var _0xf2ad51=_0x1b244c[_0x34e8('0x94')]();_0xf2ad51[_0x34e8('0x55')](_0x34e8('0x90'));_0xf2ad51['field'](_0x34e8('0x95'),_0x34e8('0x68'));if(_0x2747f4['order']){_0x2747f4[_0x34e8('0x50')]['forEach'](function(_0x1b4ed6){var _0x3724ce=_0x1b4ed6[0x0]===_0x34e8('0x96')?_0x1b4ed6[0x0]:'i.'+_0x1b4ed6[0x0];_0x1b244c[_0x34e8('0x50')](_0x3724ce,_0x1b4ed6[0x1]===_0x34e8('0x97')?![]:!![]);});}if(!_[_0x34e8('0x98')](_0x245145)){_0x1b244c[_0x34e8('0x6a')](_0x3061c1);_0xf2ad51['where'](_0x34e8('0x99'),_0x245145);}BPromise['resolve']()[_0x34e8('0x2f')](function(){if(!_0x11fca6){if(_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x9a')])return;_0xf2ad51[_0x34e8('0x52')](_0x34e8('0x9b'));_0x1b244c[_0x34e8('0x52')]('i.SmsAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x14ffe0[_0x34e8('0x9c')][_0x34e8('0x9d')]!=='agent')return;return _0x14ffe0[_0x34e8('0x9c')][_0x34e8('0x9e')]({'attributes':['id'],'raw':!![]})[_0x34e8('0x2f')](function(_0x430942){if(_[_0x34e8('0x98')](_0x430942)){_0xf2ad51[_0x34e8('0x52')](_0x34e8('0x9f'));_0x1b244c[_0x34e8('0x52')]('i.SmsAccountId\x20IS\x20NULL');}else{_0xf2ad51[_0x34e8('0x52')]('i.SmsAccountId\x20IN\x20?',_[_0x34e8('0x34')](_0x430942,'id'));_0x1b244c['where'](_0x34e8('0xa0'),_['map'](_0x430942,'id'));}});})[_0x34e8('0x2f')](function(){if(_0x14ffe0[_0x34e8('0x9c')][_0x34e8('0x9d')]===_0x34e8('0xa1')&&!_0x11fca6&&!_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x9a')])return[];return db[_0x34e8('0xa2')]['query'](_0xf2ad51[_0x34e8('0xa3')](),_0xc171fa);})[_0x34e8('0x2f')](function(_0x1ecf94){_0x1ac0e8[_0x34e8('0x26')]=_0x1ecf94['length'];if(_0x1ac0e8[_0x34e8('0x26')]===0x0)return[];return db['sequelize'][_0x34e8('0x49')](_0xfb37b3[_0x34e8('0xa3')](),_0xc171fa)[_0x34e8('0x2f')](function(_0xbc610a){_0x595f01=_[_0x34e8('0xa4')](_0xbc610a,'id');_0xc171fa=_[_0x34e8('0xa5')](_0xc171fa,{'model':db[_0x34e8('0x44')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x14ffe0[_0x34e8('0x49')][_0x34e8('0x4d')]){_0x2747f4['attributes']['forEach'](function(_0x14ebc2){_0x1b244c[_0x34e8('0x55')]('i.'+_0x14ebc2);});}else{_0x1b244c[_0x34e8('0x55')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages');_0x1b244c['field'](_0x34e8('0xa6'),'Account.key');_0x1b244c[_0x34e8('0x55')](_0x34e8('0xa7'),_0x34e8('0xa8'));_0x1b244c['field'](_0x34e8('0xa9'),_0x34e8('0x96'));_0x1b244c['field']('i.*');_0x1b244c['field'](_0x34e8('0xaa'),_0x34e8('0xab'));_0x1b244c[_0x34e8('0x55')](_0x34e8('0xac'),'Contact.lastName');_0x1b244c[_0x34e8('0x55')]('c.email',_0x34e8('0xad'));_0x1b244c['field'](_0x34e8('0xae'),_0x34e8('0xaf'));_0x1b244c[_0x34e8('0x55')](_0x34e8('0xb0'),_0x34e8('0xb1'));_0x1b244c[_0x34e8('0x55')]('c.fax',_0x34e8('0xb2'));_0x1b244c[_0x34e8('0x55')]('o.fullname',_0x34e8('0xb3'));_0x1b244c[_0x34e8('0x55')](_0x34e8('0xb4'),_0x34e8('0xb5'));_0x1b244c[_0x34e8('0x55')]('GROUP_CONCAT(DISTINCT\x20t.id)','TagIds');}if(_0x2747f4[_0x34e8('0x25')])_0x1b244c[_0x34e8('0x25')](_0x2747f4[_0x34e8('0x25')]);if(_0x2747f4[_0x34e8('0x23')])_0x1b244c['offset'](_0x2747f4[_0x34e8('0x23')]);return db['sequelize'][_0x34e8('0x49')](_0x1b244c[_0x34e8('0xa3')](),_0xc171fa);})[_0x34e8('0x2f')](function(_0x2d0eda){if(_0x2d0eda['length']>0x0)_0x611df8[_0x34e8('0x52')](_0x34e8('0xb6'),_[_0x34e8('0x34')](_0x2d0eda,'id'));return db['sequelize'][_0x34e8('0x49')](_0x611df8['toString'](),_0xc171fa)[_0x34e8('0x2f')](function(_0x516324){var _0x34b983=_['groupBy'](_0x516324,_0x34e8('0xb7'));var _0x2580e4=[];_0x2d0eda[_0x34e8('0x38')](function(_0xc2349c){_0x2580e4[_0x34e8('0x3a')](updateSmsInteraction(_0xc2349c,_0x595f01,_0x34b983));});return BPromise[_0x34e8('0xb8')](_0x2580e4);});});})[_0x34e8('0x2f')](function(_0x4b8ec1){_0x1ac0e8[_0x34e8('0xb9')]=_0x4b8ec1;return _0x1ac0e8;})[_0x34e8('0x2f')](respondWithFilteredResult(_0x4d14a6,_0x2747f4))[_0x34e8('0x3b')](handleError(_0x4d14a6,null));};exports[_0x34e8('0xba')]=function(_0x3dd8a1,_0x151de2){var _0x3b6352={'raw':![],'where':{'id':_0x3dd8a1[_0x34e8('0xbb')]['id']}},_0x1cd418={};_0x1cd418[_0x34e8('0x48')]=_[_0x34e8('0x78')](db['SmsInteraction'][_0x34e8('0x45')]);_0x1cd418['query']=_[_0x34e8('0x78')](_0x3dd8a1[_0x34e8('0x49')]);_0x1cd418['filters']=_[_0x34e8('0x4b')](_0x1cd418[_0x34e8('0x48')],_0x1cd418[_0x34e8('0x49')]);_0x3b6352[_0x34e8('0x4c')]=_[_0x34e8('0x4b')](_0x1cd418[_0x34e8('0x48')],qs['fields'](_0x3dd8a1[_0x34e8('0x49')][_0x34e8('0x4d')]));_0x3b6352[_0x34e8('0x4c')]=_0x3b6352[_0x34e8('0x4c')]['length']?_0x3b6352[_0x34e8('0x4c')]:_0x1cd418[_0x34e8('0x48')];if(_0x3dd8a1[_0x34e8('0x49')][_0x34e8('0xbc')]){_0x3b6352[_0x34e8('0xbd')]=[{'all':!![]}];}_0x3b6352=_[_0x34e8('0xa5')]({},_0x3b6352,_0x3dd8a1['options']);return db[_0x34e8('0x44')]['find'](_0x3b6352)[_0x34e8('0x2f')](handleEntityNotFound(_0x151de2,null))[_0x34e8('0x2f')](respondWithResult(_0x151de2,null))[_0x34e8('0x3b')](handleError(_0x151de2,null));};exports[_0x34e8('0xbe')]=function(_0x399827,_0x5b7ab1){return db[_0x34e8('0x44')][_0x34e8('0xbe')](_0x399827[_0x34e8('0x77')],{})[_0x34e8('0x2f')](respondWithResult(_0x5b7ab1,0xc9))[_0x34e8('0x3b')](handleError(_0x5b7ab1,null));};exports[_0x34e8('0x2d')]=function(_0xda1871,_0xff09b5){if(_0xda1871[_0x34e8('0x77')]['id']){delete _0xda1871[_0x34e8('0x77')]['id'];}return db[_0x34e8('0x44')]['find']({'where':{'id':_0xda1871[_0x34e8('0xbb')]['id']}})['then'](handleEntityNotFound(_0xff09b5,null))[_0x34e8('0x2f')](saveUpdates(_0xda1871['body'],null))[_0x34e8('0x2f')](respondWithResult(_0xff09b5,null))['catch'](handleError(_0xff09b5,null));};exports[_0x34e8('0x2e')]=function(_0x865ead,_0x142952){return db[_0x34e8('0x44')][_0x34e8('0x6f')]({'where':{'id':_0x865ead['params']['id']}})[_0x34e8('0x2f')](handleEntityNotFound(_0x142952,null))[_0x34e8('0x2f')](removeEntity(_0x142952,null))[_0x34e8('0x3b')](handleError(_0x142952,null));};exports[_0x34e8('0xbf')]=function(_0x3a6f81,_0x3d6bad){return db[_0x34e8('0x44')][_0x34e8('0xbf')]()[_0x34e8('0x2f')](respondWithResult(_0x3d6bad,null))[_0x34e8('0x3b')](handleError(_0x3d6bad,null));};exports['addMessage']=function(_0x40a7f1,_0x5c2d2c,_0x4b0218){return db[_0x34e8('0xc0')][_0x34e8('0x6f')]({'where':{'id':_0x40a7f1[_0x34e8('0xbb')]['id']}})[_0x34e8('0x2f')](handleEntityNotFound(_0x5c2d2c,null))[_0x34e8('0x2f')](function(_0x1a93cf){if(_0x1a93cf){return _0x1a93cf[_0x34e8('0xc1')](_0x40a7f1[_0x34e8('0x77')]['ids'],_[_0x34e8('0xc2')](_0x40a7f1[_0x34e8('0x77')],[_0x34e8('0xc3'),'id'])||{});}})[_0x34e8('0x2f')](respondWithResult(_0x5c2d2c,null))[_0x34e8('0x3b')](handleError(_0x5c2d2c,null));};exports[_0x34e8('0xc4')]=function(_0x2b8795,_0x5abe28,_0x1b316f){var _0x40cfe3={'raw':![],'where':{}};var _0x33e887={};var _0x43e3f5={'count':0x0,'rows':[]};return db['SmsInteraction'][_0x34e8('0xc5')]({'where':{'id':_0x2b8795['params']['id']}})['then'](handleEntityNotFound(_0x5abe28,null))[_0x34e8('0x2f')](function(_0x346e01){if(_0x346e01){_0x33e887[_0x34e8('0x48')]=_[_0x34e8('0x78')](db[_0x34e8('0xc0')][_0x34e8('0x45')]);_0x33e887[_0x34e8('0x49')]=_[_0x34e8('0x78')](_0x2b8795[_0x34e8('0x49')]);_0x33e887[_0x34e8('0x4a')]=_['intersection'](_0x33e887['model'],_0x33e887[_0x34e8('0x49')]);_0x40cfe3['attributes']=_[_0x34e8('0x4b')](_0x33e887[_0x34e8('0x48')],qs[_0x34e8('0x4d')](_0x2b8795[_0x34e8('0x49')][_0x34e8('0x4d')]));_0x40cfe3[_0x34e8('0x4c')]=_0x40cfe3[_0x34e8('0x4c')]['length']?_0x40cfe3[_0x34e8('0x4c')]:_0x33e887['model'];if(!_0x2b8795[_0x34e8('0x49')][_0x34e8('0xc6')](_0x34e8('0x4f'))){_0x40cfe3[_0x34e8('0x25')]=qs[_0x34e8('0x25')](_0x2b8795[_0x34e8('0x49')][_0x34e8('0x25')]);_0x40cfe3[_0x34e8('0x23')]=qs[_0x34e8('0x23')](_0x2b8795['query'][_0x34e8('0x23')]);}_0x40cfe3['order']=qs[_0x34e8('0x51')](_0x2b8795[_0x34e8('0x49')]['sort']);_0x40cfe3['where']=qs['filters'](_[_0x34e8('0x53')](_0x2b8795[_0x34e8('0x49')],_0x33e887[_0x34e8('0x4a')]));_0x40cfe3[_0x34e8('0x52')][_0x34e8('0xb7')]=_0x346e01['id'];if(_0x2b8795[_0x34e8('0x49')][_0x34e8('0x89')]){_0x40cfe3['where']=_['merge'](_0x40cfe3[_0x34e8('0x52')],{'$or':_[_0x34e8('0x34')](_0x40cfe3[_0x34e8('0x4c')],function(_0x15fd6d){var _0x1f8c54={};_0x1f8c54[_0x15fd6d]={'$like':'%'+_0x2b8795[_0x34e8('0x49')][_0x34e8('0x89')]+'%'};return _0x1f8c54;})});}if(_0x2b8795[_0x34e8('0x49')][_0x34e8('0x7d')]){var _0x1e8a74=_0x2b8795['query'][_0x34e8('0x7d')][_0x34e8('0x37')](',');var _0x4492c8={};_0x4492c8[_0x1e8a74[0x0]]={'$gte':moment(_0x1e8a74[0x1])[_0x34e8('0xc7')](_0x34e8('0xc8'))};_0x40cfe3['where']=_[_0x34e8('0xa5')](_0x40cfe3[_0x34e8('0x52')],_0x4492c8);}_0x40cfe3=_[_0x34e8('0xa5')]({},_0x40cfe3,_0x2b8795['options']);return db[_0x34e8('0xc0')]['count']({'where':_0x40cfe3[_0x34e8('0x52')]})[_0x34e8('0x2f')](function(_0x31ff72){_0x43e3f5[_0x34e8('0x26')]=_0x31ff72;if(_0x2b8795['query'][_0x34e8('0xbc')]){_0x40cfe3[_0x34e8('0xbd')]=[{'all':!![]}];}return db[_0x34e8('0xc0')]['findAll'](_0x40cfe3);})['then'](function(_0x32efc3){_0x43e3f5[_0x34e8('0xb9')]=_0x32efc3;return _0x43e3f5;});}})[_0x34e8('0x2f')](respondWithFilteredResult(_0x5abe28,_0x40cfe3))[_0x34e8('0x3b')](handleError(_0x5abe28,null));};exports[_0x34e8('0xc9')]=function(_0x1113cb,_0x43e504,_0x6e98b6){return db[_0x34e8('0x44')][_0x34e8('0x6f')]({'where':{'id':_0x1113cb[_0x34e8('0xbb')]['id']}})[_0x34e8('0x2f')](handleEntityNotFound(_0x43e504,null))['then'](function(_0x59c33c){if(_0x59c33c){return _0x59c33c[_0x34e8('0xca')](_0x1113cb[_0x34e8('0x77')][_0x34e8('0xc3')],_[_0x34e8('0xc2')](_0x1113cb[_0x34e8('0x77')],['ids','id'])||{})[_0x34e8('0xcb')](function(){return db[_0x34e8('0xcc')][_0x34e8('0xcd')]({'attributes':['id',_0x34e8('0x32'),_0x34e8('0xce')],'where':{'id':_0x1113cb[_0x34e8('0x77')][_0x34e8('0xc3')]}});})[_0x34e8('0x2f')](function(_0x3da6b3){socket[_0x34e8('0xcf')](_0x34e8('0xd0'),{'id':Number(_0x1113cb[_0x34e8('0xbb')]['id']),'tags':_0x3da6b3||[]});return{'id':Number(_0x1113cb['params']['id']),'tags':_0x3da6b3||[]};});}})[_0x34e8('0x2f')](respondWithResult(_0x43e504,null))[_0x34e8('0x3b')](handleError(_0x43e504,null));};exports[_0x34e8('0xd1')]=function(_0x34139f,_0x28b6f7,_0x5a4fdd){return db['SmsInteraction']['find']({'where':{'id':_0x34139f[_0x34e8('0xbb')]['id']}})[_0x34e8('0x2f')](handleEntityNotFound(_0x28b6f7,null))[_0x34e8('0x2f')](function(_0x1e18e2){if(_0x1e18e2){return _0x1e18e2[_0x34e8('0xd1')](_0x34139f[_0x34e8('0x49')][_0x34e8('0xc3')]);}})[_0x34e8('0x2f')](respondWithStatusCode(_0x28b6f7,null))['catch'](handleError(_0x28b6f7,null));};exports[_0x34e8('0xd2')]=function(_0x26e30c,_0x55b1b0){var _0xf3d300=moment()[_0x34e8('0xd3')]()[_0x34e8('0xa3')]();var _0x42cde2=path[_0x34e8('0xd4')](config[_0x34e8('0xd5')],_0x34e8('0xd6'),_0x34e8('0xd7'),_0x34e8('0xd8'));var _0xaff8a0=path[_0x34e8('0xd4')](config[_0x34e8('0xd5')],_0x34e8('0xd6'),_0x34e8('0xd7'),'attachments');var _0x259d86=path['join'](_0x42cde2,_0xf3d300);var _0x23cf24=util['format'](_0x34e8('0xd9'),_0x26e30c['params']['id'],_0xf3d300);var _0x22e9b8=path['join'](_0x42cde2,_0x23cf24);var _0x5281a8=[];_0x5281a8[_0x34e8('0x3a')]({'model':db[_0x34e8('0x74')],'as':_0x34e8('0x74'),'attributes':['id','fullname'],'raw':!![]});_0x5281a8[_0x34e8('0x3a')]({'model':db[_0x34e8('0xda')],'as':'Contact','attributes':['id',_0x34e8('0xdb'),_0x34e8('0xdc')],'raw':!![]});var _0x550112=[{'model':db['SmsMessage'],'as':'Messages','attributes':['id',_0x34e8('0x77'),_0x34e8('0x7b'),'direction',_0x34e8('0xdd'),_0x34e8('0x83')],'include':_0x5281a8}];_0x550112[_0x34e8('0x3a')]({'model':db[_0x34e8('0xde')],'as':_0x34e8('0xdf'),'attributes':['id',_0x34e8('0x32')]});_0x550112[_0x34e8('0x3a')]({'model':db[_0x34e8('0x74')],'as':_0x34e8('0xe0'),'attributes':['id',_0x34e8('0x35')]});return db[_0x34e8('0x44')]['find']({'where':{'id':_0x26e30c[_0x34e8('0xbb')]['id']},'include':_0x550112})[_0x34e8('0x2f')](handleEntityNotFound(_0x55b1b0,null))[_0x34e8('0x2f')](function(_0x3ffef6){if(_0x3ffef6){var _0x7a104a=_0x3ffef6[_0x34e8('0xe1')]({'plain':!![]});fs[_0x34e8('0xe2')](_0x259d86);var _0x44a109={'channel':_0x34e8('0xe3'),'account':_0x7a104a['Account'][_0x34e8('0x32')],'agent':_0x7a104a[_0x34e8('0xe0')]?_0x7a104a['Owner'][_0x34e8('0x35')]:_0x34e8('0xe4'),'createdAt':moment(_0x7a104a[_0x34e8('0x7b')])['format'](_0x34e8('0xc8'))[_0x34e8('0xa3')](),'closedAt':_0x7a104a[_0x34e8('0x40')]?moment(_0x7a104a[_0x34e8('0xe5')])[_0x34e8('0xc7')](_0x34e8('0xc8'))['toString']():'','disposition':_0x7a104a[_0x34e8('0xe6')],'messages':_(_0x7a104a[_0x34e8('0xe7')])[_0x34e8('0x89')]({'secret':![]})[_0x34e8('0x34')](function(_0x3d423c){return{'date':moment(_0x3d423c[_0x34e8('0x7b')])[_0x34e8('0xc7')](_0x34e8('0xc8'))[_0x34e8('0xa3')](),'sender':_0x3d423c['direction']===_0x34e8('0xe8')?_0x3d423c[_0x34e8('0x74')]?_0x3d423c[_0x34e8('0x74')][_0x34e8('0x35')]:_0x34e8('0xe9'):_0x3d423c[_0x34e8('0xea')][_0x34e8('0xdb')]+(_0x3d423c['Contact']['lastName']?'\x20'+_0x3d423c[_0x34e8('0xea')][_0x34e8('0xdc')]:''),'body':_0x3d423c[_0x34e8('0x77')],'direction':_0x3d423c[_0x34e8('0xeb')]===_0x34e8('0xe8')?'A':'C','secret':_0x3d423c[_0x34e8('0xdd')],'read':_0x3d423c[_0x34e8('0x83')]};})[_0x34e8('0x69')]()};return ejs[_0x34e8('0xec')](path[_0x34e8('0xd4')](config[_0x34e8('0xd5')],_0x34e8('0xd6'),'views',_0x34e8('0xed')),{'interaction':_0x44a109})[_0x34e8('0x2f')](function(_0x3c6b5a){var _0x381e6a=path[_0x34e8('0xd4')](_0x259d86,_0x34e8('0xee')+_0x7a104a['id']+'-'+_0xf3d300+_0x34e8('0xef'));var _0x3ff582={'path':_0x381e6a,'channel':_0x34e8('0xe3'),'interactionId':_0x7a104a['id']};return pdf[_0x34e8('0xf0')](_0x3c6b5a,_0x3ff582);})['then'](function(){return new BPromise(function(_0x3594f8,_0x3d95c3){zipdir(_0x259d86,{'saveTo':_0x22e9b8},function(_0x30fc26,_0x413173){if(_0x30fc26)return _0x3d95c3(_0x30fc26);return _0x3594f8(_0x413173);});})[_0x34e8('0x2f')](function(){return new BPromise(function(_0x18b5f7,_0x44ff9c){rimraf(_0x259d86,function(_0x342ac2){if(_0x342ac2)_0x44ff9c(_0x342ac2);return _0x18b5f7();});});})[_0x34e8('0x2f')](function(){return _0x55b1b0['download'](_0x22e9b8,_0x23cf24,function(_0x362de8){if(_0x362de8){console['log'](_0x34e8('0xf1'),_0x362de8);}else{fs['unlinkSync'](_0x22e9b8);}});});});}else{return _0x55b1b0[_0x34e8('0x20')](0xc8);}})[_0x34e8('0x3b')](handleError(_0x55b1b0,null));};
\ No newline at end of file
+var _0x21bc=['emit','smsInteractionTags:save','removeTags','download','unix','toString','join','root','server','files','format','transcript-%d-%s.zip','push','User','CmContact','Contact','firstName','Messages','createdAt','direction','Owner','fullname','mkdirSync','Sms','Account','N.A.','YYYY-MM-DD\x20HH:mm:ss','closed','closedAt','disposition','System','lastName','out','secret','read','value','renderFile','views','transcript-','createPdfFromHTML','log','err','unlinkSync','rimraf','zip-dir','util','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./smsInteraction.socket','register','sendStatus','status','end','json','offset','limit','undefined','count','Content-Range','then','destroy','error','name','index','map','SmsInteraction','rawAttributes','fieldName','type','key','findAll','query','user','catch','params','model','keys','filters','intersection','attributes','fields','length','includeAll','include','merge','options','find','create','body','update','describe','addMessage','SmsMessage','ids','omit','getMessages','findOne','hasOwnProperty','nolimit','sort','where','SmsInteractionId','filter','$gte','split','rows','addTags','spread','color'];(function(_0x3af990,_0x1b5e7f){var _0x4d6065=function(_0x52c923){while(--_0x52c923){_0x3af990['push'](_0x3af990['shift']());}};_0x4d6065(++_0x1b5e7f);}(_0x21bc,0x11d));var _0xc21b=function(_0x4565bf,_0x5ad9d6){_0x4565bf=_0x4565bf-0x0;var _0x5610ba=_0x21bc[_0x4565bf];return _0x5610ba;};'use strict';var rimraf=require(_0xc21b('0x0'));var zipdir=require(_0xc21b('0x1'));var moment=require('moment');var BPromise=require('bluebird');var util=require(_0xc21b('0x2'));var path=require(_0xc21b('0x3'));var ejs=require(_0xc21b('0x4'));var fs=require('fs');var _=require(_0xc21b('0x5'));var Redis=require(_0xc21b('0x6'));var interaction=require(_0xc21b('0x7'));var qs=require(_0xc21b('0x8'));var pdf=require(_0xc21b('0x9'));var logger=require(_0xc21b('0xa'))(_0xc21b('0xb'));var config=require(_0xc21b('0xc'));var db=require('../../mysqldb')['db'];config[_0xc21b('0xd')]=_[_0xc21b('0xe')](config[_0xc21b('0xd')],{'host':_0xc21b('0xf'),'port':0x18eb});var socket=require(_0xc21b('0x10'))(new Redis(config[_0xc21b('0xd')]));require(_0xc21b('0x11'))[_0xc21b('0x12')](socket);function respondWithStatusCode(_0x53c540,_0x5f2455){_0x5f2455=_0x5f2455||0xcc;return function(_0x2e8e95){if(_0x2e8e95){return _0x53c540[_0xc21b('0x13')](_0x5f2455);}return _0x53c540[_0xc21b('0x14')](_0x5f2455)[_0xc21b('0x15')]();};}function respondWithResult(_0x2c6e40,_0x4a6eca){_0x4a6eca=_0x4a6eca||0xc8;return function(_0xb8d3bf){if(_0xb8d3bf){return _0x2c6e40['status'](_0x4a6eca)[_0xc21b('0x16')](_0xb8d3bf);}};}function respondWithFilteredResult(_0x1e9ed5,_0x36a9f0){return function(_0x766b95){if(_0x766b95){var _0x59798d=typeof _0x36a9f0[_0xc21b('0x17')]==='undefined'&&typeof _0x36a9f0[_0xc21b('0x18')]===_0xc21b('0x19');var _0x59663a=_0x766b95['count'];var _0x5ad87c=_0x59798d?0x0:_0x36a9f0['offset'];var _0x377d54=_0x59798d?_0x766b95[_0xc21b('0x1a')]:_0x36a9f0['offset']+_0x36a9f0['limit'];var _0x1c1bd4;if(_0x377d54>=_0x59663a){_0x377d54=_0x59663a;_0x1c1bd4=0xc8;}else{_0x1c1bd4=0xce;}_0x1e9ed5['status'](_0x1c1bd4);return _0x1e9ed5['set'](_0xc21b('0x1b'),_0x5ad87c+'-'+_0x377d54+'/'+_0x59663a)[_0xc21b('0x16')](_0x766b95);}return null;};}function saveUpdates(_0x583bc3){return function(_0x4e4eb8){if(_0x4e4eb8){return _0x4e4eb8['update'](_0x583bc3)[_0xc21b('0x1c')](function(_0x1e52d4){return _0x1e52d4;});}return null;};}function removeEntity(_0x4a7068){return function(_0xfbc7a4){if(_0xfbc7a4){return _0xfbc7a4[_0xc21b('0x1d')]()['then'](function(){_0x4a7068[_0xc21b('0x14')](0xcc)[_0xc21b('0x15')]();});}};}function handleEntityNotFound(_0x3f8d73){return function(_0x444411){if(!_0x444411){_0x3f8d73['sendStatus'](0x194);}return _0x444411;};}function handleError(_0x43d4eb,_0xb2a09b){_0xb2a09b=_0xb2a09b||0x1f4;return function(_0x3d3f33){logger[_0xc21b('0x1e')](_0x3d3f33['stack']);if(_0x3d3f33[_0xc21b('0x1f')]){delete _0x3d3f33['name'];}_0x43d4eb[_0xc21b('0x14')](_0xb2a09b)['send'](_0x3d3f33);};}exports[_0xc21b('0x20')]=function(_0x9a6995,_0x16a414){var _0x46f8be={};var _0x5adc48=_[_0xc21b('0x21')](db[_0xc21b('0x22')][_0xc21b('0x23')],function(_0x5772cc){return{'name':_0x5772cc[_0xc21b('0x24')],'type':_0x5772cc[_0xc21b('0x25')][_0xc21b('0x26')]};});_0x46f8be=qs['getOptions'](_0x5adc48,_0x9a6995);return interaction[_0xc21b('0x27')]('sms',_0x9a6995[_0xc21b('0x28')],_0x9a6995[_0xc21b('0x29')],_0x46f8be,_0x5adc48)[_0xc21b('0x1c')](respondWithFilteredResult(_0x16a414,_0x46f8be))[_0xc21b('0x2a')](handleError(_0x16a414,null));};exports['show']=function(_0x17a297,_0x130719){var _0x19fa86={'raw':![],'where':{'id':_0x17a297[_0xc21b('0x2b')]['id']}},_0x155041={};_0x155041[_0xc21b('0x2c')]=_[_0xc21b('0x2d')](db[_0xc21b('0x22')][_0xc21b('0x23')]);_0x155041[_0xc21b('0x28')]=_[_0xc21b('0x2d')](_0x17a297[_0xc21b('0x28')]);_0x155041[_0xc21b('0x2e')]=_[_0xc21b('0x2f')](_0x155041[_0xc21b('0x2c')],_0x155041[_0xc21b('0x28')]);_0x19fa86[_0xc21b('0x30')]=_[_0xc21b('0x2f')](_0x155041[_0xc21b('0x2c')],qs['fields'](_0x17a297[_0xc21b('0x28')][_0xc21b('0x31')]));_0x19fa86['attributes']=_0x19fa86[_0xc21b('0x30')][_0xc21b('0x32')]?_0x19fa86[_0xc21b('0x30')]:_0x155041[_0xc21b('0x2c')];if(_0x17a297['query'][_0xc21b('0x33')]){_0x19fa86[_0xc21b('0x34')]=[{'all':!![]}];}_0x19fa86=_[_0xc21b('0x35')]({},_0x19fa86,_0x17a297[_0xc21b('0x36')]);return db[_0xc21b('0x22')][_0xc21b('0x37')](_0x19fa86)[_0xc21b('0x1c')](handleEntityNotFound(_0x130719,null))['then'](respondWithResult(_0x130719,null))[_0xc21b('0x2a')](handleError(_0x130719,null));};exports[_0xc21b('0x38')]=function(_0x448cf6,_0x501ee4){return db[_0xc21b('0x22')][_0xc21b('0x38')](_0x448cf6[_0xc21b('0x39')],{})['then'](respondWithResult(_0x501ee4,0xc9))[_0xc21b('0x2a')](handleError(_0x501ee4,null));};exports[_0xc21b('0x3a')]=function(_0x535c2b,_0x459b5c){if(_0x535c2b['body']['id']){delete _0x535c2b[_0xc21b('0x39')]['id'];}return db[_0xc21b('0x22')][_0xc21b('0x37')]({'where':{'id':_0x535c2b[_0xc21b('0x2b')]['id']}})[_0xc21b('0x1c')](handleEntityNotFound(_0x459b5c,null))[_0xc21b('0x1c')](saveUpdates(_0x535c2b[_0xc21b('0x39')],null))['then'](respondWithResult(_0x459b5c,null))[_0xc21b('0x2a')](handleError(_0x459b5c,null));};exports[_0xc21b('0x1d')]=function(_0x8a22ec,_0x712445){return db['SmsInteraction'][_0xc21b('0x37')]({'where':{'id':_0x8a22ec[_0xc21b('0x2b')]['id']}})[_0xc21b('0x1c')](handleEntityNotFound(_0x712445,null))[_0xc21b('0x1c')](removeEntity(_0x712445,null))[_0xc21b('0x2a')](handleError(_0x712445,null));};exports[_0xc21b('0x3b')]=function(_0x1e340d,_0x592480){return db[_0xc21b('0x22')]['describe']()[_0xc21b('0x1c')](respondWithResult(_0x592480,null))[_0xc21b('0x2a')](handleError(_0x592480,null));};exports[_0xc21b('0x3c')]=function(_0xc1d6c2,_0xc0c1c3){return db[_0xc21b('0x3d')][_0xc21b('0x37')]({'where':{'id':_0xc1d6c2['params']['id']}})[_0xc21b('0x1c')](handleEntityNotFound(_0xc0c1c3,null))[_0xc21b('0x1c')](function(_0x4ec1c2){if(_0x4ec1c2){return _0x4ec1c2['addMessage'](_0xc1d6c2['body'][_0xc21b('0x3e')],_[_0xc21b('0x3f')](_0xc1d6c2[_0xc21b('0x39')],[_0xc21b('0x3e'),'id'])||{});}})[_0xc21b('0x1c')](respondWithResult(_0xc0c1c3,null))[_0xc21b('0x2a')](handleError(_0xc0c1c3,null));};exports[_0xc21b('0x40')]=function(_0xe62db9,_0x3ab6e9){var _0x1d29c5={'raw':![],'where':{}};var _0x5977ce={};var _0xf800fa={'count':0x0,'rows':[]};return db['SmsInteraction'][_0xc21b('0x41')]({'where':{'id':_0xe62db9[_0xc21b('0x2b')]['id']}})[_0xc21b('0x1c')](handleEntityNotFound(_0x3ab6e9,null))['then'](function(_0x4fa6c5){if(_0x4fa6c5){_0x5977ce['model']=_[_0xc21b('0x2d')](db[_0xc21b('0x3d')]['rawAttributes']);_0x5977ce['query']=_['keys'](_0xe62db9[_0xc21b('0x28')]);_0x5977ce[_0xc21b('0x2e')]=_[_0xc21b('0x2f')](_0x5977ce[_0xc21b('0x2c')],_0x5977ce['query']);_0x1d29c5[_0xc21b('0x30')]=_[_0xc21b('0x2f')](_0x5977ce[_0xc21b('0x2c')],qs['fields'](_0xe62db9[_0xc21b('0x28')][_0xc21b('0x31')]));_0x1d29c5[_0xc21b('0x30')]=_0x1d29c5['attributes'][_0xc21b('0x32')]?_0x1d29c5[_0xc21b('0x30')]:_0x5977ce[_0xc21b('0x2c')];if(!_0xe62db9['query'][_0xc21b('0x42')](_0xc21b('0x43'))){_0x1d29c5['limit']=qs[_0xc21b('0x18')](_0xe62db9[_0xc21b('0x28')][_0xc21b('0x18')]);_0x1d29c5[_0xc21b('0x17')]=qs[_0xc21b('0x17')](_0xe62db9[_0xc21b('0x28')][_0xc21b('0x17')]);}_0x1d29c5['order']=qs[_0xc21b('0x44')](_0xe62db9[_0xc21b('0x28')][_0xc21b('0x44')]);_0x1d29c5[_0xc21b('0x45')]=qs[_0xc21b('0x2e')](_['pick'](_0xe62db9[_0xc21b('0x28')],_0x5977ce[_0xc21b('0x2e')]));_0x1d29c5[_0xc21b('0x45')][_0xc21b('0x46')]=_0x4fa6c5['id'];if(_0xe62db9[_0xc21b('0x28')][_0xc21b('0x47')]){_0x1d29c5['where']=_[_0xc21b('0x35')](_0x1d29c5[_0xc21b('0x45')],{'$or':_[_0xc21b('0x21')](_0x1d29c5[_0xc21b('0x30')],function(_0x18e75d){var _0x144790={};_0x144790[_0x18e75d]={'$like':'%'+_0xe62db9[_0xc21b('0x28')][_0xc21b('0x47')]+'%'};return _0x144790;})});}if(_0xe62db9['query'][_0xc21b('0x48')]){var _0x35454a=_0xe62db9[_0xc21b('0x28')]['$gte'][_0xc21b('0x49')](',');var _0xaafad7={};_0xaafad7[_0x35454a[0x0]]={'$gte':moment(_0x35454a[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x1d29c5[_0xc21b('0x45')]=_[_0xc21b('0x35')](_0x1d29c5[_0xc21b('0x45')],_0xaafad7);}_0x1d29c5=_[_0xc21b('0x35')]({},_0x1d29c5,_0xe62db9[_0xc21b('0x36')]);return db['SmsMessage']['count']({'where':_0x1d29c5[_0xc21b('0x45')]})['then'](function(_0x871fa2){_0xf800fa[_0xc21b('0x1a')]=_0x871fa2;if(_0xe62db9[_0xc21b('0x28')][_0xc21b('0x33')]){_0x1d29c5['include']=[{'all':!![]}];}return db[_0xc21b('0x3d')]['findAll'](_0x1d29c5);})[_0xc21b('0x1c')](function(_0xf5d5d4){_0xf800fa[_0xc21b('0x4a')]=_0xf5d5d4;return _0xf800fa;});}})['then'](respondWithFilteredResult(_0x3ab6e9,_0x1d29c5))[_0xc21b('0x2a')](handleError(_0x3ab6e9,null));};exports[_0xc21b('0x4b')]=function(_0x33b6bd,_0x420834){return db['SmsInteraction'][_0xc21b('0x37')]({'where':{'id':_0x33b6bd[_0xc21b('0x2b')]['id']}})[_0xc21b('0x1c')](handleEntityNotFound(_0x420834,null))[_0xc21b('0x1c')](function(_0x3c2970){if(_0x3c2970){return _0x3c2970['setTags'](_0x33b6bd['body'][_0xc21b('0x3e')],_[_0xc21b('0x3f')](_0x33b6bd[_0xc21b('0x39')],[_0xc21b('0x3e'),'id'])||{})[_0xc21b('0x4c')](function(){return db['Tag'][_0xc21b('0x27')]({'attributes':['id',_0xc21b('0x1f'),_0xc21b('0x4d')],'where':{'id':_0x33b6bd['body'][_0xc21b('0x3e')]}});})[_0xc21b('0x1c')](function(_0x278058){socket[_0xc21b('0x4e')](_0xc21b('0x4f'),{'id':Number(_0x33b6bd['params']['id']),'tags':_0x278058||[]});return{'id':Number(_0x33b6bd[_0xc21b('0x2b')]['id']),'tags':_0x278058||[]};});}})[_0xc21b('0x1c')](respondWithResult(_0x420834,null))[_0xc21b('0x2a')](handleError(_0x420834,null));};exports[_0xc21b('0x50')]=function(_0x1c37d6,_0xf87624){return db[_0xc21b('0x22')][_0xc21b('0x37')]({'where':{'id':_0x1c37d6[_0xc21b('0x2b')]['id']}})['then'](handleEntityNotFound(_0xf87624,null))[_0xc21b('0x1c')](function(_0x3d4d54){if(_0x3d4d54){return _0x3d4d54['removeTags'](_0x1c37d6['query']['ids']);}})[_0xc21b('0x1c')](respondWithStatusCode(_0xf87624,null))[_0xc21b('0x2a')](handleError(_0xf87624,null));};exports[_0xc21b('0x51')]=function(_0x12430b,_0x903c43){var _0x17fe50=moment()[_0xc21b('0x52')]()[_0xc21b('0x53')]();var _0x4b3d7c=path[_0xc21b('0x54')](config[_0xc21b('0x55')],_0xc21b('0x56'),_0xc21b('0x57'),'tmp');var _0x56bea3=path[_0xc21b('0x54')](_0x4b3d7c,_0x17fe50);var _0x296033=util[_0xc21b('0x58')](_0xc21b('0x59'),_0x12430b['params']['id'],_0x17fe50);var _0x10a88d=path[_0xc21b('0x54')](_0x4b3d7c,_0x296033);var _0x492ceb=[];_0x492ceb[_0xc21b('0x5a')]({'model':db[_0xc21b('0x5b')],'as':'User','attributes':['id','fullname'],'raw':!![]});_0x492ceb['push']({'model':db[_0xc21b('0x5c')],'as':_0xc21b('0x5d'),'attributes':['id',_0xc21b('0x5e'),'lastName'],'raw':!![]});var _0x5ba58a=[{'model':db[_0xc21b('0x3d')],'as':_0xc21b('0x5f'),'attributes':['id',_0xc21b('0x39'),_0xc21b('0x60'),_0xc21b('0x61'),'secret','read'],'include':_0x492ceb}];_0x5ba58a[_0xc21b('0x5a')]({'model':db['SmsAccount'],'as':'Account','attributes':['id',_0xc21b('0x1f')]});_0x5ba58a[_0xc21b('0x5a')]({'model':db[_0xc21b('0x5b')],'as':_0xc21b('0x62'),'attributes':['id',_0xc21b('0x63')]});return db[_0xc21b('0x22')]['find']({'where':{'id':_0x12430b['params']['id']},'include':_0x5ba58a})[_0xc21b('0x1c')](handleEntityNotFound(_0x903c43,null))[_0xc21b('0x1c')](function(_0x401e06){if(_0x401e06){var _0x7325c2=_0x401e06['get']({'plain':!![]});fs[_0xc21b('0x64')](_0x56bea3);var _0x3883a1={'channel':_0xc21b('0x65'),'account':_0x7325c2[_0xc21b('0x66')]['name'],'agent':_0x7325c2[_0xc21b('0x62')]?_0x7325c2['Owner'][_0xc21b('0x63')]:_0xc21b('0x67'),'createdAt':moment(_0x7325c2[_0xc21b('0x60')])[_0xc21b('0x58')](_0xc21b('0x68'))[_0xc21b('0x53')](),'closedAt':_0x7325c2[_0xc21b('0x69')]?moment(_0x7325c2[_0xc21b('0x6a')])[_0xc21b('0x58')](_0xc21b('0x68'))['toString']():'','disposition':_0x7325c2[_0xc21b('0x6b')],'messages':_(_0x7325c2['Messages'])[_0xc21b('0x47')]({'secret':![]})[_0xc21b('0x21')](function(_0x318041){return{'date':moment(_0x318041[_0xc21b('0x60')])[_0xc21b('0x58')]('YYYY-MM-DD\x20HH:mm:ss')[_0xc21b('0x53')](),'sender':_0x318041['direction']==='out'?_0x318041[_0xc21b('0x5b')]?_0x318041[_0xc21b('0x5b')][_0xc21b('0x63')]:_0xc21b('0x6c'):_0x318041[_0xc21b('0x5d')][_0xc21b('0x5e')]+(_0x318041['Contact'][_0xc21b('0x6d')]?'\x20'+_0x318041[_0xc21b('0x5d')][_0xc21b('0x6d')]:''),'body':_0x318041['body'],'direction':_0x318041[_0xc21b('0x61')]===_0xc21b('0x6e')?'A':'C','secret':_0x318041[_0xc21b('0x6f')],'read':_0x318041[_0xc21b('0x70')]};})[_0xc21b('0x71')]()};return ejs[_0xc21b('0x72')](path[_0xc21b('0x54')](config[_0xc21b('0x55')],'server',_0xc21b('0x73'),'downloadInteraction.ejs'),{'interaction':_0x3883a1})[_0xc21b('0x1c')](function(_0x200c98){var _0x1961a3=path[_0xc21b('0x54')](_0x56bea3,_0xc21b('0x74')+_0x7325c2['id']+'-'+_0x17fe50+'.pdf');var _0x251389={'path':_0x1961a3,'channel':_0xc21b('0x65'),'interactionId':_0x7325c2['id']};return pdf[_0xc21b('0x75')](_0x200c98,_0x251389);})[_0xc21b('0x1c')](function(){return new BPromise(function(_0x459c08,_0x754c07){zipdir(_0x56bea3,{'saveTo':_0x10a88d},function(_0x5398fa,_0x3aa901){if(_0x5398fa)return _0x754c07(_0x5398fa);return _0x459c08(_0x3aa901);});})['then'](function(){return new BPromise(function(_0x5291e5,_0x101829){rimraf(_0x56bea3,function(_0x16bd6a){if(_0x16bd6a)_0x101829(_0x16bd6a);return _0x5291e5();});});})['then'](function(){return _0x903c43[_0xc21b('0x51')](_0x10a88d,_0x296033,function(_0x86e574){if(_0x86e574){console[_0xc21b('0x76')](_0xc21b('0x77'),_0x86e574);}else{fs[_0xc21b('0x78')](_0x10a88d);}});});});}else{return _0x903c43[_0xc21b('0x13')](0xc8);}})[_0xc21b('0x2a')](handleError(_0x903c43,null));};
\ No newline at end of file