Built motion from commit 5b761a7b.|2.5.36
[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 _0x66ec=['openchannel_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','openchannel_accounts','a.id\x20=\x20i.OpenchannelAccountId','openchannel_messages','me.OpenchannelInteractionId\x20=\x20i.id','openchannel_interaction_has_tags','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','unreadMessages','value','`\x20=\x200','having','`\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?','find','ContactId','buildExpression','text','start','Tag','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','UserId','body','some','compact','isEmpty','OpenchannelAccountId','i.OpenchannelAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','read','`unreadMessages`\x20>\x200','tag','isArray','filter','isNumeric','i.id\x20LIKE\x20?','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','i.from\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','Sequelize','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','order','contactName','DESC','t.id\x20IN\x20?','resolve','i.OpenchannelAccountId\x20IS\x20NOT\x20NULL','role','agent','user','i.OpenchannelAccountId\x20IS\x20NULL','sequelize','keyBy','merge','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','CASE\x20WHEN\x20i.from\x20IS\x20NOT\x20NULL\x20AND\x20i.from\x20<>\x20\x27\x27\x20THEN\x20i.from\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','Contact.firstName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','Owner.fullname','o.internal','Owner.internal','toString','ui.OpenchannelInteractionId\x20IN\x20?','groupBy','OpenchannelInteractionId','push','all','rows','params','includeAll','include','options','create','destroy','describe','addMessage','ids','getMessages','OpenchannelMessage','format','YYYY-MM-DD\x20HH:mm:ss','findAll','addTags','omit','spread','emit','removeTags','download','unix','join','server','files','tmp','attachments','fullname','Contact','firstName','lastName','Attachment','direction','secret','Account','Owner','get','mkdirSync','Openchannel','N.A.','closed','closedAt','disposition','threadId','Messages','basename','existsSync','pipe','out','System','renderFile','downloadInteraction.ejs','.pdf','createPdfFromHTML','log','unlinkSync','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../components/export/pdf','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','./openchannelInteraction.socket','sendStatus','status','end','json','count','offset','limit','set','reject','save','update','then','error','name','send','Users','map','TagIds','split','Tags','catch','OpenchannelInteraction','rawAttributes','type','key','model','keys','query','filters','intersection','attributes','fields','length','nolimit','sort','where','pick','field','color','tools_tags','select','u.id','ui.OpenchannelInteractionId','from','left_join','users','u.id\x20=\x20ui.UserId'];(function(_0x42245d,_0x51758f){var _0x4b211a=function(_0x2634e){while(--_0x2634e){_0x42245d['push'](_0x42245d['shift']());}};_0x4b211a(++_0x51758f);}(_0x66ec,0x189));var _0xc66e=function(_0x3f59b1,_0x25cdbe){_0x3f59b1=_0x3f59b1-0x0;var _0x11d2e8=_0x66ec[_0x3f59b1];return _0x11d2e8;};'use strict';var emlformat=require(_0xc66e('0x0'));var rimraf=require(_0xc66e('0x1'));var zipdir=require(_0xc66e('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xc66e('0x3'));var moment=require(_0xc66e('0x4'));var BPromise=require(_0xc66e('0x5'));var Mustache=require(_0xc66e('0x6'));var util=require(_0xc66e('0x7'));var path=require(_0xc66e('0x8'));var sox=require('sox');var csv=require(_0xc66e('0x9'));var ejs=require(_0xc66e('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc66e('0xb'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xc66e('0xc'));var toCsv=require(_0xc66e('0x9'));var querystring=require(_0xc66e('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xc66e('0xe'));var qs=require(_0xc66e('0xf'));var as=require(_0xc66e('0x10'));var pdf=require(_0xc66e('0x11'));var hardwareService=require(_0xc66e('0x12'));var logger=require(_0xc66e('0x13'))(_0xc66e('0x14'));var utils=require('../../config/utils');var config=require(_0xc66e('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0xc66e('0x16'))['db'];config[_0xc66e('0x17')]=_[_0xc66e('0x18')](config[_0xc66e('0x17')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xc66e('0x17')]));require(_0xc66e('0x19'))['register'](socket);function respondWithStatusCode(_0x445992,_0x239aa){_0x239aa=_0x239aa||0xcc;return function(_0xa245ce){if(_0xa245ce){return _0x445992[_0xc66e('0x1a')](_0x239aa);}return _0x445992[_0xc66e('0x1b')](_0x239aa)[_0xc66e('0x1c')]();};}function respondWithResult(_0x30caca,_0x23e36a){_0x23e36a=_0x23e36a||0xc8;return function(_0x3d1797){if(_0x3d1797){return _0x30caca[_0xc66e('0x1b')](_0x23e36a)[_0xc66e('0x1d')](_0x3d1797);}};}function respondWithFilteredResult(_0x58385b,_0x1b3a50){return function(_0x12cc41){if(_0x12cc41){var _0x26d7ca=typeof _0x1b3a50['offset']==='undefined'&&typeof _0x1b3a50['limit']==='undefined';var _0x3c7072=_0x12cc41['count'];var _0x31dae7=_0x26d7ca?0x0:_0x1b3a50['offset'];var _0x2841b1=_0x26d7ca?_0x12cc41[_0xc66e('0x1e')]:_0x1b3a50[_0xc66e('0x1f')]+_0x1b3a50[_0xc66e('0x20')];var _0x46ed27;if(_0x2841b1>=_0x3c7072){_0x2841b1=_0x3c7072;_0x46ed27=0xc8;}else{_0x46ed27=0xce;}_0x58385b[_0xc66e('0x1b')](_0x46ed27);return _0x58385b[_0xc66e('0x21')]('Content-Range',_0x31dae7+'-'+_0x2841b1+'/'+_0x3c7072)[_0xc66e('0x1d')](_0x12cc41);}return null;};}function patchUpdates(_0x2ff78d){return function(_0x45e079){try{jsonpatch['apply'](_0x45e079,_0x2ff78d,!![]);}catch(_0x15e380){return BPromise[_0xc66e('0x22')](_0x15e380);}return _0x45e079[_0xc66e('0x23')]();};}function saveUpdates(_0x28c100,_0x31c8aa){return function(_0x1265c3){if(_0x1265c3){return _0x1265c3[_0xc66e('0x24')](_0x28c100)[_0xc66e('0x25')](function(_0x3301d8){return _0x3301d8;});}return null;};}function removeEntity(_0x3b213b,_0x5b6f6b){return function(_0x20453e){if(_0x20453e){return _0x20453e['destroy']()['then'](function(){_0x3b213b[_0xc66e('0x1b')](0xcc)[_0xc66e('0x1c')]();});}};}function handleEntityNotFound(_0x4c5fb1,_0x75605b){return function(_0x570d4a){if(!_0x570d4a){_0x4c5fb1[_0xc66e('0x1a')](0x194);}return _0x570d4a;};}function handleError(_0x2fbc84,_0x46ea48){_0x46ea48=_0x46ea48||0x1f4;return function(_0x1237f1){logger[_0xc66e('0x26')](_0x1237f1['stack']);if(_0x1237f1['name']){delete _0x1237f1[_0xc66e('0x27')];}_0x2fbc84['status'](_0x46ea48)[_0xc66e('0x28')](_0x1237f1);};}function getInteractionUsers(_0xc601ed,_0x48b591){return new BPromise(function(_0x591d6d,_0x10c7e5){try{if(_0x48b591[_0xc601ed['id']]){_0xc601ed[_0xc66e('0x29')]=_[_0xc66e('0x2a')](_0x48b591[_0xc601ed['id']],function(_0x40e0ec){return{'id':_0x40e0ec['id'],'fullname':_0x40e0ec['fullname']};});}}catch(_0x39992d){_0x10c7e5(_0x39992d);}_0x591d6d(_0xc601ed);});}function getInteractionTags(_0x427ff4,_0x41ea3f){return new BPromise(function(_0x3db0dd,_0xdca00f){try{if(_0x427ff4[_0xc66e('0x2b')]){_0x427ff4['Tags']=[];_0x427ff4[_0xc66e('0x2b')][_0xc66e('0x2c')](',')['forEach'](function(_0x3c0ac2){_0x427ff4[_0xc66e('0x2d')]['push'](_0x41ea3f[_0x3c0ac2]);});}delete _0x427ff4[_0xc66e('0x2b')];}catch(_0x48d041){_0xdca00f(_0x48d041);}_0x3db0dd(_0x427ff4);});}function updateOpenchannelInteraction(_0x4e0689,_0xd32525,_0x42972b){return new BPromise(function(_0x4054e,_0x26dcee){return getInteractionUsers(_0x4e0689,_0x42972b)[_0xc66e('0x25')](function(_0x5054c8){return getInteractionTags(_0x5054c8,_0xd32525);})[_0xc66e('0x25')](function(_0x2914e9){_0x4054e(_0x2914e9);})[_0xc66e('0x2e')](function(_0x1831e1){_0x26dcee(_0x1831e1);});});}exports['index']=function(_0x4e5ae7,_0x42d48e){var _0x582c36={},_0x525651={},_0x5eb397={'count':0x0,'rows':[]};var _0x44c7c7=_[_0xc66e('0x2a')](db[_0xc66e('0x2f')][_0xc66e('0x30')],function(_0x36e1cc){return{'name':_0x36e1cc['fieldName'],'type':_0x36e1cc[_0xc66e('0x31')][_0xc66e('0x32')]};});_0x525651[_0xc66e('0x33')]=_[_0xc66e('0x2a')](_0x44c7c7,'name');_0x525651['query']=_[_0xc66e('0x34')](_0x4e5ae7[_0xc66e('0x35')]);_0x525651[_0xc66e('0x36')]=_[_0xc66e('0x37')](_0x525651['model'],_0x525651[_0xc66e('0x35')]);_0x582c36[_0xc66e('0x38')]=_[_0xc66e('0x37')](_0x525651['model'],qs[_0xc66e('0x39')](_0x4e5ae7[_0xc66e('0x35')]['fields']));_0x582c36[_0xc66e('0x38')]=_0x582c36[_0xc66e('0x38')][_0xc66e('0x3a')]?_0x582c36[_0xc66e('0x38')]:_0x525651[_0xc66e('0x33')];if(!_0x4e5ae7[_0xc66e('0x35')]['hasOwnProperty'](_0xc66e('0x3b'))){_0x582c36['limit']=qs[_0xc66e('0x20')](_0x4e5ae7['query'][_0xc66e('0x20')]);_0x582c36[_0xc66e('0x1f')]=qs['offset'](_0x4e5ae7['query'][_0xc66e('0x1f')]);}_0x582c36['order']=qs[_0xc66e('0x3c')](_0x4e5ae7[_0xc66e('0x35')][_0xc66e('0x3c')]);_0x582c36[_0xc66e('0x3d')]=qs[_0xc66e('0x36')](_[_0xc66e('0x3e')](_0x4e5ae7[_0xc66e('0x35')],_0x525651['filters']),_0x44c7c7);var _0x3e12df=[];var _0x4177b6=squel['select']()['field']('id')[_0xc66e('0x3f')](_0xc66e('0x27'))[_0xc66e('0x3f')](_0xc66e('0x40'))['from'](_0xc66e('0x41'));var _0x31e0c6=squel[_0xc66e('0x42')]()[_0xc66e('0x3f')](_0xc66e('0x43'))['field']('u.fullname')[_0xc66e('0x3f')](_0xc66e('0x44'))[_0xc66e('0x45')]('user_has_openchannel_interactions','ui')[_0xc66e('0x46')](_0xc66e('0x47'),'u',_0xc66e('0x48'));var _0x433a23=squel[_0xc66e('0x42')]()[_0xc66e('0x45')](_0xc66e('0x49'),'i')['left_join'](_0xc66e('0x4a'),'c',_0xc66e('0x4b'))[_0xc66e('0x46')]('users','o','o.id\x20=\x20i.UserId')[_0xc66e('0x46')](_0xc66e('0x4c'),'a',_0xc66e('0x4d'))[_0xc66e('0x46')](_0xc66e('0x4e'),'me',_0xc66e('0x4f'))[_0xc66e('0x46')](_0xc66e('0x50'),'it','it.OpenchannelInteractionId\x20=\x20i.id')[_0xc66e('0x46')](_0xc66e('0x41'),'t',_0xc66e('0x51'));var _0x2ad8cf=squel[_0xc66e('0x52')]();var _0x49c158=[];var _0x2c15c8=squel[_0xc66e('0x52')]();var _0x2c3099;if(_0x4e5ae7['query'][_0xc66e('0x53')]){_0x2c3099=as[_0xc66e('0x54')](_0x4e5ae7[_0xc66e('0x35')][_0xc66e('0x53')]);var _0x1041df=_0x2c3099[_0xc66e('0x55')];for(var _0x18876e=0x0;_0x18876e<_0x2c3099[_0xc66e('0x56')]['length'];_0x18876e++){var _0x48959e=_0x2c3099['conditions'][_0x18876e];var _0x133582='i';var _0x284515=_['find'](_0x44c7c7,[_0xc66e('0x27'),_0x48959e['field']]);if(!_0x284515){switch(_0x48959e[_0xc66e('0x3f')]){case _0xc66e('0x57'):if(_0x48959e[_0xc66e('0x58')]==0x1){_0x433a23['having']('`'+_0x48959e['field']+_0xc66e('0x59'));}else{_0x433a23[_0xc66e('0x5a')]('`'+_0x48959e[_0xc66e('0x3f')]+_0xc66e('0x5b'));}break;case'Contact':if(_0x48959e[_0xc66e('0x5c')]===_0xc66e('0x5d')){if(_0x48959e['value'][_0xc66e('0x2c')]('\x20')[_0xc66e('0x3a')]>0x1){_0x2ad8cf[_0x1041df](_0xc66e('0x5e'),qs[_0xc66e('0x5f')](_0x48959e[_0xc66e('0x58')]),null);}else{var _0x239876='%'+_0x48959e[_0xc66e('0x58')]+'%';_0x2ad8cf[_0x1041df](_0xc66e('0x60'),_0x239876,_0x239876,_0x239876);}}else{_0x284515=_[_0xc66e('0x61')](_0x44c7c7,[_0xc66e('0x27'),_0xc66e('0x62')]);_0x48959e['field']=_0xc66e('0x62');_0x487010=as[_0xc66e('0x63')](_0x133582,_0x284515[_0xc66e('0x31')],_0x48959e);_0x2ad8cf[_0x1041df](_0x487010[_0xc66e('0x64')],_0x487010[_0xc66e('0x58')][_0xc66e('0x65')],_0x487010[_0xc66e('0x58')]['end']);}break;case _0xc66e('0x66'):var _0x5031ee=_0x48959e[_0xc66e('0x58')][_0xc66e('0x2c')](',')[_0xc66e('0x2a')](function(_0x2a724d){return Number(_0x2a724d);});_0x5031ee[_0xc66e('0x67')](function(_0x99dc2f){_0x2c15c8['or'](_0xc66e('0x68'),'%,'+_0x99dc2f+',%');});_0x49c158=_[_0xc66e('0x69')](_0x49c158,_0x5031ee);break;case _0xc66e('0x6a'):if(_0x48959e[_0xc66e('0x5c')]===_0xc66e('0x5d')){_0x2ad8cf[_0x1041df](_0xc66e('0x6b'),'%'+_0x48959e[_0xc66e('0x58')]+'%',null);}else{_0x284515=_['find'](_0x44c7c7,['name',_0xc66e('0x6c')]);_0x48959e[_0xc66e('0x3f')]='UserId';_0x487010=as['buildExpression'](_0x133582,_0x284515['type'],_0x48959e);_0x2ad8cf[_0x1041df](_0x487010[_0xc66e('0x64')],_0x487010[_0xc66e('0x58')][_0xc66e('0x65')],_0x487010[_0xc66e('0x58')][_0xc66e('0x1c')]);}break;case _0xc66e('0x6d'):_0x487010=as[_0xc66e('0x63')]('me',null,_0x48959e);_0x2ad8cf[_0x1041df](_0x487010[_0xc66e('0x64')],_0x487010[_0xc66e('0x58')][_0xc66e('0x65')],_0x487010[_0xc66e('0x58')][_0xc66e('0x1c')]);break;}}else{var _0x487010=as['buildExpression'](_0x133582,_0x284515['type'],_0x48959e);_0x2ad8cf[_0x1041df](_0x487010[_0xc66e('0x64')],_0x487010['value'][_0xc66e('0x65')],_0x487010[_0xc66e('0x58')][_0xc66e('0x1c')]);}}}else{var _0xa7f216=_(_0x4e5ae7[_0xc66e('0x35')])['keys']()[_0xc66e('0x2a')](function(_0x2dbef7){return _[_0xc66e('0x6e')](_0x44c7c7,['name',_0x2dbef7])?_0x2dbef7:undefined;})[_0xc66e('0x6f')]()[_0xc66e('0x58')]();if(!_[_0xc66e('0x70')](_0xa7f216)){_0xa7f216['forEach'](function(_0x34a1b9){if(_0x34a1b9===_0xc66e('0x71')){_0x433a23[_0xc66e('0x3d')](_0xc66e('0x72'),[][_0xc66e('0x73')](_0x4e5ae7[_0xc66e('0x35')][_0x34a1b9]));}else if(_0x34a1b9===_0xc66e('0x74')){var _0x4c4a8e=JSON[_0xc66e('0x75')](_0x4e5ae7[_0xc66e('0x35')][_0x34a1b9])[_0xc66e('0x76')];var _0x2087c0=JSON['parse'](_0x4e5ae7[_0xc66e('0x35')][_0x34a1b9])[_0xc66e('0x77')];_0x433a23['where'](_0xc66e('0x78'),_0x4c4a8e,_0x2087c0);}else{if(_0x4e5ae7['query'][_0x34a1b9]===_0xc66e('0x79')){_0x433a23[_0xc66e('0x3d')]('i.'+_0x34a1b9+'\x20IS\x20NULL');}else{_0x433a23[_0xc66e('0x3d')]('i.'+_0x34a1b9+'\x20=\x20?',_0x4e5ae7[_0xc66e('0x35')][_0x34a1b9]);}}});}if(_0x4e5ae7['query'][_0xc66e('0x7a')]){if(_0x4e5ae7[_0xc66e('0x35')][_0xc66e('0x7a')]==0x1){_0x433a23['having']('`unreadMessages`\x20=\x200');}else{_0x433a23['having'](_0xc66e('0x7b'));}}if(_0x4e5ae7['query'][_0xc66e('0x7c')]){_0x49c158=_[_0xc66e('0x7d')](_0x4e5ae7[_0xc66e('0x35')][_0xc66e('0x7c')])?_0x4e5ae7[_0xc66e('0x35')]['tag']:new Array(_0x4e5ae7['query']['tag']);_0x49c158[_0xc66e('0x67')](function(_0x564d0f){_0x2c15c8['or'](_0xc66e('0x68'),'%,'+_0x564d0f+',%');});}if(_0x4e5ae7['query'][_0xc66e('0x7e')]){var _0x3de078=_0x4e5ae7[_0xc66e('0x35')][_0xc66e('0x7e')]['replace']('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0xc66e('0x7f')](_0x3de078)){_0x2ad8cf['or'](_0xc66e('0x80'),_0x3de078+'%');}else{_0x2ad8cf['or'](_0xc66e('0x81'),qs[_0xc66e('0x5f')](_0x3de078))['or'](_0xc66e('0x82'),_0x3de078+'%')['or'](_0xc66e('0x83'),_0x3de078+'%');}}}_0x433a23[_0xc66e('0x3d')](_0x2ad8cf);_0x433a23[_0xc66e('0x84')]('i.id');var _0x11d839={'type':db[_0xc66e('0x85')][_0xc66e('0x86')][_0xc66e('0x87')],'raw':!![]};var _0x365c87=_0x433a23[_0xc66e('0x88')]();_0x365c87[_0xc66e('0x3f')]('i.id');_0x365c87[_0xc66e('0x3f')](_0xc66e('0x89'),_0xc66e('0x57'));if(_0x582c36[_0xc66e('0x8a')]){_0x582c36[_0xc66e('0x8a')][_0xc66e('0x67')](function(_0x248808){var _0x3f295d=_0x248808[0x0]===_0xc66e('0x8b')?_0x248808[0x0]:'i.'+_0x248808[0x0];_0x433a23[_0xc66e('0x8a')](_0x3f295d,_0x248808[0x1]===_0xc66e('0x8c')?![]:!![]);});}if(!_[_0xc66e('0x70')](_0x49c158)){_0x433a23[_0xc66e('0x5a')](_0x2c15c8);_0x365c87[_0xc66e('0x3d')](_0xc66e('0x8d'),_0x49c158);}BPromise[_0xc66e('0x8e')]()[_0xc66e('0x25')](function(){if(!_0x2c3099){if(_0x4e5ae7[_0xc66e('0x35')][_0xc66e('0x71')])return;_0x365c87[_0xc66e('0x3d')](_0xc66e('0x8f'));_0x433a23[_0xc66e('0x3d')](_0xc66e('0x8f'));return;}if(_0x4e5ae7['user'][_0xc66e('0x90')]!==_0xc66e('0x91'))return;return _0x4e5ae7[_0xc66e('0x92')]['getOpenchannelAccounts']({'attributes':['id'],'raw':!![]})[_0xc66e('0x25')](function(_0x7af982){if(_[_0xc66e('0x70')](_0x7af982)){_0x365c87['where'](_0xc66e('0x93'));_0x433a23[_0xc66e('0x3d')](_0xc66e('0x93'));}else{_0x365c87[_0xc66e('0x3d')](_0xc66e('0x72'),_[_0xc66e('0x2a')](_0x7af982,'id'));_0x433a23[_0xc66e('0x3d')]('i.OpenchannelAccountId\x20IN\x20?',_[_0xc66e('0x2a')](_0x7af982,'id'));}});})[_0xc66e('0x25')](function(){if(_0x4e5ae7[_0xc66e('0x92')][_0xc66e('0x90')]===_0xc66e('0x91')&&!_0x2c3099&&!_0x4e5ae7[_0xc66e('0x35')]['OpenchannelAccountId'])return[];return db['sequelize'][_0xc66e('0x35')](_0x365c87['toString'](),_0x11d839);})['then'](function(_0x272a63){_0x5eb397['count']=_0x272a63[_0xc66e('0x3a')];if(_0x5eb397[_0xc66e('0x1e')]===0x0)return[];return db[_0xc66e('0x94')]['query'](_0x4177b6['toString'](),_0x11d839)[_0xc66e('0x25')](function(_0x38ee62){_0x3e12df=_[_0xc66e('0x95')](_0x38ee62,'id');_0x11d839=_[_0xc66e('0x96')](_0x11d839,{'model':db[_0xc66e('0x2f')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x4e5ae7[_0xc66e('0x35')]['fields']){_0x582c36[_0xc66e('0x38')][_0xc66e('0x67')](function(_0x2ff082){_0x433a23['field']('i.'+_0x2ff082);});}else{_0x433a23[_0xc66e('0x3f')](_0xc66e('0x89'),_0xc66e('0x57'));_0x433a23[_0xc66e('0x3f')](_0xc66e('0x97'),_0xc66e('0x98'));_0x433a23['field'](_0xc66e('0x99'),_0xc66e('0x9a'));_0x433a23['field'](_0xc66e('0x9b'),_0xc66e('0x8b'));_0x433a23[_0xc66e('0x3f')](_0xc66e('0x9c'));_0x433a23[_0xc66e('0x3f')](_0xc66e('0x9d'),_0xc66e('0x9e'));_0x433a23[_0xc66e('0x3f')]('c.lastName',_0xc66e('0x9f'));_0x433a23['field'](_0xc66e('0xa0'),_0xc66e('0xa1'));_0x433a23[_0xc66e('0x3f')](_0xc66e('0xa2'),_0xc66e('0xa3'));_0x433a23['field'](_0xc66e('0xa4'),_0xc66e('0xa5'));_0x433a23[_0xc66e('0x3f')](_0xc66e('0xa6'),_0xc66e('0xa7'));_0x433a23[_0xc66e('0x3f')]('o.fullname',_0xc66e('0xa8'));_0x433a23[_0xc66e('0x3f')](_0xc66e('0xa9'),_0xc66e('0xaa'));_0x433a23[_0xc66e('0x3f')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0xc66e('0x2b'));}if(_0x582c36[_0xc66e('0x20')])_0x433a23[_0xc66e('0x20')](_0x582c36[_0xc66e('0x20')]);if(_0x582c36[_0xc66e('0x1f')])_0x433a23['offset'](_0x582c36[_0xc66e('0x1f')]);return db[_0xc66e('0x94')][_0xc66e('0x35')](_0x433a23[_0xc66e('0xab')](),_0x11d839);})[_0xc66e('0x25')](function(_0x2a1356){if(_0x2a1356[_0xc66e('0x3a')]>0x0)_0x31e0c6['where'](_0xc66e('0xac'),_['map'](_0x2a1356,'id'));return db[_0xc66e('0x94')][_0xc66e('0x35')](_0x31e0c6[_0xc66e('0xab')](),_0x11d839)[_0xc66e('0x25')](function(_0x4d7be4){var _0x2bbb47=_[_0xc66e('0xad')](_0x4d7be4,_0xc66e('0xae'));var _0x59db48=[];_0x2a1356[_0xc66e('0x67')](function(_0xd620ef){_0x59db48[_0xc66e('0xaf')](updateOpenchannelInteraction(_0xd620ef,_0x3e12df,_0x2bbb47));});return BPromise[_0xc66e('0xb0')](_0x59db48);});});})[_0xc66e('0x25')](function(_0x138e6c){_0x5eb397[_0xc66e('0xb1')]=_0x138e6c;return _0x5eb397;})[_0xc66e('0x25')](respondWithFilteredResult(_0x42d48e,_0x582c36))['catch'](handleError(_0x42d48e,null));};exports['show']=function(_0x2be726,_0x4ab3c8){var _0x2f0154={};if(_0x2be726[_0xc66e('0x35')][_0xc66e('0x31')]&&_0x2be726[_0xc66e('0x35')]['type']==='from'){_0x2f0154[_0xc66e('0x45')]=_0x2be726[_0xc66e('0xb2')]['id'];}else{_0x2f0154['id']=_0x2be726[_0xc66e('0xb2')]['id'];}var _0x527563={'raw':![],'where':_0x2f0154},_0x511220={};_0x511220[_0xc66e('0x33')]=_['keys'](db[_0xc66e('0x2f')]['rawAttributes']);_0x511220[_0xc66e('0x35')]=_[_0xc66e('0x34')](_0x2be726[_0xc66e('0x35')]);_0x511220[_0xc66e('0x36')]=_[_0xc66e('0x37')](_0x511220[_0xc66e('0x33')],_0x511220['query']);_0x527563[_0xc66e('0x38')]=_['intersection'](_0x511220[_0xc66e('0x33')],qs[_0xc66e('0x39')](_0x2be726['query']['fields']));_0x527563[_0xc66e('0x38')]=_0x527563['attributes'][_0xc66e('0x3a')]?_0x527563[_0xc66e('0x38')]:_0x511220[_0xc66e('0x33')];if(_0x2be726['query'][_0xc66e('0xb3')]){_0x527563[_0xc66e('0xb4')]=[{'all':!![]}];}_0x527563=_['merge']({},_0x527563,_0x2be726[_0xc66e('0xb5')]);return db['OpenchannelInteraction'][_0xc66e('0x61')](_0x527563)['then'](handleEntityNotFound(_0x4ab3c8,null))[_0xc66e('0x25')](respondWithResult(_0x4ab3c8,null))[_0xc66e('0x2e')](handleError(_0x4ab3c8,null));};exports[_0xc66e('0xb6')]=function(_0x5d800a,_0x35781a){return db[_0xc66e('0x2f')][_0xc66e('0xb6')](_0x5d800a[_0xc66e('0x6d')],{})[_0xc66e('0x25')](respondWithResult(_0x35781a,0xc9))['catch'](handleError(_0x35781a,null));};exports['update']=function(_0x5b4b6c,_0x173a1e){if(_0x5b4b6c[_0xc66e('0x6d')]['id']){delete _0x5b4b6c[_0xc66e('0x6d')]['id'];}return db['OpenchannelInteraction'][_0xc66e('0x61')]({'where':{'id':_0x5b4b6c['params']['id']}})[_0xc66e('0x25')](handleEntityNotFound(_0x173a1e,null))['then'](saveUpdates(_0x5b4b6c['body'],null))[_0xc66e('0x25')](respondWithResult(_0x173a1e,null))['catch'](handleError(_0x173a1e,null));};exports[_0xc66e('0xb7')]=function(_0x4cd496,_0x44277d){return db[_0xc66e('0x2f')][_0xc66e('0x61')]({'where':{'id':_0x4cd496[_0xc66e('0xb2')]['id']}})['then'](handleEntityNotFound(_0x44277d,null))['then'](removeEntity(_0x44277d,null))[_0xc66e('0x2e')](handleError(_0x44277d,null));};exports['describe']=function(_0x2dd3b4,_0xec6a62){return db[_0xc66e('0x2f')][_0xc66e('0xb8')]()[_0xc66e('0x25')](respondWithResult(_0xec6a62,null))[_0xc66e('0x2e')](handleError(_0xec6a62,null));};exports[_0xc66e('0xb9')]=function(_0x1c9c29,_0x5a89b0,_0x4a90ff){return db['OpenchannelMessage'][_0xc66e('0x61')]({'where':{'id':_0x1c9c29[_0xc66e('0xb2')]['id']}})[_0xc66e('0x25')](handleEntityNotFound(_0x5a89b0,null))['then'](function(_0x3f4b8b){if(_0x3f4b8b){return _0x3f4b8b[_0xc66e('0xb9')](_0x1c9c29['body'][_0xc66e('0xba')],_['omit'](_0x1c9c29['body'],[_0xc66e('0xba'),'id'])||{});}})['then'](respondWithResult(_0x5a89b0,null))[_0xc66e('0x2e')](handleError(_0x5a89b0,null));};exports[_0xc66e('0xbb')]=function(_0x2069d3,_0x48876c,_0x5d65c8){var _0x548b8d={'raw':![],'where':{}};var _0x5d97b3={};var _0x526239={'count':0x0,'rows':[]};return db[_0xc66e('0x2f')]['findOne']({'where':{'id':_0x2069d3['params']['id']}})[_0xc66e('0x25')](handleEntityNotFound(_0x48876c,null))[_0xc66e('0x25')](function(_0x5bfc07){if(_0x5bfc07){_0x5d97b3['model']=_['keys'](db[_0xc66e('0xbc')]['rawAttributes']);_0x5d97b3[_0xc66e('0x35')]=_[_0xc66e('0x34')](_0x2069d3['query']);_0x5d97b3[_0xc66e('0x36')]=_[_0xc66e('0x37')](_0x5d97b3[_0xc66e('0x33')],_0x5d97b3[_0xc66e('0x35')]);_0x548b8d[_0xc66e('0x38')]=_[_0xc66e('0x37')](_0x5d97b3[_0xc66e('0x33')],qs[_0xc66e('0x39')](_0x2069d3[_0xc66e('0x35')]['fields']));_0x548b8d['attributes']=_0x548b8d[_0xc66e('0x38')]['length']?_0x548b8d['attributes']:_0x5d97b3[_0xc66e('0x33')];if(!_0x2069d3['query']['hasOwnProperty'](_0xc66e('0x3b'))){_0x548b8d[_0xc66e('0x20')]=qs[_0xc66e('0x20')](_0x2069d3[_0xc66e('0x35')][_0xc66e('0x20')]);_0x548b8d[_0xc66e('0x1f')]=qs['offset'](_0x2069d3[_0xc66e('0x35')][_0xc66e('0x1f')]);}_0x548b8d['order']=qs['sort'](_0x2069d3['query'][_0xc66e('0x3c')]);_0x548b8d[_0xc66e('0x3d')]=qs[_0xc66e('0x36')](_['pick'](_0x2069d3[_0xc66e('0x35')],_0x5d97b3[_0xc66e('0x36')]));_0x548b8d[_0xc66e('0x3d')]['OpenchannelInteractionId']=_0x5bfc07['id'];if(_0x2069d3[_0xc66e('0x35')][_0xc66e('0x7e')]){_0x548b8d[_0xc66e('0x3d')]=_[_0xc66e('0x96')](_0x548b8d[_0xc66e('0x3d')],{'$or':_[_0xc66e('0x2a')](_0x548b8d['attributes'],function(_0x1bd814){var _0x500db2={};_0x500db2[_0x1bd814]={'$like':'%'+_0x2069d3['query'][_0xc66e('0x7e')]+'%'};return _0x500db2;})});}if(_0x2069d3[_0xc66e('0x35')][_0xc66e('0x76')]){var _0x3026dc=_0x2069d3[_0xc66e('0x35')][_0xc66e('0x76')][_0xc66e('0x2c')](',');var _0x2b5170={};_0x2b5170[_0x3026dc[0x0]]={'$gte':moment(_0x3026dc[0x1])[_0xc66e('0xbd')](_0xc66e('0xbe'))};_0x548b8d['where']=_[_0xc66e('0x96')](_0x548b8d[_0xc66e('0x3d')],_0x2b5170);}_0x548b8d=_['merge']({},_0x548b8d,_0x2069d3['options']);return db['OpenchannelMessage'][_0xc66e('0x1e')]({'where':_0x548b8d[_0xc66e('0x3d')]})['then'](function(_0x17098b){_0x526239[_0xc66e('0x1e')]=_0x17098b;if(_0x2069d3[_0xc66e('0x35')]['includeAll']){_0x548b8d['include']=[{'all':!![]}];}return db[_0xc66e('0xbc')][_0xc66e('0xbf')](_0x548b8d);})[_0xc66e('0x25')](function(_0x2a15f8){_0x526239[_0xc66e('0xb1')]=_0x2a15f8;return _0x526239;});}})[_0xc66e('0x25')](respondWithFilteredResult(_0x48876c,_0x548b8d))[_0xc66e('0x2e')](handleError(_0x48876c,null));};exports[_0xc66e('0xc0')]=function(_0x1870d4,_0x8ac8cf,_0x1e551d){return db[_0xc66e('0x2f')][_0xc66e('0x61')]({'where':{'id':_0x1870d4[_0xc66e('0xb2')]['id']}})[_0xc66e('0x25')](handleEntityNotFound(_0x8ac8cf,null))[_0xc66e('0x25')](function(_0x3e062b){if(_0x3e062b){return _0x3e062b['setTags'](_0x1870d4[_0xc66e('0x6d')][_0xc66e('0xba')],_[_0xc66e('0xc1')](_0x1870d4[_0xc66e('0x6d')],[_0xc66e('0xba'),'id'])||{})[_0xc66e('0xc2')](function(){return db['Tag'][_0xc66e('0xbf')]({'attributes':['id',_0xc66e('0x27'),_0xc66e('0x40')],'where':{'id':_0x1870d4[_0xc66e('0x6d')][_0xc66e('0xba')]}});})[_0xc66e('0x25')](function(_0x431549){socket[_0xc66e('0xc3')]('openchannelInteractionTags:save',{'id':Number(_0x1870d4[_0xc66e('0xb2')]['id']),'tags':_0x431549||[]});return{'id':Number(_0x1870d4[_0xc66e('0xb2')]['id']),'tags':_0x431549||[]};});}})[_0xc66e('0x25')](respondWithResult(_0x8ac8cf,null))[_0xc66e('0x2e')](handleError(_0x8ac8cf,null));};exports[_0xc66e('0xc4')]=function(_0x542b7b,_0x5946f4,_0x468edf){return db[_0xc66e('0x2f')][_0xc66e('0x61')]({'where':{'id':_0x542b7b['params']['id']}})[_0xc66e('0x25')](handleEntityNotFound(_0x5946f4,null))[_0xc66e('0x25')](function(_0x2864a5){if(_0x2864a5){return _0x2864a5[_0xc66e('0xc4')](_0x542b7b[_0xc66e('0x35')][_0xc66e('0xba')]);}})[_0xc66e('0x25')](respondWithStatusCode(_0x5946f4,null))['catch'](handleError(_0x5946f4,null));};exports[_0xc66e('0xc5')]=function(_0x11ef7d,_0x2391ea){var _0x5b7c=moment()[_0xc66e('0xc6')]()[_0xc66e('0xab')]();var _0x5ab829=path[_0xc66e('0xc7')](config['root'],_0xc66e('0xc8'),_0xc66e('0xc9'),_0xc66e('0xca'));var _0x253341=path['join'](config['root'],_0xc66e('0xc8'),'files',_0xc66e('0xcb'));var _0x450722=path[_0xc66e('0xc7')](_0x5ab829,_0x5b7c);var _0x46f643=util[_0xc66e('0xbd')]('transcript-%d-%s.zip',_0x11ef7d['params']['id'],_0x5b7c);var _0x4ddcee=path[_0xc66e('0xc7')](_0x5ab829,_0x46f643);var _0x59d1cd=[];_0x59d1cd[_0xc66e('0xaf')]({'model':db['User'],'as':_0xc66e('0x6a'),'attributes':['id',_0xc66e('0xcc')],'raw':!![]});_0x59d1cd['push']({'model':db['CmContact'],'as':_0xc66e('0xcd'),'attributes':['id',_0xc66e('0xce'),_0xc66e('0xcf')],'raw':!![]});if(_0x11ef7d[_0xc66e('0x35')][_0xc66e('0xcb')]){_0x59d1cd[_0xc66e('0xaf')]({'model':db[_0xc66e('0xd0')],'as':_0xc66e('0xd0'),'raw':!![]});}var _0x5a0f68=[{'model':db[_0xc66e('0xbc')],'as':'Messages','attributes':['id',_0xc66e('0x6d'),_0xc66e('0x74'),_0xc66e('0xd1'),_0xc66e('0xd2'),_0xc66e('0x7a')],'include':_0x59d1cd}];_0x5a0f68['push']({'model':db['OpenchannelAccount'],'as':_0xc66e('0xd3'),'attributes':['id','name']});_0x5a0f68[_0xc66e('0xaf')]({'model':db[_0xc66e('0x6a')],'as':_0xc66e('0xd4'),'attributes':['id','fullname']});return db[_0xc66e('0x2f')][_0xc66e('0x61')]({'where':{'id':_0x11ef7d[_0xc66e('0xb2')]['id']},'include':_0x5a0f68})['then'](handleEntityNotFound(_0x2391ea,null))[_0xc66e('0x25')](function(_0x345bb7){if(_0x345bb7){var _0x20a5e2=_0x345bb7[_0xc66e('0xd5')]({'plain':!![]});fs[_0xc66e('0xd6')](_0x450722);var _0x4fe09d={'channel':_0xc66e('0xd7'),'account':_0x20a5e2[_0xc66e('0xd3')][_0xc66e('0x27')],'agent':_0x20a5e2[_0xc66e('0xd4')]?_0x20a5e2[_0xc66e('0xd4')][_0xc66e('0xcc')]:_0xc66e('0xd8'),'createdAt':moment(_0x20a5e2[_0xc66e('0x74')])[_0xc66e('0xbd')](_0xc66e('0xbe'))['toString'](),'closedAt':_0x20a5e2[_0xc66e('0xd9')]?moment(_0x20a5e2[_0xc66e('0xda')])[_0xc66e('0xbd')](_0xc66e('0xbe'))[_0xc66e('0xab')]():'','disposition':_0x20a5e2[_0xc66e('0xdb')],'visibility':_0x20a5e2[_0xc66e('0xdc')]?'Public':'Private','messages':_(_0x20a5e2[_0xc66e('0xdd')])[_0xc66e('0x7e')]({'secret':![]})[_0xc66e('0x2a')](function(_0x4c3a82){if(_0x4c3a82[_0xc66e('0xd0')]){var _0x465a79=path[_0xc66e('0xc7')](_0x253341,_0x4c3a82[_0xc66e('0xd0')][_0xc66e('0xde')]);if(fs[_0xc66e('0xdf')](_0x465a79)){fs['createReadStream'](_0x465a79)[_0xc66e('0xe0')](fs['createWriteStream'](path[_0xc66e('0xc7')](_0x450722,_0x4c3a82[_0xc66e('0xd0')]['basename'])));}}return{'date':moment(_0x4c3a82[_0xc66e('0x74')])[_0xc66e('0xbd')]('YYYY-MM-DD\x20HH:mm:ss')[_0xc66e('0xab')](),'sender':_0x4c3a82[_0xc66e('0xd1')]===_0xc66e('0xe1')?_0x4c3a82[_0xc66e('0x6a')]?_0x4c3a82[_0xc66e('0x6a')][_0xc66e('0xcc')]:_0xc66e('0xe2'):_0x4c3a82[_0xc66e('0xcd')][_0xc66e('0xce')]+(_0x4c3a82['Contact'][_0xc66e('0xcf')]?'\x20'+_0x4c3a82[_0xc66e('0xcd')][_0xc66e('0xcf')]:''),'body':_0x4c3a82[_0xc66e('0xd0')]?_0x4c3a82[_0xc66e('0xd0')]['basename']:_0x4c3a82['body'],'direction':_0x4c3a82[_0xc66e('0xd1')]==='out'?'A':'C','secret':_0x4c3a82[_0xc66e('0xd2')],'read':_0x4c3a82[_0xc66e('0x7a')],'attachment':_0x4c3a82[_0xc66e('0xd0')]};})['value']()};return ejs[_0xc66e('0xe3')](path['join'](config['root'],_0xc66e('0xc8'),'views',_0xc66e('0xe4')),{'interaction':_0x4fe09d})[_0xc66e('0x25')](function(_0x5f4fd9){var _0x28b15d=path[_0xc66e('0xc7')](_0x450722,'transcript-'+_0x20a5e2['id']+'-'+_0x5b7c+_0xc66e('0xe5'));var _0x394cbe={'path':_0x28b15d,'channel':'Openchannel','interactionId':_0x20a5e2['id']};return pdf[_0xc66e('0xe6')](_0x5f4fd9,_0x394cbe);})['then'](function(){return new BPromise(function(_0x5cd3d3,_0x26bd6e){zipdir(_0x450722,{'saveTo':_0x4ddcee},function(_0x4b7685,_0x13760c){if(_0x4b7685)return _0x26bd6e(_0x4b7685);return _0x5cd3d3(_0x13760c);});})[_0xc66e('0x25')](function(){return new BPromise(function(_0x16d8ff,_0x52748e){rimraf(_0x450722,function(_0x34e759){if(_0x34e759)_0x52748e(_0x34e759);return _0x16d8ff();});});})['then'](function(){return _0x2391ea['download'](_0x4ddcee,_0x46f643,function(_0x50ef53){if(_0x50ef53){console[_0xc66e('0xe7')]('err',_0x50ef53);}else{fs[_0xc66e('0xe8')](_0x4ddcee);}});});});}else{return _0x2391ea[_0xc66e('0x1a')](0xc8);}})[_0xc66e('0x2e')](handleError(_0x2391ea,null));};