Built motion from commit (unavailable).|2.5.0
[motion2.git] / server / api / smsInteraction / smsInteraction.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xf72b=['toFile','transcript-','.pdf','err','unlinkSync','html-pdf','rimraf','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','end','json','count','offset','limit','set','apply','save','update','then','destroy','error','stack','name','send','map','fullname','TagIds','Tags','split','forEach','push','SmsInteraction','rawAttributes','fieldName','type','key','query','keys','filters','intersection','attributes','model','hasOwnProperty','order','sort','select','field','color','from','tools_tags','u.id','u.fullname','ui.SmsInteractionId','left_join','users','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','me.SmsInteractionId\x20=\x20i.id','sms_interaction_has_tags','t.id\x20=\x20it.TagId','expr','parseSearch','search','sqlOperator','conditions','length','find','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','operator','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','ContactId','text','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','buildExpression','body','start','some','compact','isEmpty','SmsAccountId','where','i.SmsAccountId\x20IN\x20?','concat','createdAt','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20>\x200','tag','filter','replace','\x27\x27\x27\x27','i.id\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','i.id','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','t.id\x20IN\x20?','resolve','journey','i.SmsAccountId\x20IS\x20NOT\x20NULL','user','getSmsAccounts','i.SmsAccountId\x20IS\x20NULL','sequelize','toString','keyBy','merge','fields','a.key','Account.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','Contact.fax','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.SmsInteractionId\x20IN\x20?','all','rows','catch','show','includeAll','create','params','describe','addMessage','SmsMessage','ids','omit','getMessages','findOne','nolimit','SmsInteractionId','format','YYYY-MM-DD\x20HH:mm:ss','options','include','findAll','addTags','setTags','spread','emit','removeTags','download','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','User','CmContact','firstName','lastName','Messages','direction','secret','SmsAccount','Account','get','mkdirSync','10px','<div\x20class=\x22header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h5>Interaction\x20Transcript</h5>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>','30px','%s\x20#%d','Sms','Owner','N.A.','closed','closedAt','disposition','out','System','Contact','renderFile','downloadInteraction.html'];(function(_0x34a284,_0x207084){var _0x2ec13b=function(_0x197011){while(--_0x197011){_0x34a284['push'](_0x34a284['shift']());}};_0x2ec13b(++_0x207084);}(_0xf72b,0x1d9));var _0xbf72=function(_0x3ff937,_0x3f6a9e){_0x3ff937=_0x3ff937-0x0;var _0x106dc2=_0xf72b[_0x3ff937];return _0x106dc2;};'use strict';var pdf=require(_0xbf72('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xbf72('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xbf72('0x2'));var rp=require(_0xbf72('0x3'));var moment=require('moment');var BPromise=require(_0xbf72('0x4'));var Mustache=require(_0xbf72('0x5'));var util=require(_0xbf72('0x6'));var path=require(_0xbf72('0x7'));var sox=require(_0xbf72('0x8'));var csv=require(_0xbf72('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xbf72('0xa'));var squel=require(_0xbf72('0xb'));var crypto=require(_0xbf72('0xc'));var jsforce=require(_0xbf72('0xd'));var deskjs=require(_0xbf72('0xe'));var toCsv=require(_0xbf72('0x9'));var querystring=require('querystring');var Papa=require(_0xbf72('0xf'));var Redis=require('ioredis');var authService=require(_0xbf72('0x10'));var qs=require(_0xbf72('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xbf72('0x12'));var logger=require(_0xbf72('0x13'))(_0xbf72('0x14'));var utils=require(_0xbf72('0x15'));var config=require(_0xbf72('0x16'));var db=require(_0xbf72('0x17'))['db'];config[_0xbf72('0x18')]=_[_0xbf72('0x19')](config['redis'],{'host':_0xbf72('0x1a'),'port':0x18eb});var socket=require(_0xbf72('0x1b'))(new Redis(config[_0xbf72('0x18')]));require('./smsInteraction.socket')[_0xbf72('0x1c')](socket);function respondWithStatusCode(_0x4f4fa5,_0x5625b3){_0x5625b3=_0x5625b3||0xcc;return function(_0x4a79df){if(_0x4a79df){return _0x4f4fa5[_0xbf72('0x1d')](_0x5625b3);}return _0x4f4fa5[_0xbf72('0x1e')](_0x5625b3)[_0xbf72('0x1f')]();};}function respondWithResult(_0x723eb1,_0x39d0cd){_0x39d0cd=_0x39d0cd||0xc8;return function(_0x160d61){if(_0x160d61){return _0x723eb1['status'](_0x39d0cd)[_0xbf72('0x20')](_0x160d61);}};}function respondWithFilteredResult(_0xeb7183,_0x2a8609){return function(_0x3d4dea){if(_0x3d4dea){var _0x27dadc=_0x3d4dea[_0xbf72('0x21')],_0x5b5fc9=_0x2a8609[_0xbf72('0x22')],_0x51d4c9=_0x2a8609[_0xbf72('0x22')]+_0x2a8609[_0xbf72('0x23')],_0x1b8d73;if(_0x51d4c9>=_0x27dadc){_0x51d4c9=_0x27dadc;_0x1b8d73=0xc8;}else{_0x1b8d73=0xce;}_0xeb7183[_0xbf72('0x1e')](_0x1b8d73);return _0xeb7183[_0xbf72('0x24')]('Content-Range',_0x5b5fc9+'-'+_0x51d4c9+'/'+_0x27dadc)[_0xbf72('0x20')](_0x3d4dea);}return null;};}function patchUpdates(_0x42a193){return function(_0xcd9c0b){try{jsonpatch[_0xbf72('0x25')](_0xcd9c0b,_0x42a193,!![]);}catch(_0x3486f3){return BPromise['reject'](_0x3486f3);}return _0xcd9c0b[_0xbf72('0x26')]();};}function saveUpdates(_0x1de926,_0x536071){return function(_0x35c40f){if(_0x35c40f){return _0x35c40f[_0xbf72('0x27')](_0x1de926)[_0xbf72('0x28')](function(_0x4c7f3d){return _0x4c7f3d;});}return null;};}function removeEntity(_0x44f3f9,_0x428361){return function(_0x44d456){if(_0x44d456){return _0x44d456[_0xbf72('0x29')]()['then'](function(){_0x44f3f9[_0xbf72('0x1e')](0xcc)[_0xbf72('0x1f')]();});}};}function handleEntityNotFound(_0x1c8b8b,_0x54fdfe){return function(_0x3b3171){if(!_0x3b3171){_0x1c8b8b[_0xbf72('0x1d')](0x194);}return _0x3b3171;};}function handleError(_0x3df816,_0x1a2f55){_0x1a2f55=_0x1a2f55||0x1f4;return function(_0x15d60d){logger[_0xbf72('0x2a')](_0x15d60d[_0xbf72('0x2b')]);if(_0x15d60d[_0xbf72('0x2c')]){delete _0x15d60d[_0xbf72('0x2c')];}_0x3df816[_0xbf72('0x1e')](_0x1a2f55)[_0xbf72('0x2d')](_0x15d60d);};}function getInteractionUsers(_0x20e747,_0x4a6ccf){return new BPromise(function(_0xb648f2,_0x37a233){try{if(_0x4a6ccf[_0x20e747['id']]){_0x20e747['Users']=_[_0xbf72('0x2e')](_0x4a6ccf[_0x20e747['id']],function(_0x475a54){return{'id':_0x475a54['id'],'fullname':_0x475a54[_0xbf72('0x2f')]};});}}catch(_0x28850d){_0x37a233(_0x28850d);}_0xb648f2(_0x20e747);});}function getInteractionTags(_0xb1ee4e,_0x82c0f0){return new BPromise(function(_0x35ecdc,_0x209b2b){try{if(_0xb1ee4e[_0xbf72('0x30')]){_0xb1ee4e[_0xbf72('0x31')]=[];_0xb1ee4e[_0xbf72('0x30')][_0xbf72('0x32')](',')[_0xbf72('0x33')](function(_0x3ad363){_0xb1ee4e['Tags'][_0xbf72('0x34')](_0x82c0f0[_0x3ad363]);});}delete _0xb1ee4e[_0xbf72('0x30')];}catch(_0x3f47e6){_0x209b2b(_0x3f47e6);}_0x35ecdc(_0xb1ee4e);});}function updateSmsInteraction(_0x479cfe,_0x586537,_0x5c8bb4){return new BPromise(function(_0x2755c3,_0x80d176){return getInteractionUsers(_0x479cfe,_0x5c8bb4)[_0xbf72('0x28')](function(_0x52d979){return getInteractionTags(_0x52d979,_0x586537);})[_0xbf72('0x28')](function(_0x4c9662){_0x2755c3(_0x4c9662);})['catch'](function(_0x1158d3){_0x80d176(_0x1158d3);});});}exports['index']=function(_0x13ab4f,_0x202497){var _0x5c2f60={},_0x4aac2f={},_0x424669={'count':0x0,'rows':[]};var _0xc5edc4=_[_0xbf72('0x2e')](db[_0xbf72('0x35')][_0xbf72('0x36')],function(_0x26c91c){return{'name':_0x26c91c[_0xbf72('0x37')],'type':_0x26c91c[_0xbf72('0x38')][_0xbf72('0x39')]};});_0x4aac2f['model']=_[_0xbf72('0x2e')](_0xc5edc4,_0xbf72('0x2c'));_0x4aac2f[_0xbf72('0x3a')]=_[_0xbf72('0x3b')](_0x13ab4f['query']);_0x4aac2f[_0xbf72('0x3c')]=_[_0xbf72('0x3d')](_0x4aac2f['model'],_0x4aac2f[_0xbf72('0x3a')]);_0x5c2f60['attributes']=_['intersection'](_0x4aac2f['model'],qs['fields'](_0x13ab4f[_0xbf72('0x3a')]['fields']));_0x5c2f60['attributes']=_0x5c2f60[_0xbf72('0x3e')]['length']?_0x5c2f60[_0xbf72('0x3e')]:_0x4aac2f[_0xbf72('0x3f')];if(!_0x13ab4f['query'][_0xbf72('0x40')]('nolimit')){_0x5c2f60['limit']=qs[_0xbf72('0x23')](_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x23')]);_0x5c2f60[_0xbf72('0x22')]=qs[_0xbf72('0x22')](_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x22')]);}_0x5c2f60[_0xbf72('0x41')]=qs['sort'](_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x42')]);_0x5c2f60['where']=qs[_0xbf72('0x3c')](_['pick'](_0x13ab4f['query'],_0x4aac2f[_0xbf72('0x3c')]),_0xc5edc4);var _0x15e4c7=[];var _0x3992fd=squel[_0xbf72('0x43')]()[_0xbf72('0x44')]('id')['field']('name')['field'](_0xbf72('0x45'))[_0xbf72('0x46')](_0xbf72('0x47'));var _0x2a679a=squel['select']()['field'](_0xbf72('0x48'))['field'](_0xbf72('0x49'))[_0xbf72('0x44')](_0xbf72('0x4a'))[_0xbf72('0x46')]('user_has_sms_interactions','ui')[_0xbf72('0x4b')](_0xbf72('0x4c'),'u',_0xbf72('0x4d'));var _0x1da27a=squel['select']()[_0xbf72('0x46')](_0xbf72('0x4e'),'i')['left_join'](_0xbf72('0x4f'),'c',_0xbf72('0x50'))[_0xbf72('0x4b')](_0xbf72('0x4c'),'o',_0xbf72('0x51'))[_0xbf72('0x4b')](_0xbf72('0x52'),'a','a.id\x20=\x20i.SmsAccountId')['left_join']('sms_messages','me',_0xbf72('0x53'))['left_join'](_0xbf72('0x54'),'it','it.SmsInteractionId\x20=\x20i.id')['left_join']('tools_tags','t',_0xbf72('0x55'));var _0x15a271=squel[_0xbf72('0x56')]();var _0x3304b1=[];var _0x3d36de=squel[_0xbf72('0x56')]();var _0x530663;if(_0x13ab4f[_0xbf72('0x3a')]['search']){_0x530663=as[_0xbf72('0x57')](_0x13ab4f['query'][_0xbf72('0x58')]);var _0x199473=_0x530663[_0xbf72('0x59')];for(var _0x1fd1f8=0x0;_0x1fd1f8<_0x530663[_0xbf72('0x5a')][_0xbf72('0x5b')];_0x1fd1f8++){var _0x578b07=_0x530663[_0xbf72('0x5a')][_0x1fd1f8];var _0x3f6b6f='i';var _0x5c54fe=_[_0xbf72('0x5c')](_0xc5edc4,[_0xbf72('0x2c'),_0x578b07[_0xbf72('0x44')]]);if(!_0x5c54fe){switch(_0x578b07['field']){case _0xbf72('0x5d'):if(_0x578b07[_0xbf72('0x5e')]==0x1){_0x1da27a[_0xbf72('0x5f')]('`'+_0x578b07[_0xbf72('0x44')]+_0xbf72('0x60'));}else{_0x1da27a['having']('`'+_0x578b07[_0xbf72('0x44')]+_0xbf72('0x61'));}break;case'Contact':if(_0x578b07[_0xbf72('0x62')]==='$substring'){if(_0x578b07['value'][_0xbf72('0x32')]('\x20')[_0xbf72('0x5b')]>0x1){_0x15a271[_0x199473](_0xbf72('0x63'),qs[_0xbf72('0x64')](_0x578b07[_0xbf72('0x5e')]),null);}else{var _0x527061='%'+_0x578b07['value']+'%';_0x15a271[_0x199473]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x527061,_0x527061,_0x527061);}}else{_0x5c54fe=_[_0xbf72('0x5c')](_0xc5edc4,[_0xbf72('0x2c'),_0xbf72('0x65')]);_0x578b07[_0xbf72('0x44')]='ContactId';_0x537398=as['buildExpression'](_0x3f6b6f,_0x5c54fe[_0xbf72('0x38')],_0x578b07);_0x15a271[_0x199473](_0x537398[_0xbf72('0x66')],_0x537398[_0xbf72('0x5e')]['start'],_0x537398[_0xbf72('0x5e')]['end']);}break;case _0xbf72('0x67'):var _0x3da80c=_0x578b07['value'][_0xbf72('0x32')](',')[_0xbf72('0x2e')](function(_0x55ac06){return Number(_0x55ac06);});_0x3da80c[_0xbf72('0x33')](function(_0x46f908){_0x3d36de['or'](_0xbf72('0x68'),'%,'+_0x46f908+',%');});_0x3304b1=_['union'](_0x3304b1,_0x3da80c);break;case'User':if(_0x578b07['operator']===_0xbf72('0x69')){_0x15a271[_0x199473](_0xbf72('0x6a'),'%'+_0x578b07[_0xbf72('0x5e')]+'%',null);}else{_0x5c54fe=_[_0xbf72('0x5c')](_0xc5edc4,[_0xbf72('0x2c'),_0xbf72('0x6b')]);_0x578b07[_0xbf72('0x44')]=_0xbf72('0x6b');_0x537398=as[_0xbf72('0x6c')](_0x3f6b6f,_0x5c54fe['type'],_0x578b07);_0x15a271[_0x199473](_0x537398[_0xbf72('0x66')],_0x537398[_0xbf72('0x5e')]['start'],_0x537398[_0xbf72('0x5e')][_0xbf72('0x1f')]);}break;case _0xbf72('0x6d'):_0x537398=as[_0xbf72('0x6c')]('me',null,_0x578b07);_0x15a271[_0x199473](_0x537398[_0xbf72('0x66')],_0x537398[_0xbf72('0x5e')][_0xbf72('0x6e')],_0x537398[_0xbf72('0x5e')][_0xbf72('0x1f')]);break;}}else{var _0x537398=as['buildExpression'](_0x3f6b6f,_0x5c54fe[_0xbf72('0x38')],_0x578b07);_0x15a271[_0x199473](_0x537398[_0xbf72('0x66')],_0x537398[_0xbf72('0x5e')][_0xbf72('0x6e')],_0x537398[_0xbf72('0x5e')][_0xbf72('0x1f')]);}}}else{var _0x3f2c1f=_(_0x13ab4f[_0xbf72('0x3a')])['keys']()[_0xbf72('0x2e')](function(_0x2cb706){return _[_0xbf72('0x6f')](_0xc5edc4,[_0xbf72('0x2c'),_0x2cb706])?_0x2cb706:undefined;})[_0xbf72('0x70')]()[_0xbf72('0x5e')]();if(!_[_0xbf72('0x71')](_0x3f2c1f)){_0x3f2c1f['forEach'](function(_0x428902){if(_0x428902===_0xbf72('0x72')){_0x1da27a[_0xbf72('0x73')](_0xbf72('0x74'),[][_0xbf72('0x75')](_0x13ab4f[_0xbf72('0x3a')][_0x428902]));}else if(_0x428902===_0xbf72('0x76')){var _0x25b7ea=JSON['parse'](_0x13ab4f[_0xbf72('0x3a')][_0x428902])[_0xbf72('0x77')];var _0x17ab12=JSON['parse'](_0x13ab4f[_0xbf72('0x3a')][_0x428902])[_0xbf72('0x78')];_0x1da27a['where'](_0xbf72('0x79'),_0x25b7ea,_0x17ab12);}else{if(_0x13ab4f[_0xbf72('0x3a')][_0x428902]==='null'){_0x1da27a[_0xbf72('0x73')]('i.'+_0x428902+_0xbf72('0x7a'));}else{_0x1da27a['where']('i.'+_0x428902+_0xbf72('0x7b'),_0x13ab4f[_0xbf72('0x3a')][_0x428902]);}}});}if(_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x7c')]){if(_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x7c')]==0x1){_0x1da27a[_0xbf72('0x5f')]('`unreadMessages`\x20=\x200');}else{_0x1da27a[_0xbf72('0x5f')](_0xbf72('0x7d'));}}if(_0x13ab4f['query'][_0xbf72('0x7e')]){_0x3304b1=_['isArray'](_0x13ab4f['query'][_0xbf72('0x7e')])?_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x7e')]:new Array(_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x7e')]);_0x3304b1[_0xbf72('0x33')](function(_0x50f70c){_0x3d36de['or'](_0xbf72('0x68'),'%,'+_0x50f70c+',%');});}if(_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x7f')]){var _0x33257f=_0x13ab4f['query'][_0xbf72('0x7f')][_0xbf72('0x80')]('\x5c','\x5c\x5c')[_0xbf72('0x80')]('\x27\x27',_0xbf72('0x81'));if(qs['isNumeric'](_0x33257f)){_0x15a271['or'](_0xbf72('0x82'),_0x33257f+'%')['or']('i.phone\x20LIKE\x20?',_0x33257f+'%');}else{_0x15a271['or'](_0xbf72('0x83'),qs[_0xbf72('0x64')](_0x33257f))['or'](_0xbf72('0x84'),_0x33257f+'%');}}}_0x1da27a['where'](_0x15a271);_0x1da27a[_0xbf72('0x85')](_0xbf72('0x86'));var _0x289dcc={'type':db[_0xbf72('0x87')][_0xbf72('0x88')][_0xbf72('0x89')],'raw':!![]};var _0x36a3dc=_0x1da27a[_0xbf72('0x8a')]();_0x36a3dc[_0xbf72('0x44')](_0xbf72('0x86'));_0x36a3dc[_0xbf72('0x44')](_0xbf72('0x8b'),'unreadMessages');if(_0x5c2f60[_0xbf72('0x41')]){_0x5c2f60[_0xbf72('0x41')][_0xbf72('0x33')](function(_0x594b73){_0x1da27a[_0xbf72('0x41')]('i.'+_0x594b73[0x0],_0x594b73[0x1]==='DESC'?![]:!![]);});}if(!_[_0xbf72('0x71')](_0x3304b1)){_0x1da27a[_0xbf72('0x5f')](_0x3d36de);_0x36a3dc[_0xbf72('0x73')](_0xbf72('0x8c'),_0x3304b1);}BPromise[_0xbf72('0x8d')]()[_0xbf72('0x28')](function(){if(!_0x530663){if(_0x13ab4f['query'][_0xbf72('0x72')]||_0x13ab4f['query'][_0xbf72('0x8e')])return;_0x36a3dc['where'](_0xbf72('0x8f'));_0x1da27a[_0xbf72('0x73')](_0xbf72('0x8f'));return;}return _0x13ab4f[_0xbf72('0x90')][_0xbf72('0x91')]({'attributes':['id'],'raw':!![]})[_0xbf72('0x28')](function(_0x3ba2f9){if(_[_0xbf72('0x71')](_0x3ba2f9)){_0x36a3dc[_0xbf72('0x73')](_0xbf72('0x92'));_0x1da27a[_0xbf72('0x73')](_0xbf72('0x92'));}else{_0x36a3dc[_0xbf72('0x73')](_0xbf72('0x74'),_[_0xbf72('0x2e')](_0x3ba2f9,'id'));_0x1da27a['where']('i.SmsAccountId\x20IN\x20?',_[_0xbf72('0x2e')](_0x3ba2f9,'id'));}});})['then'](function(){db[_0xbf72('0x93')][_0xbf72('0x3a')](_0x36a3dc['toString'](),_0x289dcc)[_0xbf72('0x28')](function(_0xffecec){_0x424669[_0xbf72('0x21')]=_0xffecec['length'];if(_0x424669[_0xbf72('0x21')]===0x0)return[];return db['sequelize'][_0xbf72('0x3a')](_0x3992fd[_0xbf72('0x94')](),_0x289dcc)['then'](function(_0x2e0923){_0x15e4c7=_[_0xbf72('0x95')](_0x2e0923,'id');_0x289dcc=_[_0xbf72('0x96')](_0x289dcc,{'model':db[_0xbf72('0x35')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x13ab4f[_0xbf72('0x3a')][_0xbf72('0x97')]){_0x5c2f60[_0xbf72('0x3e')][_0xbf72('0x33')](function(_0x55b183){_0x1da27a['field']('i.'+_0x55b183);});}else{_0x1da27a[_0xbf72('0x44')](_0xbf72('0x8b'),_0xbf72('0x5d'));_0x1da27a['field'](_0xbf72('0x98'),'Account.key');_0x1da27a[_0xbf72('0x44')]('a.mandatoryDisposition',_0xbf72('0x99'));_0x1da27a[_0xbf72('0x44')](_0xbf72('0x9a'));_0x1da27a['field'](_0xbf72('0x9b'),_0xbf72('0x9c'));_0x1da27a['field'](_0xbf72('0x9d'),'Contact.lastName');_0x1da27a[_0xbf72('0x44')](_0xbf72('0x9e'),_0xbf72('0x9f'));_0x1da27a[_0xbf72('0x44')](_0xbf72('0xa0'),_0xbf72('0xa1'));_0x1da27a['field'](_0xbf72('0xa2'),_0xbf72('0xa3'));_0x1da27a[_0xbf72('0x44')]('c.fax',_0xbf72('0xa4'));_0x1da27a[_0xbf72('0x44')]('o.fullname','Owner.fullname');_0x1da27a['field'](_0xbf72('0xa5'),_0xbf72('0xa6'));_0x1da27a[_0xbf72('0x44')](_0xbf72('0xa7'),'TagIds');}if(_0x5c2f60[_0xbf72('0x23')])_0x1da27a['limit'](_0x5c2f60[_0xbf72('0x23')]);if(_0x5c2f60[_0xbf72('0x22')])_0x1da27a[_0xbf72('0x22')](_0x5c2f60['offset']);return db[_0xbf72('0x93')]['query'](_0x1da27a[_0xbf72('0x94')](),_0x289dcc);})[_0xbf72('0x28')](function(_0x2b7772){_0x2a679a['where'](_0xbf72('0xa8'),_['map'](_0x2b7772,'id'));return db['sequelize'][_0xbf72('0x3a')](_0x2a679a[_0xbf72('0x94')](),_0x289dcc)['then'](function(_0x5a2710){var _0x45e0b6=_['groupBy'](_0x5a2710,'SmsInteractionId');var _0x2fa244=[];_0x2b7772[_0xbf72('0x33')](function(_0x2d390d){_0x2fa244['push'](updateSmsInteraction(_0x2d390d,_0x15e4c7,_0x45e0b6));});return BPromise[_0xbf72('0xa9')](_0x2fa244);});});})[_0xbf72('0x28')](function(_0x4ffdc5){_0x424669[_0xbf72('0xaa')]=_0x4ffdc5;return _0x424669;})['then'](respondWithFilteredResult(_0x202497,_0x5c2f60));})[_0xbf72('0xab')](handleError(_0x202497,null));};exports[_0xbf72('0xac')]=function(_0x5bc71f,_0xcdfdca){var _0x126df6={'raw':![],'where':{'id':_0x5bc71f['params']['id']}},_0x1294c3={};_0x1294c3[_0xbf72('0x3f')]=_[_0xbf72('0x3b')](db[_0xbf72('0x35')][_0xbf72('0x36')]);_0x1294c3['query']=_[_0xbf72('0x3b')](_0x5bc71f[_0xbf72('0x3a')]);_0x1294c3[_0xbf72('0x3c')]=_[_0xbf72('0x3d')](_0x1294c3[_0xbf72('0x3f')],_0x1294c3[_0xbf72('0x3a')]);_0x126df6[_0xbf72('0x3e')]=_['intersection'](_0x1294c3[_0xbf72('0x3f')],qs['fields'](_0x5bc71f[_0xbf72('0x3a')][_0xbf72('0x97')]));_0x126df6['attributes']=_0x126df6[_0xbf72('0x3e')][_0xbf72('0x5b')]?_0x126df6[_0xbf72('0x3e')]:_0x1294c3['model'];if(_0x5bc71f[_0xbf72('0x3a')][_0xbf72('0xad')]){_0x126df6['include']=[{'all':!![]}];}_0x126df6=_[_0xbf72('0x96')]({},_0x126df6,_0x5bc71f['options']);return db[_0xbf72('0x35')]['find'](_0x126df6)[_0xbf72('0x28')](handleEntityNotFound(_0xcdfdca,null))[_0xbf72('0x28')](respondWithResult(_0xcdfdca,null))[_0xbf72('0xab')](handleError(_0xcdfdca,null));};exports[_0xbf72('0xae')]=function(_0x17318e,_0x197fc7){return db[_0xbf72('0x35')][_0xbf72('0xae')](_0x17318e[_0xbf72('0x6d')],{})[_0xbf72('0x28')](respondWithResult(_0x197fc7,0xc9))[_0xbf72('0xab')](handleError(_0x197fc7,null));};exports[_0xbf72('0x27')]=function(_0x3d21dc,_0x2f6ffe){if(_0x3d21dc[_0xbf72('0x6d')]['id']){delete _0x3d21dc[_0xbf72('0x6d')]['id'];}return db[_0xbf72('0x35')]['find']({'where':{'id':_0x3d21dc['params']['id']}})[_0xbf72('0x28')](handleEntityNotFound(_0x2f6ffe,null))[_0xbf72('0x28')](saveUpdates(_0x3d21dc['body'],null))[_0xbf72('0x28')](respondWithResult(_0x2f6ffe,null))[_0xbf72('0xab')](handleError(_0x2f6ffe,null));};exports['destroy']=function(_0x2b3de2,_0x59a0c1){return db['SmsInteraction']['find']({'where':{'id':_0x2b3de2[_0xbf72('0xaf')]['id']}})['then'](handleEntityNotFound(_0x59a0c1,null))['then'](removeEntity(_0x59a0c1,null))[_0xbf72('0xab')](handleError(_0x59a0c1,null));};exports[_0xbf72('0xb0')]=function(_0x3dc0a4,_0x35517f){return db[_0xbf72('0x35')][_0xbf72('0xb0')]()[_0xbf72('0x28')](respondWithResult(_0x35517f,null))[_0xbf72('0xab')](handleError(_0x35517f,null));};exports[_0xbf72('0xb1')]=function(_0x7d6f18,_0x54993a,_0x3c7929){return db[_0xbf72('0xb2')][_0xbf72('0x5c')]({'where':{'id':_0x7d6f18['params']['id']}})[_0xbf72('0x28')](handleEntityNotFound(_0x54993a,null))[_0xbf72('0x28')](function(_0x2e3519){if(_0x2e3519){return _0x2e3519[_0xbf72('0xb1')](_0x7d6f18['body'][_0xbf72('0xb3')],_[_0xbf72('0xb4')](_0x7d6f18[_0xbf72('0x6d')],[_0xbf72('0xb3'),'id'])||{});}})['then'](respondWithResult(_0x54993a,null))[_0xbf72('0xab')](handleError(_0x54993a,null));};exports[_0xbf72('0xb5')]=function(_0x42663e,_0x812ece,_0x375054){var _0x1e716f={'raw':![],'where':{}};var _0x52d372={};var _0x47da7d={'count':0x0,'rows':[]};return db[_0xbf72('0x35')][_0xbf72('0xb6')]({'where':{'id':_0x42663e[_0xbf72('0xaf')]['id']}})['then'](handleEntityNotFound(_0x812ece,null))[_0xbf72('0x28')](function(_0x2c5779){if(_0x2c5779){_0x52d372['model']=_[_0xbf72('0x3b')](db[_0xbf72('0xb2')]['rawAttributes']);_0x52d372[_0xbf72('0x3a')]=_[_0xbf72('0x3b')](_0x42663e['query']);_0x52d372['filters']=_[_0xbf72('0x3d')](_0x52d372[_0xbf72('0x3f')],_0x52d372[_0xbf72('0x3a')]);_0x1e716f[_0xbf72('0x3e')]=_['intersection'](_0x52d372[_0xbf72('0x3f')],qs[_0xbf72('0x97')](_0x42663e[_0xbf72('0x3a')]['fields']));_0x1e716f['attributes']=_0x1e716f['attributes'][_0xbf72('0x5b')]?_0x1e716f[_0xbf72('0x3e')]:_0x52d372[_0xbf72('0x3f')];if(!_0x42663e[_0xbf72('0x3a')]['hasOwnProperty'](_0xbf72('0xb7'))){_0x1e716f[_0xbf72('0x23')]=qs[_0xbf72('0x23')](_0x42663e[_0xbf72('0x3a')][_0xbf72('0x23')]);_0x1e716f[_0xbf72('0x22')]=qs[_0xbf72('0x22')](_0x42663e[_0xbf72('0x3a')][_0xbf72('0x22')]);}_0x1e716f[_0xbf72('0x41')]=qs['sort'](_0x42663e[_0xbf72('0x3a')][_0xbf72('0x42')]);_0x1e716f[_0xbf72('0x73')]=qs[_0xbf72('0x3c')](_['pick'](_0x42663e['query'],_0x52d372[_0xbf72('0x3c')]));_0x1e716f[_0xbf72('0x73')][_0xbf72('0xb8')]=_0x2c5779['id'];if(_0x42663e[_0xbf72('0x3a')][_0xbf72('0x7f')]){_0x1e716f['where']=_['merge'](_0x1e716f[_0xbf72('0x73')],{'$or':_[_0xbf72('0x2e')](_0x1e716f[_0xbf72('0x3e')],function(_0x465a51){var _0x2fd92a={};_0x2fd92a[_0x465a51]={'$like':'%'+_0x42663e[_0xbf72('0x3a')][_0xbf72('0x7f')]+'%'};return _0x2fd92a;})});}if(_0x42663e[_0xbf72('0x3a')][_0xbf72('0x77')]){var _0x250cb5=_0x42663e[_0xbf72('0x3a')]['$gte'][_0xbf72('0x32')](',');var _0x49dac9={};_0x49dac9[_0x250cb5[0x0]]={'$gte':moment(_0x250cb5[0x1])[_0xbf72('0xb9')](_0xbf72('0xba'))};_0x1e716f['where']=_[_0xbf72('0x96')](_0x1e716f['where'],_0x49dac9);}_0x1e716f=_[_0xbf72('0x96')]({},_0x1e716f,_0x42663e[_0xbf72('0xbb')]);return db['SmsMessage'][_0xbf72('0x21')]({'where':_0x1e716f[_0xbf72('0x73')]})[_0xbf72('0x28')](function(_0x11fcad){_0x47da7d['count']=_0x11fcad;if(_0x42663e['query'][_0xbf72('0xad')]){_0x1e716f[_0xbf72('0xbc')]=[{'all':!![]}];}return db[_0xbf72('0xb2')][_0xbf72('0xbd')](_0x1e716f);})[_0xbf72('0x28')](function(_0x7b2e81){_0x47da7d[_0xbf72('0xaa')]=_0x7b2e81;return _0x47da7d;});}})[_0xbf72('0x28')](respondWithFilteredResult(_0x812ece,_0x1e716f))[_0xbf72('0xab')](handleError(_0x812ece,null));};exports[_0xbf72('0xbe')]=function(_0xbeac16,_0x27c6a3,_0x1306b9){return db[_0xbf72('0x35')]['find']({'where':{'id':_0xbeac16[_0xbf72('0xaf')]['id']}})['then'](handleEntityNotFound(_0x27c6a3,null))[_0xbf72('0x28')](function(_0x369ae8){if(_0x369ae8){return _0x369ae8[_0xbf72('0xbf')](_0xbeac16['body'][_0xbf72('0xb3')],_[_0xbf72('0xb4')](_0xbeac16[_0xbf72('0x6d')],[_0xbf72('0xb3'),'id'])||{})[_0xbf72('0xc0')](function(){return db['Tag'][_0xbf72('0xbd')]({'attributes':['id',_0xbf72('0x2c'),_0xbf72('0x45')],'where':{'id':_0xbeac16[_0xbf72('0x6d')][_0xbf72('0xb3')]}});})[_0xbf72('0x28')](function(_0x4fa0f1){socket[_0xbf72('0xc1')]('smsInteractionTags:save',{'id':Number(_0xbeac16['params']['id']),'tags':_0x4fa0f1||[]});return{'id':Number(_0xbeac16[_0xbf72('0xaf')]['id']),'tags':_0x4fa0f1||[]};});}})[_0xbf72('0x28')](respondWithResult(_0x27c6a3,null))[_0xbf72('0xab')](handleError(_0x27c6a3,null));};exports['removeTags']=function(_0x59ce68,_0x4af0b4,_0x29a1bd){return db[_0xbf72('0x35')][_0xbf72('0x5c')]({'where':{'id':_0x59ce68[_0xbf72('0xaf')]['id']}})[_0xbf72('0x28')](handleEntityNotFound(_0x4af0b4,null))[_0xbf72('0x28')](function(_0x35f0cc){if(_0x35f0cc){return _0x35f0cc[_0xbf72('0xc2')](_0x59ce68[_0xbf72('0x3a')][_0xbf72('0xb3')]);}})[_0xbf72('0x28')](respondWithStatusCode(_0x4af0b4,null))['catch'](handleError(_0x4af0b4,null));};exports[_0xbf72('0xc3')]=function(_0x810cdf,_0x15f8f4){var _0x47defd=moment()['unix']()[_0xbf72('0x94')]();var _0x49e3a4=path[_0xbf72('0xc4')](config[_0xbf72('0xc5')],_0xbf72('0xc6'),_0xbf72('0xc7'),_0xbf72('0xc8'));var _0x57d05b=path[_0xbf72('0xc4')](config['root'],_0xbf72('0xc6'),'files',_0xbf72('0xc9'));var _0x16d4cd=path['join'](_0x49e3a4,_0x47defd);var _0x2ac801=util['format'](_0xbf72('0xca'),_0x810cdf[_0xbf72('0xaf')]['id'],_0x47defd);var _0x7dbb1=path['join'](_0x49e3a4,_0x2ac801);var _0x445842=[];_0x445842['push']({'model':db[_0xbf72('0xcb')],'as':_0xbf72('0xcb'),'attributes':['id',_0xbf72('0x2f')],'raw':!![]});_0x445842['push']({'model':db[_0xbf72('0xcc')],'as':'Contact','attributes':['id',_0xbf72('0xcd'),_0xbf72('0xce')],'raw':!![]});var _0x47d1fb=[{'model':db[_0xbf72('0xb2')],'as':_0xbf72('0xcf'),'attributes':['id',_0xbf72('0x6d'),_0xbf72('0x76'),_0xbf72('0xd0'),_0xbf72('0xd1'),_0xbf72('0x7c')],'include':_0x445842}];_0x47d1fb[_0xbf72('0x34')]({'model':db[_0xbf72('0xd2')],'as':_0xbf72('0xd3'),'attributes':['id',_0xbf72('0x2c')]});_0x47d1fb[_0xbf72('0x34')]({'model':db[_0xbf72('0xcb')],'as':'Owner','attributes':['id','fullname']});return db[_0xbf72('0x35')]['find']({'where':{'id':_0x810cdf[_0xbf72('0xaf')]['id']},'include':_0x47d1fb})['then'](handleEntityNotFound(_0x15f8f4,null))['then'](function(_0x1a3f8c){if(_0x1a3f8c){var _0x5f71ba=_0x1a3f8c[_0xbf72('0xd4')]({'plain':!![]});fs[_0xbf72('0xd5')](_0x16d4cd);var _0xc70212={'format':'A4','border':_0xbf72('0xd6'),'header':{'height':'40px','contents':{'first':_0xbf72('0xd7')}},'footer':{'height':_0xbf72('0xd8'),'contents':{'default':util[_0xbf72('0xb9')]('<hr\x20class=\x22separator\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22left\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22center\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>{{page}}/{{pages}}</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22right\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>',util[_0xbf72('0xb9')](_0xbf72('0xd9'),'Sms',_0x5f71ba['id']),moment()[_0xbf72('0xb9')]('YYYY-MM-DD')[_0xbf72('0x94')]())}}};var _0x383749={'channel':_0xbf72('0xda'),'account':_0x5f71ba[_0xbf72('0xd3')][_0xbf72('0x2c')],'agent':_0x5f71ba[_0xbf72('0xdb')]?_0x5f71ba[_0xbf72('0xdb')][_0xbf72('0x2f')]:_0xbf72('0xdc'),'createdAt':moment(_0x5f71ba[_0xbf72('0x76')])[_0xbf72('0xb9')](_0xbf72('0xba'))[_0xbf72('0x94')](),'closedAt':_0x5f71ba[_0xbf72('0xdd')]?moment(_0x5f71ba[_0xbf72('0xde')])['format'](_0xbf72('0xba'))['toString']():'','disposition':_0x5f71ba[_0xbf72('0xdf')],'messages':_(_0x5f71ba[_0xbf72('0xcf')])[_0xbf72('0x7f')]({'secret':![]})[_0xbf72('0x2e')](function(_0x29dfd1){return{'date':moment(_0x29dfd1[_0xbf72('0x76')])[_0xbf72('0xb9')](_0xbf72('0xba'))[_0xbf72('0x94')](),'sender':_0x29dfd1[_0xbf72('0xd0')]===_0xbf72('0xe0')?_0x29dfd1[_0xbf72('0xcb')]?_0x29dfd1[_0xbf72('0xcb')][_0xbf72('0x2f')]:_0xbf72('0xe1'):_0x29dfd1[_0xbf72('0xe2')][_0xbf72('0xcd')]+(_0x29dfd1[_0xbf72('0xe2')]['lastName']?'\x20'+_0x29dfd1[_0xbf72('0xe2')][_0xbf72('0xce')]:''),'body':_0x29dfd1[_0xbf72('0x6d')],'direction':_0x29dfd1[_0xbf72('0xd0')]==='out'?'A':'C','secret':_0x29dfd1[_0xbf72('0xd1')],'read':_0x29dfd1[_0xbf72('0x7c')]};})[_0xbf72('0x5e')]()};return ejs[_0xbf72('0xe3')](path[_0xbf72('0xc4')](config[_0xbf72('0xc5')],_0xbf72('0xc6'),'views',_0xbf72('0xe4')),{'interaction':_0x383749})[_0xbf72('0x28')](function(_0x5c77b4){return new BPromise(function(_0x2c14c9,_0xe82795){pdf[_0xbf72('0xae')](_0x5c77b4,_0xc70212)[_0xbf72('0xe5')](path[_0xbf72('0xc4')](_0x16d4cd,_0xbf72('0xe6')+_0x5f71ba['id']+'-'+_0x47defd+_0xbf72('0xe7')),function(_0x1af909,_0x588469){if(_0x1af909)return _0xe82795(_0x1af909);_0x2c14c9(_0x588469);});});})[_0xbf72('0x28')](function(){return new BPromise(function(_0x3b5558,_0xc3eb94){zipdir(_0x16d4cd,{'saveTo':_0x7dbb1},function(_0x2fbc9f,_0x40bf3d){if(_0x2fbc9f)return _0xc3eb94(_0x2fbc9f);return _0x3b5558(_0x40bf3d);});})[_0xbf72('0x28')](function(){return new BPromise(function(_0x308385,_0x24e1fd){rimraf(_0x16d4cd,function(_0xd71399){if(_0xd71399)_0x24e1fd(_0xd71399);return _0x308385();});});})[_0xbf72('0x28')](function(){return _0x15f8f4[_0xbf72('0xc3')](_0x7dbb1,_0x2ac801,function(_0xd36e9a){if(_0xd36e9a){console['log'](_0xbf72('0xe8'),_0xd36e9a);}else{fs[_0xbf72('0xe9')](_0x7dbb1);}});});});}else{return _0x15f8f4['sendStatus'](0xc8);}})['catch'](handleError(_0x15f8f4,null));};