Built motion from commit (unavailable).|2.5.2
[motion2.git] / server / api / openchannelInteraction / openchannelInteraction.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 _0x09dd=['union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','buildExpression','text','body','some','OpenchannelAccountId','i.OpenchannelAccountId\x20IN\x20?','$gte','parse','$lte','null','\x20IS\x20NULL','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','\x27\x27\x27\x27','isNumeric','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','Sequelize','QueryTypes','SELECT','clone','i.id','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','isEmpty','t.id\x20IN\x20?','resolve','i.OpenchannelAccountId\x20IS\x20NOT\x20NULL','user','getOpenchannelAccounts','i.OpenchannelAccountId\x20IS\x20NULL','sequelize','keyBy','unreadMessages','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','toString','ui.OpenchannelInteractionId\x20IN\x20?','groupBy','OpenchannelInteractionId','rows','params','includeAll','include','merge','options','catch','create','describe','addMessage','omit','getMessages','findOne','OpenchannelMessage','format','YYYY-MM-DD\x20HH:mm:ss','findAll','setTags','ids','spread','removeTags','download','unix','join','root','server','attachments','transcript-%d-%s.zip','firstName','Attachment','Messages','createdAt','direction','secret','Account','Owner','mkdirSync','10px','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>','Openchannel','closed','threadId','Public','Private','basename','existsSync','createReadStream','System','Contact','lastName','out','renderFile','views','downloadInteraction.html','toFile','transcript-','.pdf','err','unlinkSync','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','sendStatus','status','end','json','count','offset','limit','set','apply','reject','update','destroy','then','error','stack','name','send','Users','map','fullname','Tags','TagIds','split','forEach','push','index','OpenchannelInteraction','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','order','sort','where','pick','field','color','tools_tags','select','u.id','u.fullname','ui.OpenchannelInteractionId','user_has_openchannel_interactions','left_join','users','from','openchannel_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','openchannel_accounts','a.id\x20=\x20i.OpenchannelAccountId','me.OpenchannelInteractionId\x20=\x20i.id','it.OpenchannelInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','length','find','value','having','`\x20=\x200','`\x20>\x200','operator','$substring','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','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?'];(function(_0x1677aa,_0xb43fb2){var _0x290728=function(_0x5d980a){while(--_0x5d980a){_0x1677aa['push'](_0x1677aa['shift']());}};_0x290728(++_0xb43fb2);}(_0x09dd,0x81));var _0xd09d=function(_0xa650fb,_0x104a00){_0xa650fb=_0xa650fb-0x0;var _0x99f4de=_0x09dd[_0xa650fb];return _0x99f4de;};'use strict';var pdf=require(_0xd09d('0x0'));var emlformat=require(_0xd09d('0x1'));var rimraf=require(_0xd09d('0x2'));var zipdir=require(_0xd09d('0x3'));var jsonpatch=require(_0xd09d('0x4'));var rp=require(_0xd09d('0x5'));var moment=require(_0xd09d('0x6'));var BPromise=require(_0xd09d('0x7'));var Mustache=require(_0xd09d('0x8'));var util=require(_0xd09d('0x9'));var path=require(_0xd09d('0xa'));var sox=require(_0xd09d('0xb'));var csv=require(_0xd09d('0xc'));var ejs=require(_0xd09d('0xd'));var fs=require('fs');var _=require('lodash');var squel=require(_0xd09d('0xe'));var crypto=require(_0xd09d('0xf'));var jsforce=require(_0xd09d('0x10'));var deskjs=require(_0xd09d('0x11'));var toCsv=require(_0xd09d('0xc'));var querystring=require(_0xd09d('0x12'));var Papa=require(_0xd09d('0x13'));var Redis=require('ioredis');var authService=require(_0xd09d('0x14'));var qs=require(_0xd09d('0x15'));var as=require(_0xd09d('0x16'));var hardwareService=require(_0xd09d('0x17'));var logger=require(_0xd09d('0x18'))('api');var utils=require(_0xd09d('0x19'));var config=require(_0xd09d('0x1a'));var db=require(_0xd09d('0x1b'))['db'];config[_0xd09d('0x1c')]=_[_0xd09d('0x1d')](config[_0xd09d('0x1c')],{'host':_0xd09d('0x1e'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd09d('0x1c')]));require('./openchannelInteraction.socket')['register'](socket);function respondWithStatusCode(_0x532b76,_0x24aae0){_0x24aae0=_0x24aae0||0xcc;return function(_0x2a3342){if(_0x2a3342){return _0x532b76[_0xd09d('0x1f')](_0x24aae0);}return _0x532b76[_0xd09d('0x20')](_0x24aae0)[_0xd09d('0x21')]();};}function respondWithResult(_0x48e9db,_0x435cff){_0x435cff=_0x435cff||0xc8;return function(_0x39bc63){if(_0x39bc63){return _0x48e9db['status'](_0x435cff)[_0xd09d('0x22')](_0x39bc63);}};}function respondWithFilteredResult(_0x53870a,_0x1a1b40){return function(_0x1a22f4){if(_0x1a22f4){var _0x4fe417=_0x1a22f4[_0xd09d('0x23')],_0x26cc6e=_0x1a1b40['offset'],_0x23c47f=_0x1a1b40[_0xd09d('0x24')]+_0x1a1b40[_0xd09d('0x25')],_0x23bea4;if(_0x23c47f>=_0x4fe417){_0x23c47f=_0x4fe417;_0x23bea4=0xc8;}else{_0x23bea4=0xce;}_0x53870a[_0xd09d('0x20')](_0x23bea4);return _0x53870a[_0xd09d('0x26')]('Content-Range',_0x26cc6e+'-'+_0x23c47f+'/'+_0x4fe417)['json'](_0x1a22f4);}return null;};}function patchUpdates(_0x549b19){return function(_0x223a73){try{jsonpatch[_0xd09d('0x27')](_0x223a73,_0x549b19,!![]);}catch(_0x5e7f4f){return BPromise[_0xd09d('0x28')](_0x5e7f4f);}return _0x223a73['save']();};}function saveUpdates(_0x545488,_0x4b9e21){return function(_0x26159d){if(_0x26159d){return _0x26159d[_0xd09d('0x29')](_0x545488)['then'](function(_0x4fdbb0){return _0x4fdbb0;});}return null;};}function removeEntity(_0x447245,_0x2e9bbe){return function(_0x1170bf){if(_0x1170bf){return _0x1170bf[_0xd09d('0x2a')]()[_0xd09d('0x2b')](function(){_0x447245[_0xd09d('0x20')](0xcc)['end']();});}};}function handleEntityNotFound(_0x9a0d56,_0x498995){return function(_0x1f7d0d){if(!_0x1f7d0d){_0x9a0d56[_0xd09d('0x1f')](0x194);}return _0x1f7d0d;};}function handleError(_0x16bc15,_0x411a15){_0x411a15=_0x411a15||0x1f4;return function(_0xbae01c){logger[_0xd09d('0x2c')](_0xbae01c[_0xd09d('0x2d')]);if(_0xbae01c[_0xd09d('0x2e')]){delete _0xbae01c[_0xd09d('0x2e')];}_0x16bc15[_0xd09d('0x20')](_0x411a15)[_0xd09d('0x2f')](_0xbae01c);};}function getInteractionUsers(_0x3dfa3a,_0x5a0dfd){return new BPromise(function(_0x2628cc,_0x314d88){try{if(_0x5a0dfd[_0x3dfa3a['id']]){_0x3dfa3a[_0xd09d('0x30')]=_[_0xd09d('0x31')](_0x5a0dfd[_0x3dfa3a['id']],function(_0xe42b0b){return{'id':_0xe42b0b['id'],'fullname':_0xe42b0b[_0xd09d('0x32')]};});}}catch(_0x211eea){_0x314d88(_0x211eea);}_0x2628cc(_0x3dfa3a);});}function getInteractionTags(_0x47ae4d,_0x124c41){return new BPromise(function(_0x3f6ee9,_0x5a6e0f){try{if(_0x47ae4d['TagIds']){_0x47ae4d[_0xd09d('0x33')]=[];_0x47ae4d[_0xd09d('0x34')][_0xd09d('0x35')](',')[_0xd09d('0x36')](function(_0x3ce1e){_0x47ae4d[_0xd09d('0x33')][_0xd09d('0x37')](_0x124c41[_0x3ce1e]);});}delete _0x47ae4d['TagIds'];}catch(_0x5b8d46){_0x5a6e0f(_0x5b8d46);}_0x3f6ee9(_0x47ae4d);});}function updateOpenchannelInteraction(_0x1c59c6,_0x1b7674,_0x8b95fb){return new BPromise(function(_0x3547c3,_0xc73570){return getInteractionUsers(_0x1c59c6,_0x8b95fb)['then'](function(_0x4fc54e){return getInteractionTags(_0x4fc54e,_0x1b7674);})['then'](function(_0xfee3be){_0x3547c3(_0xfee3be);})['catch'](function(_0x51dcf4){_0xc73570(_0x51dcf4);});});}exports[_0xd09d('0x38')]=function(_0x265ee4,_0x3f0e12){var _0xfc5fef={},_0x7580f7={},_0x3d7543={'count':0x0,'rows':[]};var _0x4e81d6=_[_0xd09d('0x31')](db[_0xd09d('0x39')][_0xd09d('0x3a')],function(_0x43cfe2){return{'name':_0x43cfe2['fieldName'],'type':_0x43cfe2[_0xd09d('0x3b')][_0xd09d('0x3c')]};});_0x7580f7[_0xd09d('0x3d')]=_[_0xd09d('0x31')](_0x4e81d6,_0xd09d('0x2e'));_0x7580f7[_0xd09d('0x3e')]=_[_0xd09d('0x3f')](_0x265ee4['query']);_0x7580f7[_0xd09d('0x40')]=_[_0xd09d('0x41')](_0x7580f7[_0xd09d('0x3d')],_0x7580f7[_0xd09d('0x3e')]);_0xfc5fef[_0xd09d('0x42')]=_['intersection'](_0x7580f7['model'],qs[_0xd09d('0x43')](_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x43')]));_0xfc5fef[_0xd09d('0x42')]=_0xfc5fef[_0xd09d('0x42')]['length']?_0xfc5fef['attributes']:_0x7580f7[_0xd09d('0x3d')];if(!_0x265ee4['query'][_0xd09d('0x44')]('nolimit')){_0xfc5fef[_0xd09d('0x25')]=qs['limit'](_0x265ee4['query'][_0xd09d('0x25')]);_0xfc5fef[_0xd09d('0x24')]=qs[_0xd09d('0x24')](_0x265ee4[_0xd09d('0x3e')]['offset']);}_0xfc5fef[_0xd09d('0x45')]=qs[_0xd09d('0x46')](_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x46')]);_0xfc5fef[_0xd09d('0x47')]=qs[_0xd09d('0x40')](_[_0xd09d('0x48')](_0x265ee4[_0xd09d('0x3e')],_0x7580f7[_0xd09d('0x40')]),_0x4e81d6);var _0x1290f3=[];var _0x26ecd2=squel['select']()['field']('id')[_0xd09d('0x49')](_0xd09d('0x2e'))['field'](_0xd09d('0x4a'))['from'](_0xd09d('0x4b'));var _0x3b9cc9=squel[_0xd09d('0x4c')]()['field'](_0xd09d('0x4d'))[_0xd09d('0x49')](_0xd09d('0x4e'))[_0xd09d('0x49')](_0xd09d('0x4f'))['from'](_0xd09d('0x50'),'ui')[_0xd09d('0x51')](_0xd09d('0x52'),'u','u.id\x20=\x20ui.UserId');var _0x44978b=squel[_0xd09d('0x4c')]()[_0xd09d('0x53')](_0xd09d('0x54'),'i')[_0xd09d('0x51')](_0xd09d('0x55'),'c',_0xd09d('0x56'))[_0xd09d('0x51')](_0xd09d('0x52'),'o',_0xd09d('0x57'))['left_join'](_0xd09d('0x58'),'a',_0xd09d('0x59'))[_0xd09d('0x51')]('openchannel_messages','me',_0xd09d('0x5a'))[_0xd09d('0x51')]('openchannel_interaction_has_tags','it',_0xd09d('0x5b'))[_0xd09d('0x51')](_0xd09d('0x4b'),'t',_0xd09d('0x5c'));var _0x191d9b=squel[_0xd09d('0x5d')]();var _0xe64c1e=[];var _0x4cd941=squel[_0xd09d('0x5d')]();var _0x4bf50b;if(_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x5e')]){_0x4bf50b=as[_0xd09d('0x5f')](_0x265ee4['query']['search']);var _0x5cc5cb=_0x4bf50b[_0xd09d('0x60')];for(var _0x33e041=0x0;_0x33e041<_0x4bf50b[_0xd09d('0x61')][_0xd09d('0x62')];_0x33e041++){var _0x5a39a0=_0x4bf50b['conditions'][_0x33e041];var _0x302b23='i';var _0x5378be=_[_0xd09d('0x63')](_0x4e81d6,[_0xd09d('0x2e'),_0x5a39a0[_0xd09d('0x49')]]);if(!_0x5378be){switch(_0x5a39a0[_0xd09d('0x49')]){case'unreadMessages':if(_0x5a39a0[_0xd09d('0x64')]==0x1){_0x44978b[_0xd09d('0x65')]('`'+_0x5a39a0['field']+_0xd09d('0x66'));}else{_0x44978b[_0xd09d('0x65')]('`'+_0x5a39a0[_0xd09d('0x49')]+_0xd09d('0x67'));}break;case'Contact':if(_0x5a39a0[_0xd09d('0x68')]===_0xd09d('0x69')){if(_0x5a39a0[_0xd09d('0x64')][_0xd09d('0x35')]('\x20')['length']>0x1){_0x191d9b[_0x5cc5cb](_0xd09d('0x6a'),qs[_0xd09d('0x6b')](_0x5a39a0['value']),null);}else{var _0x296ba3='%'+_0x5a39a0[_0xd09d('0x64')]+'%';_0x191d9b[_0x5cc5cb](_0xd09d('0x6c'),_0x296ba3,_0x296ba3,_0x296ba3);}}else{_0x5378be=_[_0xd09d('0x63')](_0x4e81d6,['name',_0xd09d('0x6d')]);_0x5a39a0['field']=_0xd09d('0x6d');_0x5198fb=as['buildExpression'](_0x302b23,_0x5378be['type'],_0x5a39a0);_0x191d9b[_0x5cc5cb](_0x5198fb['text'],_0x5198fb['value'][_0xd09d('0x6e')],_0x5198fb['value']['end']);}break;case _0xd09d('0x6f'):var _0x4caa78=_0x5a39a0['value'][_0xd09d('0x35')](',')[_0xd09d('0x31')](function(_0x18e497){return Number(_0x18e497);});_0x4caa78[_0xd09d('0x36')](function(_0x361313){_0x4cd941['or'](_0xd09d('0x70'),'%,'+_0x361313+',%');});_0xe64c1e=_[_0xd09d('0x71')](_0xe64c1e,_0x4caa78);break;case _0xd09d('0x72'):if(_0x5a39a0[_0xd09d('0x68')]==='$substring'){_0x191d9b[_0x5cc5cb](_0xd09d('0x73'),'%'+_0x5a39a0['value']+'%',null);}else{_0x5378be=_['find'](_0x4e81d6,[_0xd09d('0x2e'),_0xd09d('0x74')]);_0x5a39a0['field']=_0xd09d('0x74');_0x5198fb=as[_0xd09d('0x75')](_0x302b23,_0x5378be[_0xd09d('0x3b')],_0x5a39a0);_0x191d9b[_0x5cc5cb](_0x5198fb[_0xd09d('0x76')],_0x5198fb[_0xd09d('0x64')][_0xd09d('0x6e')],_0x5198fb[_0xd09d('0x64')][_0xd09d('0x21')]);}break;case _0xd09d('0x77'):_0x5198fb=as['buildExpression']('me',null,_0x5a39a0);_0x191d9b[_0x5cc5cb](_0x5198fb[_0xd09d('0x76')],_0x5198fb[_0xd09d('0x64')][_0xd09d('0x6e')],_0x5198fb[_0xd09d('0x64')][_0xd09d('0x21')]);break;}}else{var _0x5198fb=as[_0xd09d('0x75')](_0x302b23,_0x5378be[_0xd09d('0x3b')],_0x5a39a0);_0x191d9b[_0x5cc5cb](_0x5198fb['text'],_0x5198fb['value'][_0xd09d('0x6e')],_0x5198fb[_0xd09d('0x64')][_0xd09d('0x21')]);}}}else{var _0x561383=_(_0x265ee4['query'])['keys']()[_0xd09d('0x31')](function(_0x1130c0){return _[_0xd09d('0x78')](_0x4e81d6,[_0xd09d('0x2e'),_0x1130c0])?_0x1130c0:undefined;})['compact']()[_0xd09d('0x64')]();if(!_['isEmpty'](_0x561383)){_0x561383['forEach'](function(_0x506708){if(_0x506708===_0xd09d('0x79')){_0x44978b['where'](_0xd09d('0x7a'),[]['concat'](_0x265ee4[_0xd09d('0x3e')][_0x506708]));}else if(_0x506708==='createdAt'){var _0x26ac92=JSON['parse'](_0x265ee4['query'][_0x506708])[_0xd09d('0x7b')];var _0x2a7200=JSON[_0xd09d('0x7c')](_0x265ee4['query'][_0x506708])[_0xd09d('0x7d')];_0x44978b[_0xd09d('0x47')]('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x26ac92,_0x2a7200);}else{if(_0x265ee4[_0xd09d('0x3e')][_0x506708]===_0xd09d('0x7e')){_0x44978b[_0xd09d('0x47')]('i.'+_0x506708+_0xd09d('0x7f'));}else{_0x44978b[_0xd09d('0x47')]('i.'+_0x506708+'\x20=\x20?',_0x265ee4['query'][_0x506708]);}}});}if(_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x80')]){if(_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x80')]==0x1){_0x44978b['having'](_0xd09d('0x81'));}else{_0x44978b[_0xd09d('0x65')](_0xd09d('0x82'));}}if(_0x265ee4['query'][_0xd09d('0x83')]){_0xe64c1e=_[_0xd09d('0x84')](_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x83')])?_0x265ee4['query'][_0xd09d('0x83')]:new Array(_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x83')]);_0xe64c1e[_0xd09d('0x36')](function(_0x515c6e){_0x4cd941['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x515c6e+',%');});}if(_0x265ee4['query'][_0xd09d('0x85')]){var _0x543610=_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x85')][_0xd09d('0x86')]('\x5c','\x5c\x5c')[_0xd09d('0x86')]('\x27\x27',_0xd09d('0x87'));if(qs[_0xd09d('0x88')](_0x543610)){_0x191d9b['or']('i.id\x20LIKE\x20?',_0x543610+'%');}else{_0x191d9b['or'](_0xd09d('0x89'),qs['getFullTextValue'](_0x543610))['or']('i.from\x20LIKE\x20?',_0x543610+'%')['or'](_0xd09d('0x8a'),_0x543610+'%');}}}_0x44978b[_0xd09d('0x47')](_0x191d9b);_0x44978b[_0xd09d('0x8b')]('i.id');var _0x52c936={'type':db[_0xd09d('0x8c')][_0xd09d('0x8d')][_0xd09d('0x8e')],'raw':!![]};var _0x4334f3=_0x44978b[_0xd09d('0x8f')]();_0x4334f3['field'](_0xd09d('0x90'));_0x4334f3[_0xd09d('0x49')](_0xd09d('0x91'),'unreadMessages');if(_0xfc5fef[_0xd09d('0x45')]){_0xfc5fef['order'][_0xd09d('0x36')](function(_0x3f88b9){_0x44978b[_0xd09d('0x45')]('i.'+_0x3f88b9[0x0],_0x3f88b9[0x1]==='DESC'?![]:!![]);});}if(!_[_0xd09d('0x92')](_0xe64c1e)){_0x44978b[_0xd09d('0x65')](_0x4cd941);_0x4334f3['where'](_0xd09d('0x93'),_0xe64c1e);}BPromise[_0xd09d('0x94')]()[_0xd09d('0x2b')](function(){if(!_0x4bf50b){if(_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x79')]||_0x265ee4[_0xd09d('0x3e')]['journey'])return;_0x4334f3['where'](_0xd09d('0x95'));_0x44978b[_0xd09d('0x47')](_0xd09d('0x95'));return;}return _0x265ee4[_0xd09d('0x96')][_0xd09d('0x97')]({'attributes':['id'],'raw':!![]})['then'](function(_0x4aa735){if(_['isEmpty'](_0x4aa735)){_0x4334f3['where'](_0xd09d('0x98'));_0x44978b[_0xd09d('0x47')]('i.OpenchannelAccountId\x20IS\x20NULL');}else{_0x4334f3['where']('i.OpenchannelAccountId\x20IN\x20?',_[_0xd09d('0x31')](_0x4aa735,'id'));_0x44978b[_0xd09d('0x47')](_0xd09d('0x7a'),_[_0xd09d('0x31')](_0x4aa735,'id'));}});})[_0xd09d('0x2b')](function(){db[_0xd09d('0x99')][_0xd09d('0x3e')](_0x4334f3['toString'](),_0x52c936)[_0xd09d('0x2b')](function(_0x2f327c){_0x3d7543['count']=_0x2f327c['length'];if(_0x3d7543['count']===0x0)return[];return db[_0xd09d('0x99')][_0xd09d('0x3e')](_0x26ecd2['toString'](),_0x52c936)['then'](function(_0x480a09){_0x1290f3=_[_0xd09d('0x9a')](_0x480a09,'id');_0x52c936=_['merge'](_0x52c936,{'model':db[_0xd09d('0x39')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x265ee4[_0xd09d('0x3e')][_0xd09d('0x43')]){_0xfc5fef[_0xd09d('0x42')][_0xd09d('0x36')](function(_0x323c71){_0x44978b[_0xd09d('0x49')]('i.'+_0x323c71);});}else{_0x44978b[_0xd09d('0x49')](_0xd09d('0x91'),_0xd09d('0x9b'));_0x44978b[_0xd09d('0x49')](_0xd09d('0x9c'),_0xd09d('0x9d'));_0x44978b[_0xd09d('0x49')](_0xd09d('0x9e'),_0xd09d('0x9f'));_0x44978b[_0xd09d('0x49')](_0xd09d('0xa0'));_0x44978b['field'](_0xd09d('0xa1'),_0xd09d('0xa2'));_0x44978b[_0xd09d('0x49')](_0xd09d('0xa3'),_0xd09d('0xa4'));_0x44978b[_0xd09d('0x49')](_0xd09d('0xa5'),_0xd09d('0xa6'));_0x44978b['field'](_0xd09d('0xa7'),'Contact.phone');_0x44978b[_0xd09d('0x49')](_0xd09d('0xa8'),_0xd09d('0xa9'));_0x44978b[_0xd09d('0x49')](_0xd09d('0xaa'),_0xd09d('0xab'));_0x44978b[_0xd09d('0x49')](_0xd09d('0xac'),_0xd09d('0xad'));_0x44978b[_0xd09d('0x49')]('o.internal',_0xd09d('0xae'));_0x44978b[_0xd09d('0x49')](_0xd09d('0xaf'),_0xd09d('0x34'));}if(_0xfc5fef[_0xd09d('0x25')])_0x44978b[_0xd09d('0x25')](_0xfc5fef[_0xd09d('0x25')]);if(_0xfc5fef[_0xd09d('0x24')])_0x44978b['offset'](_0xfc5fef[_0xd09d('0x24')]);return db[_0xd09d('0x99')]['query'](_0x44978b[_0xd09d('0xb0')](),_0x52c936);})['then'](function(_0x53eded){_0x3b9cc9[_0xd09d('0x47')](_0xd09d('0xb1'),_[_0xd09d('0x31')](_0x53eded,'id'));return db[_0xd09d('0x99')]['query'](_0x3b9cc9[_0xd09d('0xb0')](),_0x52c936)['then'](function(_0x56a7a6){var _0x5f2553=_[_0xd09d('0xb2')](_0x56a7a6,_0xd09d('0xb3'));var _0x262f8e=[];_0x53eded['forEach'](function(_0x685fa8){_0x262f8e[_0xd09d('0x37')](updateOpenchannelInteraction(_0x685fa8,_0x1290f3,_0x5f2553));});return BPromise['all'](_0x262f8e);});});})[_0xd09d('0x2b')](function(_0x39f329){_0x3d7543[_0xd09d('0xb4')]=_0x39f329;return _0x3d7543;})[_0xd09d('0x2b')](respondWithFilteredResult(_0x3f0e12,_0xfc5fef));})['catch'](handleError(_0x3f0e12,null));};exports['show']=function(_0x168a2b,_0x3917d2){var _0x3f56ab={'raw':![],'where':{'id':_0x168a2b[_0xd09d('0xb5')]['id']}},_0xd04efd={};_0xd04efd[_0xd09d('0x3d')]=_[_0xd09d('0x3f')](db[_0xd09d('0x39')][_0xd09d('0x3a')]);_0xd04efd[_0xd09d('0x3e')]=_['keys'](_0x168a2b[_0xd09d('0x3e')]);_0xd04efd[_0xd09d('0x40')]=_[_0xd09d('0x41')](_0xd04efd['model'],_0xd04efd[_0xd09d('0x3e')]);_0x3f56ab[_0xd09d('0x42')]=_['intersection'](_0xd04efd[_0xd09d('0x3d')],qs[_0xd09d('0x43')](_0x168a2b[_0xd09d('0x3e')][_0xd09d('0x43')]));_0x3f56ab[_0xd09d('0x42')]=_0x3f56ab[_0xd09d('0x42')][_0xd09d('0x62')]?_0x3f56ab[_0xd09d('0x42')]:_0xd04efd[_0xd09d('0x3d')];if(_0x168a2b['query'][_0xd09d('0xb6')]){_0x3f56ab[_0xd09d('0xb7')]=[{'all':!![]}];}_0x3f56ab=_[_0xd09d('0xb8')]({},_0x3f56ab,_0x168a2b[_0xd09d('0xb9')]);return db[_0xd09d('0x39')]['find'](_0x3f56ab)['then'](handleEntityNotFound(_0x3917d2,null))[_0xd09d('0x2b')](respondWithResult(_0x3917d2,null))[_0xd09d('0xba')](handleError(_0x3917d2,null));};exports[_0xd09d('0xbb')]=function(_0x2c766c,_0x21264c){return db[_0xd09d('0x39')]['create'](_0x2c766c[_0xd09d('0x77')],{})[_0xd09d('0x2b')](respondWithResult(_0x21264c,0xc9))[_0xd09d('0xba')](handleError(_0x21264c,null));};exports[_0xd09d('0x29')]=function(_0x23cea7,_0x8ccc5a){if(_0x23cea7['body']['id']){delete _0x23cea7['body']['id'];}return db[_0xd09d('0x39')][_0xd09d('0x63')]({'where':{'id':_0x23cea7['params']['id']}})[_0xd09d('0x2b')](handleEntityNotFound(_0x8ccc5a,null))['then'](saveUpdates(_0x23cea7[_0xd09d('0x77')],null))[_0xd09d('0x2b')](respondWithResult(_0x8ccc5a,null))['catch'](handleError(_0x8ccc5a,null));};exports['destroy']=function(_0x37376c,_0x319167){return db['OpenchannelInteraction']['find']({'where':{'id':_0x37376c[_0xd09d('0xb5')]['id']}})[_0xd09d('0x2b')](handleEntityNotFound(_0x319167,null))[_0xd09d('0x2b')](removeEntity(_0x319167,null))['catch'](handleError(_0x319167,null));};exports[_0xd09d('0xbc')]=function(_0x476e11,_0x737731){return db[_0xd09d('0x39')][_0xd09d('0xbc')]()[_0xd09d('0x2b')](respondWithResult(_0x737731,null))['catch'](handleError(_0x737731,null));};exports[_0xd09d('0xbd')]=function(_0x895993,_0x3e7e51,_0x4d717e){return db['OpenchannelMessage'][_0xd09d('0x63')]({'where':{'id':_0x895993[_0xd09d('0xb5')]['id']}})[_0xd09d('0x2b')](handleEntityNotFound(_0x3e7e51,null))['then'](function(_0x466fda){if(_0x466fda){return _0x466fda[_0xd09d('0xbd')](_0x895993['body']['ids'],_[_0xd09d('0xbe')](_0x895993[_0xd09d('0x77')],['ids','id'])||{});}})[_0xd09d('0x2b')](respondWithResult(_0x3e7e51,null))[_0xd09d('0xba')](handleError(_0x3e7e51,null));};exports[_0xd09d('0xbf')]=function(_0x5c672f,_0x540d93,_0xfee258){var _0x4cce6b={'raw':![],'where':{}};var _0xacd896={};var _0x9f90={'count':0x0,'rows':[]};return db[_0xd09d('0x39')][_0xd09d('0xc0')]({'where':{'id':_0x5c672f[_0xd09d('0xb5')]['id']}})[_0xd09d('0x2b')](handleEntityNotFound(_0x540d93,null))[_0xd09d('0x2b')](function(_0x2ea53f){if(_0x2ea53f){_0xacd896[_0xd09d('0x3d')]=_[_0xd09d('0x3f')](db[_0xd09d('0xc1')][_0xd09d('0x3a')]);_0xacd896[_0xd09d('0x3e')]=_['keys'](_0x5c672f[_0xd09d('0x3e')]);_0xacd896[_0xd09d('0x40')]=_['intersection'](_0xacd896[_0xd09d('0x3d')],_0xacd896[_0xd09d('0x3e')]);_0x4cce6b[_0xd09d('0x42')]=_[_0xd09d('0x41')](_0xacd896[_0xd09d('0x3d')],qs[_0xd09d('0x43')](_0x5c672f[_0xd09d('0x3e')]['fields']));_0x4cce6b[_0xd09d('0x42')]=_0x4cce6b[_0xd09d('0x42')][_0xd09d('0x62')]?_0x4cce6b['attributes']:_0xacd896['model'];if(!_0x5c672f['query']['hasOwnProperty']('nolimit')){_0x4cce6b[_0xd09d('0x25')]=qs[_0xd09d('0x25')](_0x5c672f['query'][_0xd09d('0x25')]);_0x4cce6b['offset']=qs[_0xd09d('0x24')](_0x5c672f[_0xd09d('0x3e')]['offset']);}_0x4cce6b[_0xd09d('0x45')]=qs[_0xd09d('0x46')](_0x5c672f[_0xd09d('0x3e')][_0xd09d('0x46')]);_0x4cce6b['where']=qs['filters'](_[_0xd09d('0x48')](_0x5c672f[_0xd09d('0x3e')],_0xacd896[_0xd09d('0x40')]));_0x4cce6b[_0xd09d('0x47')][_0xd09d('0xb3')]=_0x2ea53f['id'];if(_0x5c672f[_0xd09d('0x3e')][_0xd09d('0x85')]){_0x4cce6b[_0xd09d('0x47')]=_[_0xd09d('0xb8')](_0x4cce6b['where'],{'$or':_[_0xd09d('0x31')](_0x4cce6b[_0xd09d('0x42')],function(_0x19cde6){var _0x1d522b={};_0x1d522b[_0x19cde6]={'$like':'%'+_0x5c672f[_0xd09d('0x3e')][_0xd09d('0x85')]+'%'};return _0x1d522b;})});}if(_0x5c672f['query'][_0xd09d('0x7b')]){var _0x348705=_0x5c672f[_0xd09d('0x3e')][_0xd09d('0x7b')]['split'](',');var _0x539610={};_0x539610[_0x348705[0x0]]={'$gte':moment(_0x348705[0x1])[_0xd09d('0xc2')](_0xd09d('0xc3'))};_0x4cce6b['where']=_[_0xd09d('0xb8')](_0x4cce6b[_0xd09d('0x47')],_0x539610);}_0x4cce6b=_[_0xd09d('0xb8')]({},_0x4cce6b,_0x5c672f[_0xd09d('0xb9')]);return db[_0xd09d('0xc1')][_0xd09d('0x23')]({'where':_0x4cce6b['where']})['then'](function(_0x55bd87){_0x9f90[_0xd09d('0x23')]=_0x55bd87;if(_0x5c672f[_0xd09d('0x3e')][_0xd09d('0xb6')]){_0x4cce6b[_0xd09d('0xb7')]=[{'all':!![]}];}return db[_0xd09d('0xc1')][_0xd09d('0xc4')](_0x4cce6b);})[_0xd09d('0x2b')](function(_0x238c5a){_0x9f90[_0xd09d('0xb4')]=_0x238c5a;return _0x9f90;});}})['then'](respondWithFilteredResult(_0x540d93,_0x4cce6b))['catch'](handleError(_0x540d93,null));};exports['addTags']=function(_0x529216,_0x67a011,_0x255f55){return db[_0xd09d('0x39')][_0xd09d('0x63')]({'where':{'id':_0x529216['params']['id']}})[_0xd09d('0x2b')](handleEntityNotFound(_0x67a011,null))[_0xd09d('0x2b')](function(_0x33d29f){if(_0x33d29f){return _0x33d29f[_0xd09d('0xc5')](_0x529216['body']['ids'],_[_0xd09d('0xbe')](_0x529216[_0xd09d('0x77')],[_0xd09d('0xc6'),'id'])||{})[_0xd09d('0xc7')](function(){return db[_0xd09d('0x6f')][_0xd09d('0xc4')]({'attributes':['id',_0xd09d('0x2e'),_0xd09d('0x4a')],'where':{'id':_0x529216[_0xd09d('0x77')][_0xd09d('0xc6')]}});})[_0xd09d('0x2b')](function(_0x1b017a){socket['emit']('openchannelInteractionTags:save',{'id':Number(_0x529216[_0xd09d('0xb5')]['id']),'tags':_0x1b017a||[]});return{'id':Number(_0x529216[_0xd09d('0xb5')]['id']),'tags':_0x1b017a||[]};});}})[_0xd09d('0x2b')](respondWithResult(_0x67a011,null))['catch'](handleError(_0x67a011,null));};exports[_0xd09d('0xc8')]=function(_0x42a9e6,_0x1ebecd,_0x1ca1a9){return db[_0xd09d('0x39')][_0xd09d('0x63')]({'where':{'id':_0x42a9e6[_0xd09d('0xb5')]['id']}})[_0xd09d('0x2b')](handleEntityNotFound(_0x1ebecd,null))[_0xd09d('0x2b')](function(_0x2bee1d){if(_0x2bee1d){return _0x2bee1d[_0xd09d('0xc8')](_0x42a9e6['query'][_0xd09d('0xc6')]);}})[_0xd09d('0x2b')](respondWithStatusCode(_0x1ebecd,null))[_0xd09d('0xba')](handleError(_0x1ebecd,null));};exports[_0xd09d('0xc9')]=function(_0x494c1c,_0x5444bc){var _0x4d0470=moment()[_0xd09d('0xca')]()[_0xd09d('0xb0')]();var _0x1b19c8=path[_0xd09d('0xcb')](config[_0xd09d('0xcc')],_0xd09d('0xcd'),'files','tmp');var _0x2cbae4=path[_0xd09d('0xcb')](config[_0xd09d('0xcc')],_0xd09d('0xcd'),'files',_0xd09d('0xce'));var _0x57dd61=path[_0xd09d('0xcb')](_0x1b19c8,_0x4d0470);var _0x4b128a=util[_0xd09d('0xc2')](_0xd09d('0xcf'),_0x494c1c[_0xd09d('0xb5')]['id'],_0x4d0470);var _0x4c49ac=path[_0xd09d('0xcb')](_0x1b19c8,_0x4b128a);var _0x682784=[];_0x682784[_0xd09d('0x37')]({'model':db[_0xd09d('0x72')],'as':_0xd09d('0x72'),'attributes':['id','fullname'],'raw':!![]});_0x682784[_0xd09d('0x37')]({'model':db['CmContact'],'as':'Contact','attributes':['id',_0xd09d('0xd0'),'lastName'],'raw':!![]});if(_0x494c1c[_0xd09d('0x3e')]['attachments']){_0x682784[_0xd09d('0x37')]({'model':db[_0xd09d('0xd1')],'as':_0xd09d('0xd1'),'raw':!![]});}var _0x2ecab1=[{'model':db[_0xd09d('0xc1')],'as':_0xd09d('0xd2'),'attributes':['id',_0xd09d('0x77'),_0xd09d('0xd3'),_0xd09d('0xd4'),_0xd09d('0xd5'),_0xd09d('0x80')],'include':_0x682784}];_0x2ecab1['push']({'model':db['OpenchannelAccount'],'as':_0xd09d('0xd6'),'attributes':['id',_0xd09d('0x2e')]});_0x2ecab1['push']({'model':db['User'],'as':_0xd09d('0xd7'),'attributes':['id','fullname']});return db[_0xd09d('0x39')][_0xd09d('0x63')]({'where':{'id':_0x494c1c[_0xd09d('0xb5')]['id']},'include':_0x2ecab1})[_0xd09d('0x2b')](handleEntityNotFound(_0x5444bc,null))[_0xd09d('0x2b')](function(_0x3faee9){if(_0x3faee9){var _0x27cf0d=_0x3faee9['get']({'plain':!![]});fs[_0xd09d('0xd8')](_0x57dd61);var _0x52c659={'format':'A4','border':_0xd09d('0xd9'),'header':{'height':_0xd09d('0xda'),'contents':{'first':_0xd09d('0xdb')}},'footer':{'height':_0xd09d('0xdc'),'contents':{'default':util[_0xd09d('0xc2')](_0xd09d('0xdd'),util['format']('%s\x20#%d','Openchannel',_0x27cf0d['id']),moment()[_0xd09d('0xc2')]('YYYY-MM-DD')[_0xd09d('0xb0')]())}}};var _0x121f23={'channel':_0xd09d('0xde'),'account':_0x27cf0d[_0xd09d('0xd6')][_0xd09d('0x2e')],'agent':_0x27cf0d[_0xd09d('0xd7')]?_0x27cf0d[_0xd09d('0xd7')]['fullname']:'N.A.','createdAt':moment(_0x27cf0d[_0xd09d('0xd3')])[_0xd09d('0xc2')](_0xd09d('0xc3'))[_0xd09d('0xb0')](),'closedAt':_0x27cf0d[_0xd09d('0xdf')]?moment(_0x27cf0d['closedAt'])[_0xd09d('0xc2')](_0xd09d('0xc3'))[_0xd09d('0xb0')]():'','disposition':_0x27cf0d['disposition'],'visibility':_0x27cf0d[_0xd09d('0xe0')]?_0xd09d('0xe1'):_0xd09d('0xe2'),'messages':_(_0x27cf0d[_0xd09d('0xd2')])['filter']({'secret':![]})[_0xd09d('0x31')](function(_0x5c45da){if(_0x5c45da['Attachment']){var _0x36830f=path['join'](_0x2cbae4,_0x5c45da['Attachment'][_0xd09d('0xe3')]);if(fs[_0xd09d('0xe4')](_0x36830f)){fs[_0xd09d('0xe5')](_0x36830f)['pipe'](fs['createWriteStream'](path[_0xd09d('0xcb')](_0x57dd61,_0x5c45da['Attachment'][_0xd09d('0xe3')])));}}return{'date':moment(_0x5c45da[_0xd09d('0xd3')])['format'](_0xd09d('0xc3'))[_0xd09d('0xb0')](),'sender':_0x5c45da[_0xd09d('0xd4')]==='out'?_0x5c45da['User']?_0x5c45da[_0xd09d('0x72')]['fullname']:_0xd09d('0xe6'):_0x5c45da['Contact'][_0xd09d('0xd0')]+(_0x5c45da[_0xd09d('0xe7')][_0xd09d('0xe8')]?'\x20'+_0x5c45da['Contact'][_0xd09d('0xe8')]:''),'body':_0x5c45da['Attachment']?_0x5c45da[_0xd09d('0xd1')][_0xd09d('0xe3')]:_0x5c45da[_0xd09d('0x77')],'direction':_0x5c45da['direction']===_0xd09d('0xe9')?'A':'C','secret':_0x5c45da[_0xd09d('0xd5')],'read':_0x5c45da[_0xd09d('0x80')],'attachment':_0x5c45da['Attachment']};})[_0xd09d('0x64')]()};return ejs[_0xd09d('0xea')](path['join'](config[_0xd09d('0xcc')],'server',_0xd09d('0xeb'),_0xd09d('0xec')),{'interaction':_0x121f23})['then'](function(_0x42de66){return new BPromise(function(_0x52cd5b,_0x5b4eb8){pdf[_0xd09d('0xbb')](_0x42de66,_0x52c659)[_0xd09d('0xed')](path[_0xd09d('0xcb')](_0x57dd61,_0xd09d('0xee')+_0x27cf0d['id']+'-'+_0x4d0470+_0xd09d('0xef')),function(_0x1894c2,_0x568d42){if(_0x1894c2)return _0x5b4eb8(_0x1894c2);_0x52cd5b(_0x568d42);});});})[_0xd09d('0x2b')](function(){return new BPromise(function(_0x253c92,_0x5b9998){zipdir(_0x57dd61,{'saveTo':_0x4c49ac},function(_0x17b988,_0x1a545e){if(_0x17b988)return _0x5b9998(_0x17b988);return _0x253c92(_0x1a545e);});})[_0xd09d('0x2b')](function(){return new BPromise(function(_0x429688,_0x311df){rimraf(_0x57dd61,function(_0x19910f){if(_0x19910f)_0x311df(_0x19910f);return _0x429688();});});})[_0xd09d('0x2b')](function(){return _0x5444bc[_0xd09d('0xc9')](_0x4c49ac,_0x4b128a,function(_0x366c41){if(_0x366c41){console['log'](_0xd09d('0xf0'),_0x366c41);}else{fs[_0xd09d('0xf1')](_0x4c49ac);}});});});}else{return _0x5444bc[_0xd09d('0x1f')](0xc8);}})[_0xd09d('0xba')](handleError(_0x5444bc,null));};