Built motion from commit (unavailable).|2.5.14
[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 _0xdf2e=['model','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','select','field','from','tools_tags','u.id','u.fullname','ui.SmsInteractionId','user_has_sms_interactions','left_join','users','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','me.SmsInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','conditions','find','unreadMessages','value','`\x20=\x200','`\x20>\x200','Contact','operator','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','keys','some','compact','i.SmsAccountId\x20IN\x20?','createdAt','parse','$gte','$lte','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','having','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','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','Sequelize','QueryTypes','clone','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','DESC','t.id\x20IN\x20?','resolve','SmsAccountId','journey','i.SmsAccountId\x20IS\x20NOT\x20NULL','user','role','i.SmsAccountId\x20IS\x20NULL','sequelize','toString','keyBy','merge','a.key','Account.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','i.*','c.firstName','c.lastName','Contact.lastName','c.email','Contact.email','Contact.phone','c.mobile','Contact.mobile','Contact.fax','Owner.fullname','o.internal','Owner.internal','ui.SmsInteractionId\x20IN\x20?','groupBy','SmsInteractionId','all','rows','params','includeAll','create','destroy','describe','addMessage','omit','getMessages','findOne','format','YYYY-MM-DD\x20HH:mm:ss','options','SmsMessage','include','addTags','setTags','ids','spread','findAll','color','emit','removeTags','download','join','root','server','files','attachments','transcript-%d-%s.zip','CmContact','firstName','lastName','Messages','direction','secret','Account','Owner','get','mkdirSync','40px','<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','<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>','%s\x20#%d','Sms','YYYY-MM-DD','N.A.','closed','disposition','System','out','renderFile','views','downloadInteraction.html','toFile','transcript-','.pdf','log','err','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','ejs','lodash','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','save','update','then','error','stack','name','send','Users','map','fullname','TagIds','Tags','split','forEach','push','catch','index','SmsInteraction','rawAttributes','fieldName','type','key'];(function(_0x4565bf,_0x5ad9d6){var _0x5610ba=function(_0x170988){while(--_0x170988){_0x4565bf['push'](_0x4565bf['shift']());}};_0x5610ba(++_0x5ad9d6);}(_0xdf2e,0x1a6));var _0xedf2=function(_0x31b9cf,_0x1a809b){_0x31b9cf=_0x31b9cf-0x0;var _0x357b8a=_0xdf2e[_0x31b9cf];return _0x357b8a;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xedf2('0x0'));var rimraf=require(_0xedf2('0x1'));var zipdir=require(_0xedf2('0x2'));var jsonpatch=require(_0xedf2('0x3'));var rp=require(_0xedf2('0x4'));var moment=require(_0xedf2('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xedf2('0x6'));var util=require(_0xedf2('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xedf2('0x8'));var fs=require('fs');var _=require(_0xedf2('0x9'));var squel=require('squel');var crypto=require(_0xedf2('0xa'));var jsforce=require('jsforce');var deskjs=require(_0xedf2('0xb'));var toCsv=require(_0xedf2('0xc'));var querystring=require(_0xedf2('0xd'));var Papa=require(_0xedf2('0xe'));var Redis=require(_0xedf2('0xf'));var authService=require(_0xedf2('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xedf2('0x11'));var hardwareService=require(_0xedf2('0x12'));var logger=require(_0xedf2('0x13'))(_0xedf2('0x14'));var utils=require('../../config/utils');var config=require(_0xedf2('0x15'));var licenseUtil=require(_0xedf2('0x16'));var db=require(_0xedf2('0x17'))['db'];config['redis']=_[_0xedf2('0x18')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xedf2('0x19')]));require('./smsInteraction.socket')['register'](socket);function respondWithStatusCode(_0x154a3f,_0x54a23c){_0x54a23c=_0x54a23c||0xcc;return function(_0x21d607){if(_0x21d607){return _0x154a3f[_0xedf2('0x1a')](_0x54a23c);}return _0x154a3f[_0xedf2('0x1b')](_0x54a23c)[_0xedf2('0x1c')]();};}function respondWithResult(_0x345181,_0x412506){_0x412506=_0x412506||0xc8;return function(_0x43c0d6){if(_0x43c0d6){return _0x345181[_0xedf2('0x1b')](_0x412506)[_0xedf2('0x1d')](_0x43c0d6);}};}function respondWithFilteredResult(_0x41b699,_0xb3cbee){return function(_0x4e087){if(_0x4e087){var _0x3f163b=_0x4e087[_0xedf2('0x1e')],_0x31bed8=_0xb3cbee[_0xedf2('0x1f')],_0x2d646d=_0xb3cbee[_0xedf2('0x1f')]+_0xb3cbee[_0xedf2('0x20')],_0x4e6f06;if(_0x2d646d>=_0x3f163b){_0x2d646d=_0x3f163b;_0x4e6f06=0xc8;}else{_0x4e6f06=0xce;}_0x41b699[_0xedf2('0x1b')](_0x4e6f06);return _0x41b699[_0xedf2('0x21')](_0xedf2('0x22'),_0x31bed8+'-'+_0x2d646d+'/'+_0x3f163b)['json'](_0x4e087);}return null;};}function patchUpdates(_0x454ad4){return function(_0xdc8c5f){try{jsonpatch[_0xedf2('0x23')](_0xdc8c5f,_0x454ad4,!![]);}catch(_0x1609d6){return BPromise['reject'](_0x1609d6);}return _0xdc8c5f[_0xedf2('0x24')]();};}function saveUpdates(_0x1dfc10,_0x1ff104){return function(_0x188bba){if(_0x188bba){return _0x188bba[_0xedf2('0x25')](_0x1dfc10)['then'](function(_0x34b4ab){return _0x34b4ab;});}return null;};}function removeEntity(_0x5760b0,_0x1144ba){return function(_0x229bfb){if(_0x229bfb){return _0x229bfb['destroy']()[_0xedf2('0x26')](function(){_0x5760b0['status'](0xcc)[_0xedf2('0x1c')]();});}};}function handleEntityNotFound(_0x586c25,_0x420c50){return function(_0x569710){if(!_0x569710){_0x586c25['sendStatus'](0x194);}return _0x569710;};}function handleError(_0x2deb8d,_0x5d30e7){_0x5d30e7=_0x5d30e7||0x1f4;return function(_0x53b03b){logger[_0xedf2('0x27')](_0x53b03b[_0xedf2('0x28')]);if(_0x53b03b[_0xedf2('0x29')]){delete _0x53b03b['name'];}_0x2deb8d['status'](_0x5d30e7)[_0xedf2('0x2a')](_0x53b03b);};}function getInteractionUsers(_0x3566ae,_0x308520){return new BPromise(function(_0x34c529,_0x2b96bb){try{if(_0x308520[_0x3566ae['id']]){_0x3566ae[_0xedf2('0x2b')]=_[_0xedf2('0x2c')](_0x308520[_0x3566ae['id']],function(_0x4d89d9){return{'id':_0x4d89d9['id'],'fullname':_0x4d89d9[_0xedf2('0x2d')]};});}}catch(_0x443ac4){_0x2b96bb(_0x443ac4);}_0x34c529(_0x3566ae);});}function getInteractionTags(_0x179897,_0x8e13b0){return new BPromise(function(_0x1fd654,_0x2cb195){try{if(_0x179897[_0xedf2('0x2e')]){_0x179897[_0xedf2('0x2f')]=[];_0x179897[_0xedf2('0x2e')][_0xedf2('0x30')](',')[_0xedf2('0x31')](function(_0x45be56){_0x179897[_0xedf2('0x2f')][_0xedf2('0x32')](_0x8e13b0[_0x45be56]);});}delete _0x179897[_0xedf2('0x2e')];}catch(_0x1261e3){_0x2cb195(_0x1261e3);}_0x1fd654(_0x179897);});}function updateSmsInteraction(_0x2f98d3,_0x59e95f,_0xb13749){return new BPromise(function(_0x5a9ac8,_0x38e758){return getInteractionUsers(_0x2f98d3,_0xb13749)[_0xedf2('0x26')](function(_0x227dd1){return getInteractionTags(_0x227dd1,_0x59e95f);})[_0xedf2('0x26')](function(_0x20b6b3){_0x5a9ac8(_0x20b6b3);})[_0xedf2('0x33')](function(_0x593545){_0x38e758(_0x593545);});});}exports[_0xedf2('0x34')]=function(_0x273699,_0x256f4c){var _0x3fc342={},_0x4bf766={},_0x15f99c={'count':0x0,'rows':[]};var _0x57ff24=_[_0xedf2('0x2c')](db[_0xedf2('0x35')][_0xedf2('0x36')],function(_0xb23c85){return{'name':_0xb23c85[_0xedf2('0x37')],'type':_0xb23c85[_0xedf2('0x38')][_0xedf2('0x39')]};});_0x4bf766[_0xedf2('0x3a')]=_['map'](_0x57ff24,'name');_0x4bf766[_0xedf2('0x3b')]=_['keys'](_0x273699['query']);_0x4bf766[_0xedf2('0x3c')]=_['intersection'](_0x4bf766['model'],_0x4bf766[_0xedf2('0x3b')]);_0x3fc342[_0xedf2('0x3d')]=_[_0xedf2('0x3e')](_0x4bf766['model'],qs[_0xedf2('0x3f')](_0x273699[_0xedf2('0x3b')]['fields']));_0x3fc342[_0xedf2('0x3d')]=_0x3fc342[_0xedf2('0x3d')][_0xedf2('0x40')]?_0x3fc342[_0xedf2('0x3d')]:_0x4bf766[_0xedf2('0x3a')];if(!_0x273699[_0xedf2('0x3b')][_0xedf2('0x41')](_0xedf2('0x42'))){_0x3fc342['limit']=qs[_0xedf2('0x20')](_0x273699['query'][_0xedf2('0x20')]);_0x3fc342['offset']=qs[_0xedf2('0x1f')](_0x273699[_0xedf2('0x3b')][_0xedf2('0x1f')]);}_0x3fc342[_0xedf2('0x43')]=qs[_0xedf2('0x44')](_0x273699[_0xedf2('0x3b')][_0xedf2('0x44')]);_0x3fc342[_0xedf2('0x45')]=qs['filters'](_[_0xedf2('0x46')](_0x273699['query'],_0x4bf766[_0xedf2('0x3c')]),_0x57ff24);var _0x36e27c=[];var _0x5b8738=squel[_0xedf2('0x47')]()['field']('id')['field'](_0xedf2('0x29'))[_0xedf2('0x48')]('color')[_0xedf2('0x49')](_0xedf2('0x4a'));var _0x193ad3=squel[_0xedf2('0x47')]()[_0xedf2('0x48')](_0xedf2('0x4b'))[_0xedf2('0x48')](_0xedf2('0x4c'))[_0xedf2('0x48')](_0xedf2('0x4d'))['from'](_0xedf2('0x4e'),'ui')[_0xedf2('0x4f')](_0xedf2('0x50'),'u','u.id\x20=\x20ui.UserId');var _0x24fce7=squel['select']()['from']('sms_interactions','i')['left_join'](_0xedf2('0x51'),'c',_0xedf2('0x52'))[_0xedf2('0x4f')](_0xedf2('0x50'),'o',_0xedf2('0x53'))[_0xedf2('0x4f')](_0xedf2('0x54'),'a',_0xedf2('0x55'))[_0xedf2('0x4f')](_0xedf2('0x56'),'me',_0xedf2('0x57'))['left_join']('sms_interaction_has_tags','it','it.SmsInteractionId\x20=\x20i.id')[_0xedf2('0x4f')](_0xedf2('0x4a'),'t',_0xedf2('0x58'));var _0x282b2f=squel[_0xedf2('0x59')]();var _0x1715f3=[];var _0x388d27=squel[_0xedf2('0x59')]();var _0x1aaf74;if(_0x273699[_0xedf2('0x3b')][_0xedf2('0x5a')]){_0x1aaf74=as[_0xedf2('0x5b')](_0x273699[_0xedf2('0x3b')][_0xedf2('0x5a')]);var _0x1cdf81=_0x1aaf74['sqlOperator'];for(var _0x2c992d=0x0;_0x2c992d<_0x1aaf74[_0xedf2('0x5c')][_0xedf2('0x40')];_0x2c992d++){var _0x41e7ab=_0x1aaf74['conditions'][_0x2c992d];var _0x14a5dd='i';var _0x1717eb=_[_0xedf2('0x5d')](_0x57ff24,[_0xedf2('0x29'),_0x41e7ab[_0xedf2('0x48')]]);if(!_0x1717eb){switch(_0x41e7ab[_0xedf2('0x48')]){case _0xedf2('0x5e'):if(_0x41e7ab[_0xedf2('0x5f')]==0x1){_0x24fce7['having']('`'+_0x41e7ab[_0xedf2('0x48')]+_0xedf2('0x60'));}else{_0x24fce7['having']('`'+_0x41e7ab[_0xedf2('0x48')]+_0xedf2('0x61'));}break;case _0xedf2('0x62'):if(_0x41e7ab[_0xedf2('0x63')]==='$substring'){if(_0x41e7ab['value'][_0xedf2('0x30')]('\x20')[_0xedf2('0x40')]>0x1){_0x282b2f[_0x1cdf81](_0xedf2('0x64'),qs[_0xedf2('0x65')](_0x41e7ab[_0xedf2('0x5f')]),null);}else{var _0x50fdb2='%'+_0x41e7ab['value']+'%';_0x282b2f[_0x1cdf81](_0xedf2('0x66'),_0x50fdb2,_0x50fdb2,_0x50fdb2);}}else{_0x1717eb=_[_0xedf2('0x5d')](_0x57ff24,['name',_0xedf2('0x67')]);_0x41e7ab['field']=_0xedf2('0x67');_0x1011cc=as[_0xedf2('0x68')](_0x14a5dd,_0x1717eb[_0xedf2('0x38')],_0x41e7ab);_0x282b2f[_0x1cdf81](_0x1011cc[_0xedf2('0x69')],_0x1011cc[_0xedf2('0x5f')][_0xedf2('0x6a')],_0x1011cc['value'][_0xedf2('0x1c')]);}break;case _0xedf2('0x6b'):var _0x13c0a8=_0x41e7ab['value'][_0xedf2('0x30')](',')[_0xedf2('0x2c')](function(_0x583414){return Number(_0x583414);});_0x13c0a8[_0xedf2('0x31')](function(_0x3ff89f){_0x388d27['or'](_0xedf2('0x6c'),'%,'+_0x3ff89f+',%');});_0x1715f3=_[_0xedf2('0x6d')](_0x1715f3,_0x13c0a8);break;case _0xedf2('0x6e'):if(_0x41e7ab[_0xedf2('0x63')]===_0xedf2('0x6f')){_0x282b2f[_0x1cdf81](_0xedf2('0x70'),'%'+_0x41e7ab[_0xedf2('0x5f')]+'%',null);}else{_0x1717eb=_[_0xedf2('0x5d')](_0x57ff24,['name',_0xedf2('0x71')]);_0x41e7ab['field']=_0xedf2('0x71');_0x1011cc=as[_0xedf2('0x68')](_0x14a5dd,_0x1717eb[_0xedf2('0x38')],_0x41e7ab);_0x282b2f[_0x1cdf81](_0x1011cc['text'],_0x1011cc[_0xedf2('0x5f')][_0xedf2('0x6a')],_0x1011cc[_0xedf2('0x5f')]['end']);}break;case _0xedf2('0x72'):_0x1011cc=as[_0xedf2('0x68')]('me',null,_0x41e7ab);_0x282b2f[_0x1cdf81](_0x1011cc[_0xedf2('0x69')],_0x1011cc[_0xedf2('0x5f')]['start'],_0x1011cc['value']['end']);break;}}else{var _0x1011cc=as[_0xedf2('0x68')](_0x14a5dd,_0x1717eb[_0xedf2('0x38')],_0x41e7ab);_0x282b2f[_0x1cdf81](_0x1011cc['text'],_0x1011cc[_0xedf2('0x5f')][_0xedf2('0x6a')],_0x1011cc['value'][_0xedf2('0x1c')]);}}}else{var _0x16ab8c=_(_0x273699[_0xedf2('0x3b')])[_0xedf2('0x73')]()[_0xedf2('0x2c')](function(_0x41fec4){return _[_0xedf2('0x74')](_0x57ff24,['name',_0x41fec4])?_0x41fec4:undefined;})[_0xedf2('0x75')]()[_0xedf2('0x5f')]();if(!_['isEmpty'](_0x16ab8c)){_0x16ab8c['forEach'](function(_0x47e0c0){if(_0x47e0c0==='SmsAccountId'){_0x24fce7[_0xedf2('0x45')](_0xedf2('0x76'),[]['concat'](_0x273699[_0xedf2('0x3b')][_0x47e0c0]));}else if(_0x47e0c0===_0xedf2('0x77')){var _0x11f4c3=JSON[_0xedf2('0x78')](_0x273699[_0xedf2('0x3b')][_0x47e0c0])[_0xedf2('0x79')];var _0x534e6a=JSON[_0xedf2('0x78')](_0x273699[_0xedf2('0x3b')][_0x47e0c0])[_0xedf2('0x7a')];_0x24fce7[_0xedf2('0x45')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x11f4c3,_0x534e6a);}else{if(_0x273699['query'][_0x47e0c0]===_0xedf2('0x7b')){_0x24fce7['where']('i.'+_0x47e0c0+'\x20IS\x20NULL');}else{_0x24fce7[_0xedf2('0x45')]('i.'+_0x47e0c0+_0xedf2('0x7c'),_0x273699[_0xedf2('0x3b')][_0x47e0c0]);}}});}if(_0x273699[_0xedf2('0x3b')][_0xedf2('0x7d')]){if(_0x273699[_0xedf2('0x3b')][_0xedf2('0x7d')]==0x1){_0x24fce7['having'](_0xedf2('0x7e'));}else{_0x24fce7[_0xedf2('0x7f')](_0xedf2('0x80'));}}if(_0x273699[_0xedf2('0x3b')][_0xedf2('0x81')]){_0x1715f3=_[_0xedf2('0x82')](_0x273699[_0xedf2('0x3b')][_0xedf2('0x81')])?_0x273699[_0xedf2('0x3b')][_0xedf2('0x81')]:new Array(_0x273699[_0xedf2('0x3b')][_0xedf2('0x81')]);_0x1715f3[_0xedf2('0x31')](function(_0x3ef929){_0x388d27['or'](_0xedf2('0x6c'),'%,'+_0x3ef929+',%');});}if(_0x273699[_0xedf2('0x3b')]['filter']){var _0x1fe65c=_0x273699['query'][_0xedf2('0x83')]['replace']('\x5c','\x5c\x5c')[_0xedf2('0x84')](/'/g,'\x27\x27');if(qs[_0xedf2('0x85')](_0x1fe65c)){_0x282b2f['or'](_0xedf2('0x86'),_0x1fe65c+'%')['or']('i.phone\x20LIKE\x20?',_0x1fe65c+'%');}else{_0x282b2f['or'](_0xedf2('0x87'),qs[_0xedf2('0x65')](_0x1fe65c))['or'](_0xedf2('0x88'),_0x1fe65c+'%');}}}_0x24fce7[_0xedf2('0x45')](_0x282b2f);_0x24fce7[_0xedf2('0x89')]('i.id');var _0x2c6b98={'type':db[_0xedf2('0x8a')][_0xedf2('0x8b')]['SELECT'],'raw':!![]};var _0x4c78de=_0x24fce7[_0xedf2('0x8c')]();_0x4c78de[_0xedf2('0x48')](_0xedf2('0x8d'));_0x4c78de[_0xedf2('0x48')](_0xedf2('0x8e'),'unreadMessages');if(_0x3fc342[_0xedf2('0x43')]){_0x3fc342['order']['forEach'](function(_0x443654){var _0x40d997=_0x443654[0x0]===_0xedf2('0x8f')?_0x443654[0x0]:'i.'+_0x443654[0x0];_0x24fce7[_0xedf2('0x43')](_0x40d997,_0x443654[0x1]===_0xedf2('0x90')?![]:!![]);});}if(!_['isEmpty'](_0x1715f3)){_0x24fce7['having'](_0x388d27);_0x4c78de[_0xedf2('0x45')](_0xedf2('0x91'),_0x1715f3);}BPromise[_0xedf2('0x92')]()[_0xedf2('0x26')](function(){if(!_0x1aaf74){if(_0x273699[_0xedf2('0x3b')][_0xedf2('0x93')]||_0x273699['query'][_0xedf2('0x94')])return;_0x4c78de[_0xedf2('0x45')]('i.SmsAccountId\x20IS\x20NOT\x20NULL');_0x24fce7[_0xedf2('0x45')](_0xedf2('0x95'));return;}if(_0x273699[_0xedf2('0x96')][_0xedf2('0x97')]!=='agent')return;return _0x273699[_0xedf2('0x96')]['getSmsAccounts']({'attributes':['id'],'raw':!![]})[_0xedf2('0x26')](function(_0x376875){if(_['isEmpty'](_0x376875)){_0x4c78de[_0xedf2('0x45')](_0xedf2('0x98'));_0x24fce7[_0xedf2('0x45')](_0xedf2('0x98'));}else{_0x4c78de[_0xedf2('0x45')]('i.SmsAccountId\x20IN\x20?',_[_0xedf2('0x2c')](_0x376875,'id'));_0x24fce7[_0xedf2('0x45')](_0xedf2('0x76'),_[_0xedf2('0x2c')](_0x376875,'id'));}});})['then'](function(){if(_0x273699['user'][_0xedf2('0x97')]==='agent'&&!_0x1aaf74&&!_0x273699[_0xedf2('0x3b')][_0xedf2('0x93')])return[];return db[_0xedf2('0x99')][_0xedf2('0x3b')](_0x4c78de[_0xedf2('0x9a')](),_0x2c6b98);})['then'](function(_0x3b95da){_0x15f99c[_0xedf2('0x1e')]=_0x3b95da[_0xedf2('0x40')];if(_0x15f99c[_0xedf2('0x1e')]===0x0)return[];return db['sequelize'][_0xedf2('0x3b')](_0x5b8738[_0xedf2('0x9a')](),_0x2c6b98)[_0xedf2('0x26')](function(_0x1ad5b3){_0x36e27c=_[_0xedf2('0x9b')](_0x1ad5b3,'id');_0x2c6b98=_[_0xedf2('0x9c')](_0x2c6b98,{'model':db[_0xedf2('0x35')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x273699[_0xedf2('0x3b')]['fields']){_0x3fc342[_0xedf2('0x3d')][_0xedf2('0x31')](function(_0x284e13){_0x24fce7['field']('i.'+_0x284e13);});}else{_0x24fce7['field'](_0xedf2('0x8e'),_0xedf2('0x5e'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0x9d'),_0xedf2('0x9e'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0x9f'),_0xedf2('0xa0'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0xa1'),_0xedf2('0x8f'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0xa2'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0xa3'),'Contact.firstName');_0x24fce7[_0xedf2('0x48')](_0xedf2('0xa4'),_0xedf2('0xa5'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0xa6'),_0xedf2('0xa7'));_0x24fce7['field']('c.phone',_0xedf2('0xa8'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0xa9'),_0xedf2('0xaa'));_0x24fce7['field']('c.fax',_0xedf2('0xab'));_0x24fce7['field']('o.fullname',_0xedf2('0xac'));_0x24fce7[_0xedf2('0x48')](_0xedf2('0xad'),_0xedf2('0xae'));_0x24fce7['field']('GROUP_CONCAT(DISTINCT\x20t.id)',_0xedf2('0x2e'));}if(_0x3fc342[_0xedf2('0x20')])_0x24fce7[_0xedf2('0x20')](_0x3fc342[_0xedf2('0x20')]);if(_0x3fc342['offset'])_0x24fce7[_0xedf2('0x1f')](_0x3fc342[_0xedf2('0x1f')]);return db[_0xedf2('0x99')][_0xedf2('0x3b')](_0x24fce7[_0xedf2('0x9a')](),_0x2c6b98);})[_0xedf2('0x26')](function(_0x4b6976){_0x193ad3[_0xedf2('0x45')](_0xedf2('0xaf'),_[_0xedf2('0x2c')](_0x4b6976,'id'));return db[_0xedf2('0x99')][_0xedf2('0x3b')](_0x193ad3[_0xedf2('0x9a')](),_0x2c6b98)[_0xedf2('0x26')](function(_0x3ec983){var _0xfd6e89=_[_0xedf2('0xb0')](_0x3ec983,_0xedf2('0xb1'));var _0xba4056=[];_0x4b6976[_0xedf2('0x31')](function(_0x3f9a8e){_0xba4056['push'](updateSmsInteraction(_0x3f9a8e,_0x36e27c,_0xfd6e89));});return BPromise[_0xedf2('0xb2')](_0xba4056);});});})[_0xedf2('0x26')](function(_0x4fb55b){_0x15f99c[_0xedf2('0xb3')]=_0x4fb55b;return _0x15f99c;})[_0xedf2('0x26')](respondWithFilteredResult(_0x256f4c,_0x3fc342))[_0xedf2('0x33')](handleError(_0x256f4c,null));};exports['show']=function(_0x1638f0,_0x43620d){var _0x2c49f8={'raw':![],'where':{'id':_0x1638f0[_0xedf2('0xb4')]['id']}},_0x31ebc0={};_0x31ebc0[_0xedf2('0x3a')]=_[_0xedf2('0x73')](db[_0xedf2('0x35')]['rawAttributes']);_0x31ebc0[_0xedf2('0x3b')]=_[_0xedf2('0x73')](_0x1638f0['query']);_0x31ebc0[_0xedf2('0x3c')]=_[_0xedf2('0x3e')](_0x31ebc0[_0xedf2('0x3a')],_0x31ebc0[_0xedf2('0x3b')]);_0x2c49f8[_0xedf2('0x3d')]=_[_0xedf2('0x3e')](_0x31ebc0[_0xedf2('0x3a')],qs[_0xedf2('0x3f')](_0x1638f0[_0xedf2('0x3b')][_0xedf2('0x3f')]));_0x2c49f8[_0xedf2('0x3d')]=_0x2c49f8['attributes']['length']?_0x2c49f8[_0xedf2('0x3d')]:_0x31ebc0[_0xedf2('0x3a')];if(_0x1638f0[_0xedf2('0x3b')][_0xedf2('0xb5')]){_0x2c49f8['include']=[{'all':!![]}];}_0x2c49f8=_[_0xedf2('0x9c')]({},_0x2c49f8,_0x1638f0['options']);return db['SmsInteraction'][_0xedf2('0x5d')](_0x2c49f8)[_0xedf2('0x26')](handleEntityNotFound(_0x43620d,null))[_0xedf2('0x26')](respondWithResult(_0x43620d,null))[_0xedf2('0x33')](handleError(_0x43620d,null));};exports[_0xedf2('0xb6')]=function(_0x377d18,_0x2f639c){return db[_0xedf2('0x35')][_0xedf2('0xb6')](_0x377d18[_0xedf2('0x72')],{})[_0xedf2('0x26')](respondWithResult(_0x2f639c,0xc9))['catch'](handleError(_0x2f639c,null));};exports['update']=function(_0x23a316,_0x15e24b){if(_0x23a316[_0xedf2('0x72')]['id']){delete _0x23a316[_0xedf2('0x72')]['id'];}return db[_0xedf2('0x35')][_0xedf2('0x5d')]({'where':{'id':_0x23a316[_0xedf2('0xb4')]['id']}})[_0xedf2('0x26')](handleEntityNotFound(_0x15e24b,null))[_0xedf2('0x26')](saveUpdates(_0x23a316[_0xedf2('0x72')],null))[_0xedf2('0x26')](respondWithResult(_0x15e24b,null))['catch'](handleError(_0x15e24b,null));};exports[_0xedf2('0xb7')]=function(_0x1699d9,_0x3a1f2b){return db[_0xedf2('0x35')]['find']({'where':{'id':_0x1699d9[_0xedf2('0xb4')]['id']}})['then'](handleEntityNotFound(_0x3a1f2b,null))['then'](removeEntity(_0x3a1f2b,null))['catch'](handleError(_0x3a1f2b,null));};exports[_0xedf2('0xb8')]=function(_0x2b3821,_0x3030a4){return db[_0xedf2('0x35')][_0xedf2('0xb8')]()['then'](respondWithResult(_0x3030a4,null))['catch'](handleError(_0x3030a4,null));};exports[_0xedf2('0xb9')]=function(_0x2697c3,_0x414aaa,_0x153a89){return db['SmsMessage'][_0xedf2('0x5d')]({'where':{'id':_0x2697c3['params']['id']}})[_0xedf2('0x26')](handleEntityNotFound(_0x414aaa,null))[_0xedf2('0x26')](function(_0x2388b7){if(_0x2388b7){return _0x2388b7['addMessage'](_0x2697c3[_0xedf2('0x72')]['ids'],_[_0xedf2('0xba')](_0x2697c3[_0xedf2('0x72')],['ids','id'])||{});}})[_0xedf2('0x26')](respondWithResult(_0x414aaa,null))[_0xedf2('0x33')](handleError(_0x414aaa,null));};exports[_0xedf2('0xbb')]=function(_0x58e483,_0x4b5b8e,_0x10faf2){var _0x3c38d9={'raw':![],'where':{}};var _0x3b479f={};var _0x4ac5cf={'count':0x0,'rows':[]};return db[_0xedf2('0x35')][_0xedf2('0xbc')]({'where':{'id':_0x58e483[_0xedf2('0xb4')]['id']}})[_0xedf2('0x26')](handleEntityNotFound(_0x4b5b8e,null))['then'](function(_0x2de551){if(_0x2de551){_0x3b479f[_0xedf2('0x3a')]=_[_0xedf2('0x73')](db['SmsMessage'][_0xedf2('0x36')]);_0x3b479f['query']=_[_0xedf2('0x73')](_0x58e483[_0xedf2('0x3b')]);_0x3b479f[_0xedf2('0x3c')]=_[_0xedf2('0x3e')](_0x3b479f[_0xedf2('0x3a')],_0x3b479f['query']);_0x3c38d9['attributes']=_[_0xedf2('0x3e')](_0x3b479f[_0xedf2('0x3a')],qs['fields'](_0x58e483[_0xedf2('0x3b')][_0xedf2('0x3f')]));_0x3c38d9[_0xedf2('0x3d')]=_0x3c38d9[_0xedf2('0x3d')][_0xedf2('0x40')]?_0x3c38d9['attributes']:_0x3b479f[_0xedf2('0x3a')];if(!_0x58e483['query']['hasOwnProperty']('nolimit')){_0x3c38d9[_0xedf2('0x20')]=qs['limit'](_0x58e483[_0xedf2('0x3b')][_0xedf2('0x20')]);_0x3c38d9[_0xedf2('0x1f')]=qs['offset'](_0x58e483[_0xedf2('0x3b')][_0xedf2('0x1f')]);}_0x3c38d9['order']=qs[_0xedf2('0x44')](_0x58e483[_0xedf2('0x3b')]['sort']);_0x3c38d9[_0xedf2('0x45')]=qs[_0xedf2('0x3c')](_[_0xedf2('0x46')](_0x58e483['query'],_0x3b479f[_0xedf2('0x3c')]));_0x3c38d9[_0xedf2('0x45')][_0xedf2('0xb1')]=_0x2de551['id'];if(_0x58e483[_0xedf2('0x3b')][_0xedf2('0x83')]){_0x3c38d9['where']=_[_0xedf2('0x9c')](_0x3c38d9[_0xedf2('0x45')],{'$or':_[_0xedf2('0x2c')](_0x3c38d9[_0xedf2('0x3d')],function(_0x25aed2){var _0x529c6e={};_0x529c6e[_0x25aed2]={'$like':'%'+_0x58e483[_0xedf2('0x3b')]['filter']+'%'};return _0x529c6e;})});}if(_0x58e483[_0xedf2('0x3b')][_0xedf2('0x79')]){var _0x5a7375=_0x58e483['query']['$gte'][_0xedf2('0x30')](',');var _0x18dc4b={};_0x18dc4b[_0x5a7375[0x0]]={'$gte':moment(_0x5a7375[0x1])[_0xedf2('0xbd')](_0xedf2('0xbe'))};_0x3c38d9[_0xedf2('0x45')]=_[_0xedf2('0x9c')](_0x3c38d9[_0xedf2('0x45')],_0x18dc4b);}_0x3c38d9=_[_0xedf2('0x9c')]({},_0x3c38d9,_0x58e483[_0xedf2('0xbf')]);return db[_0xedf2('0xc0')]['count']({'where':_0x3c38d9[_0xedf2('0x45')]})[_0xedf2('0x26')](function(_0x1f7c00){_0x4ac5cf['count']=_0x1f7c00;if(_0x58e483['query']['includeAll']){_0x3c38d9[_0xedf2('0xc1')]=[{'all':!![]}];}return db[_0xedf2('0xc0')]['findAll'](_0x3c38d9);})[_0xedf2('0x26')](function(_0x2474ef){_0x4ac5cf[_0xedf2('0xb3')]=_0x2474ef;return _0x4ac5cf;});}})[_0xedf2('0x26')](respondWithFilteredResult(_0x4b5b8e,_0x3c38d9))[_0xedf2('0x33')](handleError(_0x4b5b8e,null));};exports[_0xedf2('0xc2')]=function(_0x48d1b3,_0x30ed4d,_0x41d941){return db[_0xedf2('0x35')]['find']({'where':{'id':_0x48d1b3['params']['id']}})[_0xedf2('0x26')](handleEntityNotFound(_0x30ed4d,null))[_0xedf2('0x26')](function(_0x14320e){if(_0x14320e){return _0x14320e[_0xedf2('0xc3')](_0x48d1b3[_0xedf2('0x72')][_0xedf2('0xc4')],_['omit'](_0x48d1b3[_0xedf2('0x72')],[_0xedf2('0xc4'),'id'])||{})[_0xedf2('0xc5')](function(){return db[_0xedf2('0x6b')][_0xedf2('0xc6')]({'attributes':['id',_0xedf2('0x29'),_0xedf2('0xc7')],'where':{'id':_0x48d1b3[_0xedf2('0x72')][_0xedf2('0xc4')]}});})[_0xedf2('0x26')](function(_0x2709e6){socket[_0xedf2('0xc8')]('smsInteractionTags:save',{'id':Number(_0x48d1b3[_0xedf2('0xb4')]['id']),'tags':_0x2709e6||[]});return{'id':Number(_0x48d1b3[_0xedf2('0xb4')]['id']),'tags':_0x2709e6||[]};});}})[_0xedf2('0x26')](respondWithResult(_0x30ed4d,null))[_0xedf2('0x33')](handleError(_0x30ed4d,null));};exports['removeTags']=function(_0xab6cd2,_0x248c61,_0x4af751){return db[_0xedf2('0x35')]['find']({'where':{'id':_0xab6cd2[_0xedf2('0xb4')]['id']}})[_0xedf2('0x26')](handleEntityNotFound(_0x248c61,null))['then'](function(_0x2aea2c){if(_0x2aea2c){return _0x2aea2c[_0xedf2('0xc9')](_0xab6cd2['query'][_0xedf2('0xc4')]);}})[_0xedf2('0x26')](respondWithStatusCode(_0x248c61,null))['catch'](handleError(_0x248c61,null));};exports[_0xedf2('0xca')]=function(_0x1257c7,_0x40c6f1){var _0x203509=moment()['unix']()[_0xedf2('0x9a')]();var _0x17935d=path[_0xedf2('0xcb')](config[_0xedf2('0xcc')],_0xedf2('0xcd'),_0xedf2('0xce'),'tmp');var _0x38aa0d=path[_0xedf2('0xcb')](config[_0xedf2('0xcc')],_0xedf2('0xcd'),_0xedf2('0xce'),_0xedf2('0xcf'));var _0x1487f0=path[_0xedf2('0xcb')](_0x17935d,_0x203509);var _0x48f891=util[_0xedf2('0xbd')](_0xedf2('0xd0'),_0x1257c7[_0xedf2('0xb4')]['id'],_0x203509);var _0x3856a0=path[_0xedf2('0xcb')](_0x17935d,_0x48f891);var _0x2342c9=[];_0x2342c9['push']({'model':db[_0xedf2('0x6e')],'as':_0xedf2('0x6e'),'attributes':['id',_0xedf2('0x2d')],'raw':!![]});_0x2342c9['push']({'model':db[_0xedf2('0xd1')],'as':_0xedf2('0x62'),'attributes':['id',_0xedf2('0xd2'),_0xedf2('0xd3')],'raw':!![]});var _0x321def=[{'model':db[_0xedf2('0xc0')],'as':_0xedf2('0xd4'),'attributes':['id','body',_0xedf2('0x77'),_0xedf2('0xd5'),_0xedf2('0xd6'),_0xedf2('0x7d')],'include':_0x2342c9}];_0x321def[_0xedf2('0x32')]({'model':db['SmsAccount'],'as':_0xedf2('0xd7'),'attributes':['id',_0xedf2('0x29')]});_0x321def['push']({'model':db['User'],'as':_0xedf2('0xd8'),'attributes':['id',_0xedf2('0x2d')]});return db['SmsInteraction'][_0xedf2('0x5d')]({'where':{'id':_0x1257c7[_0xedf2('0xb4')]['id']},'include':_0x321def})[_0xedf2('0x26')](handleEntityNotFound(_0x40c6f1,null))[_0xedf2('0x26')](function(_0x217a3c){if(_0x217a3c){var _0x3dbdc4=_0x217a3c[_0xedf2('0xd9')]({'plain':!![]});fs[_0xedf2('0xda')](_0x1487f0);var _0x2480c7={'format':'A4','border':'10px','header':{'height':_0xedf2('0xdb'),'contents':{'first':_0xedf2('0xdc')}},'footer':{'height':_0xedf2('0xdd'),'contents':{'default':util['format'](_0xedf2('0xde'),util['format'](_0xedf2('0xdf'),_0xedf2('0xe0'),_0x3dbdc4['id']),moment()['format'](_0xedf2('0xe1'))[_0xedf2('0x9a')]())}}};var _0x3695da={'channel':_0xedf2('0xe0'),'account':_0x3dbdc4['Account'][_0xedf2('0x29')],'agent':_0x3dbdc4[_0xedf2('0xd8')]?_0x3dbdc4[_0xedf2('0xd8')]['fullname']:_0xedf2('0xe2'),'createdAt':moment(_0x3dbdc4[_0xedf2('0x77')])[_0xedf2('0xbd')](_0xedf2('0xbe'))[_0xedf2('0x9a')](),'closedAt':_0x3dbdc4[_0xedf2('0xe3')]?moment(_0x3dbdc4['closedAt'])[_0xedf2('0xbd')](_0xedf2('0xbe'))[_0xedf2('0x9a')]():'','disposition':_0x3dbdc4[_0xedf2('0xe4')],'messages':_(_0x3dbdc4[_0xedf2('0xd4')])[_0xedf2('0x83')]({'secret':![]})[_0xedf2('0x2c')](function(_0x1e632c){return{'date':moment(_0x1e632c[_0xedf2('0x77')])[_0xedf2('0xbd')](_0xedf2('0xbe'))[_0xedf2('0x9a')](),'sender':_0x1e632c[_0xedf2('0xd5')]==='out'?_0x1e632c[_0xedf2('0x6e')]?_0x1e632c[_0xedf2('0x6e')][_0xedf2('0x2d')]:_0xedf2('0xe5'):_0x1e632c[_0xedf2('0x62')][_0xedf2('0xd2')]+(_0x1e632c[_0xedf2('0x62')]['lastName']?'\x20'+_0x1e632c[_0xedf2('0x62')][_0xedf2('0xd3')]:''),'body':_0x1e632c[_0xedf2('0x72')],'direction':_0x1e632c[_0xedf2('0xd5')]===_0xedf2('0xe6')?'A':'C','secret':_0x1e632c[_0xedf2('0xd6')],'read':_0x1e632c[_0xedf2('0x7d')]};})[_0xedf2('0x5f')]()};return ejs[_0xedf2('0xe7')](path[_0xedf2('0xcb')](config[_0xedf2('0xcc')],_0xedf2('0xcd'),_0xedf2('0xe8'),_0xedf2('0xe9')),{'interaction':_0x3695da})[_0xedf2('0x26')](function(_0x1a252f){return new BPromise(function(_0x485b98,_0x102817){pdf[_0xedf2('0xb6')](_0x1a252f,_0x2480c7)[_0xedf2('0xea')](path[_0xedf2('0xcb')](_0x1487f0,_0xedf2('0xeb')+_0x3dbdc4['id']+'-'+_0x203509+_0xedf2('0xec')),function(_0x49245f,_0x74a693){if(_0x49245f)return _0x102817(_0x49245f);_0x485b98(_0x74a693);});});})[_0xedf2('0x26')](function(){return new BPromise(function(_0x1dafe4,_0x3d60d8){zipdir(_0x1487f0,{'saveTo':_0x3856a0},function(_0x5d831b,_0x343499){if(_0x5d831b)return _0x3d60d8(_0x5d831b);return _0x1dafe4(_0x343499);});})[_0xedf2('0x26')](function(){return new BPromise(function(_0x245961,_0x1a124a){rimraf(_0x1487f0,function(_0x3cb7f7){if(_0x3cb7f7)_0x1a124a(_0x3cb7f7);return _0x245961();});});})[_0xedf2('0x26')](function(){return _0x40c6f1[_0xedf2('0xca')](_0x3856a0,_0x48f891,function(_0x514b0f){if(_0x514b0f){console[_0xedf2('0xed')](_0xedf2('0xee'),_0x514b0f);}else{fs[_0xedf2('0xef')](_0x3856a0);}});});});}else{return _0x40c6f1[_0xedf2('0x1a')](0xc8);}})['catch'](handleError(_0x40c6f1,null));};