Built motion from commit (unavailable).|2.5.3
[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 _0xc326=['Owner.internal','ui.OpenchannelInteractionId\x20IN\x20?','groupBy','OpenchannelInteractionId','push','all','rows','show','params','OpenchannelInteraction','rawAttributes','includeAll','include','options','update','describe','addMessage','OpenchannelMessage','ids','pick','format','addTags','setTags','omit','spread','findAll','emit','download','unix','join','root','tmp','server','files','attachments','CmContact','firstName','lastName','Attachment','direction','secret','OpenchannelAccount','get','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>','%s\x20#%d','YYYY-MM-DD','Openchannel','Account','Owner','YYYY-MM-DD\x20HH:mm:ss','closedAt','Public','Private','Messages','existsSync','createReadStream','pipe','basename','out','System','renderFile','views','downloadInteraction.html','create','toFile','transcript-','.pdf','err','unlinkSync','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','util','path','sox','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','register','sendStatus','status','end','json','count','offset','limit','set','apply','reject','save','destroy','then','error','Users','map','fullname','TagIds','split','Tags','catch','index','fieldName','type','key','name','keys','intersection','model','query','fields','attributes','length','hasOwnProperty','nolimit','sort','where','filters','select','field','tools_tags','u.id','u.fullname','ui.OpenchannelInteractionId','from','user_has_openchannel_interactions','left_join','u.id\x20=\x20ui.UserId','openchannel_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','a.id\x20=\x20i.OpenchannelAccountId','openchannel_messages','me.OpenchannelInteractionId\x20=\x20i.id','openchannel_interaction_has_tags','it.OpenchannelInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','unreadMessages','value','having','`\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)','ContactId','buildExpression','text','start','Tag','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','$substring','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','find','UserId','body','some','compact','isEmpty','OpenchannelAccountId','i.OpenchannelAccountId\x20IN\x20?','concat','createdAt','parse','$gte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20=\x20?','read','`unreadMessages`\x20=\x200','tag','isArray','filter','replace','isNumeric','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','i.from\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','i.id','QueryTypes','SELECT','clone','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','order','t.id\x20IN\x20?','resolve','journey','i.OpenchannelAccountId\x20IS\x20NOT\x20NULL','user','getOpenchannelAccounts','i.OpenchannelAccountId\x20IS\x20NULL','sequelize','toString','keyBy','merge','a.key','Account.key','Account.mandatoryDisposition','c.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Owner.fullname','o.internal'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0xc326,0x138));var _0x6c32=function(_0x3d0a9d,_0x502799){_0x3d0a9d=_0x3d0a9d-0x0;var _0x4f4f39=_0xc326[_0x3d0a9d];return _0x4f4f39;};'use strict';var pdf=require(_0x6c32('0x0'));var emlformat=require(_0x6c32('0x1'));var rimraf=require(_0x6c32('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6c32('0x3'));var rp=require(_0x6c32('0x4'));var moment=require(_0x6c32('0x5'));var BPromise=require(_0x6c32('0x6'));var Mustache=require('mustache');var util=require(_0x6c32('0x7'));var path=require(_0x6c32('0x8'));var sox=require(_0x6c32('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x6c32('0xa'));var squel=require(_0x6c32('0xb'));var crypto=require(_0x6c32('0xc'));var jsforce=require(_0x6c32('0xd'));var deskjs=require(_0x6c32('0xe'));var toCsv=require(_0x6c32('0xf'));var querystring=require(_0x6c32('0x10'));var Papa=require(_0x6c32('0x11'));var Redis=require(_0x6c32('0x12'));var authService=require(_0x6c32('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0x6c32('0x14'));var hardwareService=require(_0x6c32('0x15'));var logger=require(_0x6c32('0x16'))('api');var utils=require(_0x6c32('0x17'));var config=require(_0x6c32('0x18'));var db=require(_0x6c32('0x19'))['db'];config[_0x6c32('0x1a')]=_['defaults'](config[_0x6c32('0x1a')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./openchannelInteraction.socket')[_0x6c32('0x1b')](socket);function respondWithStatusCode(_0x364278,_0x54cb26){_0x54cb26=_0x54cb26||0xcc;return function(_0x5c78a8){if(_0x5c78a8){return _0x364278[_0x6c32('0x1c')](_0x54cb26);}return _0x364278[_0x6c32('0x1d')](_0x54cb26)[_0x6c32('0x1e')]();};}function respondWithResult(_0x51fde6,_0x52adbb){_0x52adbb=_0x52adbb||0xc8;return function(_0x1b3fa9){if(_0x1b3fa9){return _0x51fde6[_0x6c32('0x1d')](_0x52adbb)[_0x6c32('0x1f')](_0x1b3fa9);}};}function respondWithFilteredResult(_0x14d39a,_0x2195a1){return function(_0x2d33e5){if(_0x2d33e5){var _0x47cbb7=_0x2d33e5[_0x6c32('0x20')],_0x51e551=_0x2195a1[_0x6c32('0x21')],_0x464b62=_0x2195a1[_0x6c32('0x21')]+_0x2195a1[_0x6c32('0x22')],_0x558724;if(_0x464b62>=_0x47cbb7){_0x464b62=_0x47cbb7;_0x558724=0xc8;}else{_0x558724=0xce;}_0x14d39a[_0x6c32('0x1d')](_0x558724);return _0x14d39a[_0x6c32('0x23')]('Content-Range',_0x51e551+'-'+_0x464b62+'/'+_0x47cbb7)[_0x6c32('0x1f')](_0x2d33e5);}return null;};}function patchUpdates(_0x249661){return function(_0x2c7806){try{jsonpatch[_0x6c32('0x24')](_0x2c7806,_0x249661,!![]);}catch(_0x341ea8){return BPromise[_0x6c32('0x25')](_0x341ea8);}return _0x2c7806[_0x6c32('0x26')]();};}function saveUpdates(_0x569c0c,_0xcf0e47){return function(_0x1ea179){if(_0x1ea179){return _0x1ea179['update'](_0x569c0c)['then'](function(_0x1d23b2){return _0x1d23b2;});}return null;};}function removeEntity(_0x3a76f8,_0x598965){return function(_0x590a9b){if(_0x590a9b){return _0x590a9b[_0x6c32('0x27')]()[_0x6c32('0x28')](function(){_0x3a76f8[_0x6c32('0x1d')](0xcc)[_0x6c32('0x1e')]();});}};}function handleEntityNotFound(_0x4a4a97,_0x166bc3){return function(_0x56e18f){if(!_0x56e18f){_0x4a4a97[_0x6c32('0x1c')](0x194);}return _0x56e18f;};}function handleError(_0x33f407,_0x5653d4){_0x5653d4=_0x5653d4||0x1f4;return function(_0x400e1e){logger[_0x6c32('0x29')](_0x400e1e['stack']);if(_0x400e1e['name']){delete _0x400e1e['name'];}_0x33f407['status'](_0x5653d4)['send'](_0x400e1e);};}function getInteractionUsers(_0x449903,_0x144373){return new BPromise(function(_0x3b923a,_0x17f6f3){try{if(_0x144373[_0x449903['id']]){_0x449903[_0x6c32('0x2a')]=_[_0x6c32('0x2b')](_0x144373[_0x449903['id']],function(_0x662994){return{'id':_0x662994['id'],'fullname':_0x662994[_0x6c32('0x2c')]};});}}catch(_0x26340e){_0x17f6f3(_0x26340e);}_0x3b923a(_0x449903);});}function getInteractionTags(_0x538186,_0x198dcb){return new BPromise(function(_0x582136,_0xd00224){try{if(_0x538186[_0x6c32('0x2d')]){_0x538186['Tags']=[];_0x538186[_0x6c32('0x2d')][_0x6c32('0x2e')](',')['forEach'](function(_0x4ded7a){_0x538186[_0x6c32('0x2f')]['push'](_0x198dcb[_0x4ded7a]);});}delete _0x538186[_0x6c32('0x2d')];}catch(_0x4b9184){_0xd00224(_0x4b9184);}_0x582136(_0x538186);});}function updateOpenchannelInteraction(_0x45f22b,_0x255cb1,_0x3a7179){return new BPromise(function(_0x2b11b5,_0x4646d6){return getInteractionUsers(_0x45f22b,_0x3a7179)['then'](function(_0x5e93e1){return getInteractionTags(_0x5e93e1,_0x255cb1);})['then'](function(_0x1cb687){_0x2b11b5(_0x1cb687);})[_0x6c32('0x30')](function(_0x2e6c4c){_0x4646d6(_0x2e6c4c);});});}exports[_0x6c32('0x31')]=function(_0x19bd20,_0x50fc9a){var _0x339257={},_0x275bb5={},_0xde3de6={'count':0x0,'rows':[]};var _0x52db52=_[_0x6c32('0x2b')](db['OpenchannelInteraction']['rawAttributes'],function(_0x536faf){return{'name':_0x536faf[_0x6c32('0x32')],'type':_0x536faf[_0x6c32('0x33')][_0x6c32('0x34')]};});_0x275bb5['model']=_[_0x6c32('0x2b')](_0x52db52,_0x6c32('0x35'));_0x275bb5['query']=_[_0x6c32('0x36')](_0x19bd20['query']);_0x275bb5['filters']=_[_0x6c32('0x37')](_0x275bb5[_0x6c32('0x38')],_0x275bb5[_0x6c32('0x39')]);_0x339257['attributes']=_['intersection'](_0x275bb5[_0x6c32('0x38')],qs[_0x6c32('0x3a')](_0x19bd20[_0x6c32('0x39')]['fields']));_0x339257[_0x6c32('0x3b')]=_0x339257[_0x6c32('0x3b')][_0x6c32('0x3c')]?_0x339257[_0x6c32('0x3b')]:_0x275bb5[_0x6c32('0x38')];if(!_0x19bd20[_0x6c32('0x39')][_0x6c32('0x3d')](_0x6c32('0x3e'))){_0x339257[_0x6c32('0x22')]=qs[_0x6c32('0x22')](_0x19bd20[_0x6c32('0x39')][_0x6c32('0x22')]);_0x339257[_0x6c32('0x21')]=qs[_0x6c32('0x21')](_0x19bd20[_0x6c32('0x39')][_0x6c32('0x21')]);}_0x339257['order']=qs[_0x6c32('0x3f')](_0x19bd20[_0x6c32('0x39')][_0x6c32('0x3f')]);_0x339257[_0x6c32('0x40')]=qs[_0x6c32('0x41')](_['pick'](_0x19bd20[_0x6c32('0x39')],_0x275bb5[_0x6c32('0x41')]),_0x52db52);var _0x2148e2=[];var _0x39f765=squel[_0x6c32('0x42')]()[_0x6c32('0x43')]('id')['field']('name')[_0x6c32('0x43')]('color')['from'](_0x6c32('0x44'));var _0x5066d8=squel['select']()['field'](_0x6c32('0x45'))[_0x6c32('0x43')](_0x6c32('0x46'))[_0x6c32('0x43')](_0x6c32('0x47'))[_0x6c32('0x48')](_0x6c32('0x49'),'ui')[_0x6c32('0x4a')]('users','u',_0x6c32('0x4b'));var _0x12e37d=squel[_0x6c32('0x42')]()['from'](_0x6c32('0x4c'),'i')['left_join'](_0x6c32('0x4d'),'c',_0x6c32('0x4e'))[_0x6c32('0x4a')]('users','o',_0x6c32('0x4f'))[_0x6c32('0x4a')]('openchannel_accounts','a',_0x6c32('0x50'))['left_join'](_0x6c32('0x51'),'me',_0x6c32('0x52'))[_0x6c32('0x4a')](_0x6c32('0x53'),'it',_0x6c32('0x54'))['left_join'](_0x6c32('0x44'),'t',_0x6c32('0x55'));var _0x1023ba=squel['expr']();var _0x28c03a=[];var _0x573103=squel[_0x6c32('0x56')]();var _0x16ca5c;if(_0x19bd20[_0x6c32('0x39')][_0x6c32('0x57')]){_0x16ca5c=as[_0x6c32('0x58')](_0x19bd20[_0x6c32('0x39')]['search']);var _0x62df10=_0x16ca5c[_0x6c32('0x59')];for(var _0x362339=0x0;_0x362339<_0x16ca5c[_0x6c32('0x5a')][_0x6c32('0x3c')];_0x362339++){var _0x42827d=_0x16ca5c[_0x6c32('0x5a')][_0x362339];var _0x33723f='i';var _0x4bcf01=_['find'](_0x52db52,[_0x6c32('0x35'),_0x42827d[_0x6c32('0x43')]]);if(!_0x4bcf01){switch(_0x42827d[_0x6c32('0x43')]){case _0x6c32('0x5b'):if(_0x42827d[_0x6c32('0x5c')]==0x1){_0x12e37d[_0x6c32('0x5d')]('`'+_0x42827d['field']+_0x6c32('0x5e'));}else{_0x12e37d[_0x6c32('0x5d')]('`'+_0x42827d[_0x6c32('0x43')]+_0x6c32('0x5f'));}break;case _0x6c32('0x60'):if(_0x42827d[_0x6c32('0x61')]==='$substring'){if(_0x42827d[_0x6c32('0x5c')][_0x6c32('0x2e')]('\x20')[_0x6c32('0x3c')]>0x1){_0x1023ba[_0x62df10](_0x6c32('0x62'),qs['getFullTextValue'](_0x42827d[_0x6c32('0x5c')]),null);}else{var _0x26ef1c='%'+_0x42827d[_0x6c32('0x5c')]+'%';_0x1023ba[_0x62df10]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x26ef1c,_0x26ef1c,_0x26ef1c);}}else{_0x4bcf01=_['find'](_0x52db52,[_0x6c32('0x35'),'ContactId']);_0x42827d[_0x6c32('0x43')]=_0x6c32('0x63');_0x51f28d=as[_0x6c32('0x64')](_0x33723f,_0x4bcf01[_0x6c32('0x33')],_0x42827d);_0x1023ba[_0x62df10](_0x51f28d[_0x6c32('0x65')],_0x51f28d['value'][_0x6c32('0x66')],_0x51f28d[_0x6c32('0x5c')][_0x6c32('0x1e')]);}break;case _0x6c32('0x67'):var _0x15506b=_0x42827d[_0x6c32('0x5c')][_0x6c32('0x2e')](',')[_0x6c32('0x2b')](function(_0x3f3eca){return Number(_0x3f3eca);});_0x15506b[_0x6c32('0x68')](function(_0x7b825){_0x573103['or'](_0x6c32('0x69'),'%,'+_0x7b825+',%');});_0x28c03a=_[_0x6c32('0x6a')](_0x28c03a,_0x15506b);break;case _0x6c32('0x6b'):if(_0x42827d[_0x6c32('0x61')]===_0x6c32('0x6c')){_0x1023ba[_0x62df10](_0x6c32('0x6d'),'%'+_0x42827d[_0x6c32('0x5c')]+'%',null);}else{_0x4bcf01=_[_0x6c32('0x6e')](_0x52db52,['name',_0x6c32('0x6f')]);_0x42827d[_0x6c32('0x43')]=_0x6c32('0x6f');_0x51f28d=as[_0x6c32('0x64')](_0x33723f,_0x4bcf01[_0x6c32('0x33')],_0x42827d);_0x1023ba[_0x62df10](_0x51f28d[_0x6c32('0x65')],_0x51f28d[_0x6c32('0x5c')][_0x6c32('0x66')],_0x51f28d[_0x6c32('0x5c')][_0x6c32('0x1e')]);}break;case _0x6c32('0x70'):_0x51f28d=as[_0x6c32('0x64')]('me',null,_0x42827d);_0x1023ba[_0x62df10](_0x51f28d['text'],_0x51f28d['value'][_0x6c32('0x66')],_0x51f28d[_0x6c32('0x5c')][_0x6c32('0x1e')]);break;}}else{var _0x51f28d=as[_0x6c32('0x64')](_0x33723f,_0x4bcf01['type'],_0x42827d);_0x1023ba[_0x62df10](_0x51f28d[_0x6c32('0x65')],_0x51f28d[_0x6c32('0x5c')][_0x6c32('0x66')],_0x51f28d['value'][_0x6c32('0x1e')]);}}}else{var _0xd985fb=_(_0x19bd20[_0x6c32('0x39')])[_0x6c32('0x36')]()['map'](function(_0x74d2ed){return _[_0x6c32('0x71')](_0x52db52,[_0x6c32('0x35'),_0x74d2ed])?_0x74d2ed:undefined;})[_0x6c32('0x72')]()['value']();if(!_[_0x6c32('0x73')](_0xd985fb)){_0xd985fb[_0x6c32('0x68')](function(_0x2f5109){if(_0x2f5109===_0x6c32('0x74')){_0x12e37d['where'](_0x6c32('0x75'),[][_0x6c32('0x76')](_0x19bd20['query'][_0x2f5109]));}else if(_0x2f5109===_0x6c32('0x77')){var _0x3b57d7=JSON[_0x6c32('0x78')](_0x19bd20[_0x6c32('0x39')][_0x2f5109])[_0x6c32('0x79')];var _0x4a2961=JSON[_0x6c32('0x78')](_0x19bd20[_0x6c32('0x39')][_0x2f5109])['$lte'];_0x12e37d[_0x6c32('0x40')](_0x6c32('0x7a'),_0x3b57d7,_0x4a2961);}else{if(_0x19bd20[_0x6c32('0x39')][_0x2f5109]==='null'){_0x12e37d[_0x6c32('0x40')]('i.'+_0x2f5109+'\x20IS\x20NULL');}else{_0x12e37d[_0x6c32('0x40')]('i.'+_0x2f5109+_0x6c32('0x7b'),_0x19bd20[_0x6c32('0x39')][_0x2f5109]);}}});}if(_0x19bd20[_0x6c32('0x39')][_0x6c32('0x7c')]){if(_0x19bd20[_0x6c32('0x39')][_0x6c32('0x7c')]==0x1){_0x12e37d[_0x6c32('0x5d')](_0x6c32('0x7d'));}else{_0x12e37d[_0x6c32('0x5d')]('`unreadMessages`\x20>\x200');}}if(_0x19bd20[_0x6c32('0x39')][_0x6c32('0x7e')]){_0x28c03a=_[_0x6c32('0x7f')](_0x19bd20[_0x6c32('0x39')][_0x6c32('0x7e')])?_0x19bd20[_0x6c32('0x39')][_0x6c32('0x7e')]:new Array(_0x19bd20['query'][_0x6c32('0x7e')]);_0x28c03a['forEach'](function(_0x48cc6d){_0x573103['or'](_0x6c32('0x69'),'%,'+_0x48cc6d+',%');});}if(_0x19bd20[_0x6c32('0x39')][_0x6c32('0x80')]){var _0x3e5d79=_0x19bd20[_0x6c32('0x39')][_0x6c32('0x80')][_0x6c32('0x81')]('\x5c','\x5c\x5c')[_0x6c32('0x81')]('\x27\x27','\x27\x27\x27\x27');if(qs[_0x6c32('0x82')](_0x3e5d79)){_0x1023ba['or']('i.id\x20LIKE\x20?',_0x3e5d79+'%');}else{_0x1023ba['or'](_0x6c32('0x83'),qs[_0x6c32('0x84')](_0x3e5d79))['or'](_0x6c32('0x85'),_0x3e5d79+'%')['or'](_0x6c32('0x86'),_0x3e5d79+'%');}}}_0x12e37d[_0x6c32('0x40')](_0x1023ba);_0x12e37d[_0x6c32('0x87')](_0x6c32('0x88'));var _0x17d5ab={'type':db['Sequelize'][_0x6c32('0x89')][_0x6c32('0x8a')],'raw':!![]};var _0x5670b5=_0x12e37d[_0x6c32('0x8b')]();_0x5670b5['field']('i.id');_0x5670b5[_0x6c32('0x43')](_0x6c32('0x8c'),_0x6c32('0x5b'));if(_0x339257[_0x6c32('0x8d')]){_0x339257[_0x6c32('0x8d')]['forEach'](function(_0x34ac6e){_0x12e37d[_0x6c32('0x8d')]('i.'+_0x34ac6e[0x0],_0x34ac6e[0x1]==='DESC'?![]:!![]);});}if(!_['isEmpty'](_0x28c03a)){_0x12e37d[_0x6c32('0x5d')](_0x573103);_0x5670b5['where'](_0x6c32('0x8e'),_0x28c03a);}BPromise[_0x6c32('0x8f')]()[_0x6c32('0x28')](function(){if(!_0x16ca5c){if(_0x19bd20[_0x6c32('0x39')][_0x6c32('0x74')]||_0x19bd20[_0x6c32('0x39')][_0x6c32('0x90')])return;_0x5670b5['where'](_0x6c32('0x91'));_0x12e37d['where'](_0x6c32('0x91'));return;}return _0x19bd20[_0x6c32('0x92')][_0x6c32('0x93')]({'attributes':['id'],'raw':!![]})[_0x6c32('0x28')](function(_0x185a07){if(_[_0x6c32('0x73')](_0x185a07)){_0x5670b5[_0x6c32('0x40')](_0x6c32('0x94'));_0x12e37d[_0x6c32('0x40')](_0x6c32('0x94'));}else{_0x5670b5[_0x6c32('0x40')](_0x6c32('0x75'),_[_0x6c32('0x2b')](_0x185a07,'id'));_0x12e37d[_0x6c32('0x40')](_0x6c32('0x75'),_[_0x6c32('0x2b')](_0x185a07,'id'));}});})['then'](function(){db[_0x6c32('0x95')]['query'](_0x5670b5[_0x6c32('0x96')](),_0x17d5ab)['then'](function(_0x3d5157){_0xde3de6[_0x6c32('0x20')]=_0x3d5157['length'];if(_0xde3de6[_0x6c32('0x20')]===0x0)return[];return db['sequelize'][_0x6c32('0x39')](_0x39f765[_0x6c32('0x96')](),_0x17d5ab)[_0x6c32('0x28')](function(_0x26ba6f){_0x2148e2=_[_0x6c32('0x97')](_0x26ba6f,'id');_0x17d5ab=_[_0x6c32('0x98')](_0x17d5ab,{'model':db['OpenchannelInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x19bd20['query'][_0x6c32('0x3a')]){_0x339257[_0x6c32('0x3b')][_0x6c32('0x68')](function(_0x37ff64){_0x12e37d[_0x6c32('0x43')]('i.'+_0x37ff64);});}else{_0x12e37d[_0x6c32('0x43')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x6c32('0x5b'));_0x12e37d[_0x6c32('0x43')](_0x6c32('0x99'),_0x6c32('0x9a'));_0x12e37d[_0x6c32('0x43')]('a.mandatoryDisposition',_0x6c32('0x9b'));_0x12e37d[_0x6c32('0x43')]('i.*');_0x12e37d['field'](_0x6c32('0x9c'),'Contact.firstName');_0x12e37d[_0x6c32('0x43')](_0x6c32('0x9d'),_0x6c32('0x9e'));_0x12e37d[_0x6c32('0x43')](_0x6c32('0x9f'),_0x6c32('0xa0'));_0x12e37d[_0x6c32('0x43')](_0x6c32('0xa1'),_0x6c32('0xa2'));_0x12e37d[_0x6c32('0x43')](_0x6c32('0xa3'),_0x6c32('0xa4'));_0x12e37d['field'](_0x6c32('0xa5'),'Contact.fax');_0x12e37d['field']('o.fullname',_0x6c32('0xa6'));_0x12e37d[_0x6c32('0x43')](_0x6c32('0xa7'),_0x6c32('0xa8'));_0x12e37d[_0x6c32('0x43')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x6c32('0x2d'));}if(_0x339257[_0x6c32('0x22')])_0x12e37d[_0x6c32('0x22')](_0x339257['limit']);if(_0x339257[_0x6c32('0x21')])_0x12e37d[_0x6c32('0x21')](_0x339257[_0x6c32('0x21')]);return db[_0x6c32('0x95')][_0x6c32('0x39')](_0x12e37d[_0x6c32('0x96')](),_0x17d5ab);})[_0x6c32('0x28')](function(_0x5864dc){_0x5066d8[_0x6c32('0x40')](_0x6c32('0xa9'),_[_0x6c32('0x2b')](_0x5864dc,'id'));return db[_0x6c32('0x95')][_0x6c32('0x39')](_0x5066d8[_0x6c32('0x96')](),_0x17d5ab)[_0x6c32('0x28')](function(_0x933ef1){var _0x5de8c2=_[_0x6c32('0xaa')](_0x933ef1,_0x6c32('0xab'));var _0x238564=[];_0x5864dc[_0x6c32('0x68')](function(_0x45fbc0){_0x238564[_0x6c32('0xac')](updateOpenchannelInteraction(_0x45fbc0,_0x2148e2,_0x5de8c2));});return BPromise[_0x6c32('0xad')](_0x238564);});});})[_0x6c32('0x28')](function(_0x1148f3){_0xde3de6[_0x6c32('0xae')]=_0x1148f3;return _0xde3de6;})[_0x6c32('0x28')](respondWithFilteredResult(_0x50fc9a,_0x339257));})[_0x6c32('0x30')](handleError(_0x50fc9a,null));};exports[_0x6c32('0xaf')]=function(_0x31c48f,_0x5ab88a){var _0x4d4451={'raw':![],'where':{'id':_0x31c48f[_0x6c32('0xb0')]['id']}},_0x5793dd={};_0x5793dd['model']=_['keys'](db[_0x6c32('0xb1')][_0x6c32('0xb2')]);_0x5793dd[_0x6c32('0x39')]=_['keys'](_0x31c48f[_0x6c32('0x39')]);_0x5793dd['filters']=_[_0x6c32('0x37')](_0x5793dd['model'],_0x5793dd[_0x6c32('0x39')]);_0x4d4451[_0x6c32('0x3b')]=_['intersection'](_0x5793dd[_0x6c32('0x38')],qs[_0x6c32('0x3a')](_0x31c48f[_0x6c32('0x39')][_0x6c32('0x3a')]));_0x4d4451[_0x6c32('0x3b')]=_0x4d4451[_0x6c32('0x3b')][_0x6c32('0x3c')]?_0x4d4451['attributes']:_0x5793dd['model'];if(_0x31c48f['query'][_0x6c32('0xb3')]){_0x4d4451[_0x6c32('0xb4')]=[{'all':!![]}];}_0x4d4451=_[_0x6c32('0x98')]({},_0x4d4451,_0x31c48f[_0x6c32('0xb5')]);return db[_0x6c32('0xb1')]['find'](_0x4d4451)[_0x6c32('0x28')](handleEntityNotFound(_0x5ab88a,null))['then'](respondWithResult(_0x5ab88a,null))[_0x6c32('0x30')](handleError(_0x5ab88a,null));};exports['create']=function(_0x54caef,_0x4df575){return db[_0x6c32('0xb1')]['create'](_0x54caef[_0x6c32('0x70')],{})[_0x6c32('0x28')](respondWithResult(_0x4df575,0xc9))[_0x6c32('0x30')](handleError(_0x4df575,null));};exports[_0x6c32('0xb6')]=function(_0x1ac859,_0x400fd0){if(_0x1ac859[_0x6c32('0x70')]['id']){delete _0x1ac859[_0x6c32('0x70')]['id'];}return db[_0x6c32('0xb1')]['find']({'where':{'id':_0x1ac859[_0x6c32('0xb0')]['id']}})[_0x6c32('0x28')](handleEntityNotFound(_0x400fd0,null))[_0x6c32('0x28')](saveUpdates(_0x1ac859[_0x6c32('0x70')],null))[_0x6c32('0x28')](respondWithResult(_0x400fd0,null))[_0x6c32('0x30')](handleError(_0x400fd0,null));};exports[_0x6c32('0x27')]=function(_0x37c7b0,_0x334578){return db[_0x6c32('0xb1')][_0x6c32('0x6e')]({'where':{'id':_0x37c7b0[_0x6c32('0xb0')]['id']}})[_0x6c32('0x28')](handleEntityNotFound(_0x334578,null))[_0x6c32('0x28')](removeEntity(_0x334578,null))[_0x6c32('0x30')](handleError(_0x334578,null));};exports[_0x6c32('0xb7')]=function(_0xfe46ba,_0xd8e820){return db[_0x6c32('0xb1')]['describe']()[_0x6c32('0x28')](respondWithResult(_0xd8e820,null))[_0x6c32('0x30')](handleError(_0xd8e820,null));};exports[_0x6c32('0xb8')]=function(_0x440cf9,_0x4b720a,_0x4b641b){return db[_0x6c32('0xb9')][_0x6c32('0x6e')]({'where':{'id':_0x440cf9['params']['id']}})['then'](handleEntityNotFound(_0x4b720a,null))['then'](function(_0x46eef5){if(_0x46eef5){return _0x46eef5[_0x6c32('0xb8')](_0x440cf9[_0x6c32('0x70')][_0x6c32('0xba')],_['omit'](_0x440cf9['body'],['ids','id'])||{});}})[_0x6c32('0x28')](respondWithResult(_0x4b720a,null))['catch'](handleError(_0x4b720a,null));};exports['getMessages']=function(_0x634bcc,_0x29085e,_0x65a405){var _0x44b031={'raw':![],'where':{}};var _0x16d10a={};var _0x123d81={'count':0x0,'rows':[]};return db[_0x6c32('0xb1')]['findOne']({'where':{'id':_0x634bcc[_0x6c32('0xb0')]['id']}})[_0x6c32('0x28')](handleEntityNotFound(_0x29085e,null))[_0x6c32('0x28')](function(_0x53cd49){if(_0x53cd49){_0x16d10a[_0x6c32('0x38')]=_[_0x6c32('0x36')](db[_0x6c32('0xb9')]['rawAttributes']);_0x16d10a['query']=_['keys'](_0x634bcc['query']);_0x16d10a[_0x6c32('0x41')]=_[_0x6c32('0x37')](_0x16d10a['model'],_0x16d10a['query']);_0x44b031[_0x6c32('0x3b')]=_[_0x6c32('0x37')](_0x16d10a[_0x6c32('0x38')],qs['fields'](_0x634bcc['query'][_0x6c32('0x3a')]));_0x44b031[_0x6c32('0x3b')]=_0x44b031[_0x6c32('0x3b')][_0x6c32('0x3c')]?_0x44b031[_0x6c32('0x3b')]:_0x16d10a[_0x6c32('0x38')];if(!_0x634bcc[_0x6c32('0x39')][_0x6c32('0x3d')](_0x6c32('0x3e'))){_0x44b031['limit']=qs[_0x6c32('0x22')](_0x634bcc['query'][_0x6c32('0x22')]);_0x44b031[_0x6c32('0x21')]=qs[_0x6c32('0x21')](_0x634bcc[_0x6c32('0x39')][_0x6c32('0x21')]);}_0x44b031[_0x6c32('0x8d')]=qs[_0x6c32('0x3f')](_0x634bcc['query'][_0x6c32('0x3f')]);_0x44b031[_0x6c32('0x40')]=qs['filters'](_[_0x6c32('0xbb')](_0x634bcc[_0x6c32('0x39')],_0x16d10a['filters']));_0x44b031[_0x6c32('0x40')]['OpenchannelInteractionId']=_0x53cd49['id'];if(_0x634bcc[_0x6c32('0x39')]['filter']){_0x44b031[_0x6c32('0x40')]=_[_0x6c32('0x98')](_0x44b031[_0x6c32('0x40')],{'$or':_['map'](_0x44b031[_0x6c32('0x3b')],function(_0x185c4e){var _0x38fe87={};_0x38fe87[_0x185c4e]={'$like':'%'+_0x634bcc[_0x6c32('0x39')]['filter']+'%'};return _0x38fe87;})});}if(_0x634bcc[_0x6c32('0x39')][_0x6c32('0x79')]){var _0x430d99=_0x634bcc[_0x6c32('0x39')][_0x6c32('0x79')][_0x6c32('0x2e')](',');var _0x21030e={};_0x21030e[_0x430d99[0x0]]={'$gte':moment(_0x430d99[0x1])[_0x6c32('0xbc')]('YYYY-MM-DD\x20HH:mm:ss')};_0x44b031[_0x6c32('0x40')]=_[_0x6c32('0x98')](_0x44b031[_0x6c32('0x40')],_0x21030e);}_0x44b031=_['merge']({},_0x44b031,_0x634bcc[_0x6c32('0xb5')]);return db[_0x6c32('0xb9')][_0x6c32('0x20')]({'where':_0x44b031['where']})[_0x6c32('0x28')](function(_0x162c08){_0x123d81[_0x6c32('0x20')]=_0x162c08;if(_0x634bcc[_0x6c32('0x39')][_0x6c32('0xb3')]){_0x44b031[_0x6c32('0xb4')]=[{'all':!![]}];}return db[_0x6c32('0xb9')]['findAll'](_0x44b031);})[_0x6c32('0x28')](function(_0x153862){_0x123d81[_0x6c32('0xae')]=_0x153862;return _0x123d81;});}})[_0x6c32('0x28')](respondWithFilteredResult(_0x29085e,_0x44b031))[_0x6c32('0x30')](handleError(_0x29085e,null));};exports[_0x6c32('0xbd')]=function(_0x1b9b1d,_0x52a59c,_0x300a00){return db[_0x6c32('0xb1')][_0x6c32('0x6e')]({'where':{'id':_0x1b9b1d[_0x6c32('0xb0')]['id']}})[_0x6c32('0x28')](handleEntityNotFound(_0x52a59c,null))[_0x6c32('0x28')](function(_0x111549){if(_0x111549){return _0x111549[_0x6c32('0xbe')](_0x1b9b1d['body'][_0x6c32('0xba')],_[_0x6c32('0xbf')](_0x1b9b1d['body'],['ids','id'])||{})[_0x6c32('0xc0')](function(){return db['Tag'][_0x6c32('0xc1')]({'attributes':['id','name','color'],'where':{'id':_0x1b9b1d[_0x6c32('0x70')][_0x6c32('0xba')]}});})[_0x6c32('0x28')](function(_0xbb05db){socket[_0x6c32('0xc2')]('openchannelInteractionTags:save',{'id':Number(_0x1b9b1d[_0x6c32('0xb0')]['id']),'tags':_0xbb05db||[]});return{'id':Number(_0x1b9b1d[_0x6c32('0xb0')]['id']),'tags':_0xbb05db||[]};});}})[_0x6c32('0x28')](respondWithResult(_0x52a59c,null))[_0x6c32('0x30')](handleError(_0x52a59c,null));};exports['removeTags']=function(_0x4fecca,_0xdd50bb,_0x6ee1e0){return db[_0x6c32('0xb1')]['find']({'where':{'id':_0x4fecca[_0x6c32('0xb0')]['id']}})['then'](handleEntityNotFound(_0xdd50bb,null))[_0x6c32('0x28')](function(_0x27cfac){if(_0x27cfac){return _0x27cfac['removeTags'](_0x4fecca[_0x6c32('0x39')]['ids']);}})[_0x6c32('0x28')](respondWithStatusCode(_0xdd50bb,null))[_0x6c32('0x30')](handleError(_0xdd50bb,null));};exports[_0x6c32('0xc3')]=function(_0x532b19,_0x21f2ee){var _0x417f8c=moment()[_0x6c32('0xc4')]()[_0x6c32('0x96')]();var _0x28bb76=path[_0x6c32('0xc5')](config[_0x6c32('0xc6')],'server','files',_0x6c32('0xc7'));var _0x15ae82=path['join'](config[_0x6c32('0xc6')],_0x6c32('0xc8'),_0x6c32('0xc9'),_0x6c32('0xca'));var _0x3413ac=path[_0x6c32('0xc5')](_0x28bb76,_0x417f8c);var _0x124742=util['format']('transcript-%d-%s.zip',_0x532b19[_0x6c32('0xb0')]['id'],_0x417f8c);var _0x97cc81=path[_0x6c32('0xc5')](_0x28bb76,_0x124742);var _0x41fe32=[];_0x41fe32['push']({'model':db[_0x6c32('0x6b')],'as':'User','attributes':['id',_0x6c32('0x2c')],'raw':!![]});_0x41fe32['push']({'model':db[_0x6c32('0xcb')],'as':_0x6c32('0x60'),'attributes':['id',_0x6c32('0xcc'),_0x6c32('0xcd')],'raw':!![]});if(_0x532b19['query'][_0x6c32('0xca')]){_0x41fe32[_0x6c32('0xac')]({'model':db[_0x6c32('0xce')],'as':_0x6c32('0xce'),'raw':!![]});}var _0x2b2f2e=[{'model':db[_0x6c32('0xb9')],'as':'Messages','attributes':['id',_0x6c32('0x70'),'createdAt',_0x6c32('0xcf'),_0x6c32('0xd0'),'read'],'include':_0x41fe32}];_0x2b2f2e[_0x6c32('0xac')]({'model':db[_0x6c32('0xd1')],'as':'Account','attributes':['id',_0x6c32('0x35')]});_0x2b2f2e[_0x6c32('0xac')]({'model':db[_0x6c32('0x6b')],'as':'Owner','attributes':['id','fullname']});return db[_0x6c32('0xb1')]['find']({'where':{'id':_0x532b19[_0x6c32('0xb0')]['id']},'include':_0x2b2f2e})['then'](handleEntityNotFound(_0x21f2ee,null))[_0x6c32('0x28')](function(_0x26e0ea){if(_0x26e0ea){var _0x59efec=_0x26e0ea[_0x6c32('0xd2')]({'plain':!![]});fs[_0x6c32('0xd3')](_0x3413ac);var _0x79e9f4={'format':'A4','border':_0x6c32('0xd4'),'header':{'height':_0x6c32('0xd5'),'contents':{'first':_0x6c32('0xd6')}},'footer':{'height':'30px','contents':{'default':util[_0x6c32('0xbc')]('<hr\x20class=\x22separator\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22left\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22center\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>{{page}}/{{pages}}</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22right\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>%s</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>',util['format'](_0x6c32('0xd7'),'Openchannel',_0x59efec['id']),moment()['format'](_0x6c32('0xd8'))[_0x6c32('0x96')]())}}};var _0x9cbb94={'channel':_0x6c32('0xd9'),'account':_0x59efec[_0x6c32('0xda')][_0x6c32('0x35')],'agent':_0x59efec[_0x6c32('0xdb')]?_0x59efec[_0x6c32('0xdb')]['fullname']:'N.A.','createdAt':moment(_0x59efec['createdAt'])[_0x6c32('0xbc')](_0x6c32('0xdc'))[_0x6c32('0x96')](),'closedAt':_0x59efec['closed']?moment(_0x59efec[_0x6c32('0xdd')])[_0x6c32('0xbc')]('YYYY-MM-DD\x20HH:mm:ss')[_0x6c32('0x96')]():'','disposition':_0x59efec['disposition'],'visibility':_0x59efec['threadId']?_0x6c32('0xde'):_0x6c32('0xdf'),'messages':_(_0x59efec[_0x6c32('0xe0')])[_0x6c32('0x80')]({'secret':![]})[_0x6c32('0x2b')](function(_0x3d4150){if(_0x3d4150[_0x6c32('0xce')]){var _0x5d40e7=path['join'](_0x15ae82,_0x3d4150[_0x6c32('0xce')]['basename']);if(fs[_0x6c32('0xe1')](_0x5d40e7)){fs[_0x6c32('0xe2')](_0x5d40e7)[_0x6c32('0xe3')](fs['createWriteStream'](path[_0x6c32('0xc5')](_0x3413ac,_0x3d4150[_0x6c32('0xce')][_0x6c32('0xe4')])));}}return{'date':moment(_0x3d4150['createdAt'])[_0x6c32('0xbc')](_0x6c32('0xdc'))['toString'](),'sender':_0x3d4150['direction']===_0x6c32('0xe5')?_0x3d4150[_0x6c32('0x6b')]?_0x3d4150[_0x6c32('0x6b')][_0x6c32('0x2c')]:_0x6c32('0xe6'):_0x3d4150[_0x6c32('0x60')][_0x6c32('0xcc')]+(_0x3d4150['Contact'][_0x6c32('0xcd')]?'\x20'+_0x3d4150[_0x6c32('0x60')]['lastName']:''),'body':_0x3d4150[_0x6c32('0xce')]?_0x3d4150[_0x6c32('0xce')][_0x6c32('0xe4')]:_0x3d4150['body'],'direction':_0x3d4150['direction']===_0x6c32('0xe5')?'A':'C','secret':_0x3d4150[_0x6c32('0xd0')],'read':_0x3d4150[_0x6c32('0x7c')],'attachment':_0x3d4150[_0x6c32('0xce')]};})[_0x6c32('0x5c')]()};return ejs[_0x6c32('0xe7')](path[_0x6c32('0xc5')](config['root'],_0x6c32('0xc8'),_0x6c32('0xe8'),_0x6c32('0xe9')),{'interaction':_0x9cbb94})[_0x6c32('0x28')](function(_0x2a9551){return new BPromise(function(_0xfa4985,_0x21a172){pdf[_0x6c32('0xea')](_0x2a9551,_0x79e9f4)[_0x6c32('0xeb')](path['join'](_0x3413ac,_0x6c32('0xec')+_0x59efec['id']+'-'+_0x417f8c+_0x6c32('0xed')),function(_0x5bbb47,_0x3b340b){if(_0x5bbb47)return _0x21a172(_0x5bbb47);_0xfa4985(_0x3b340b);});});})[_0x6c32('0x28')](function(){return new BPromise(function(_0x3dec35,_0x56e75e){zipdir(_0x3413ac,{'saveTo':_0x97cc81},function(_0x416d61,_0x14d72a){if(_0x416d61)return _0x56e75e(_0x416d61);return _0x3dec35(_0x14d72a);});})[_0x6c32('0x28')](function(){return new BPromise(function(_0x2a5371,_0x4db81f){rimraf(_0x3413ac,function(_0x5f1b11){if(_0x5f1b11)_0x4db81f(_0x5f1b11);return _0x2a5371();});});})['then'](function(){return _0x21f2ee[_0x6c32('0xc3')](_0x97cc81,_0x124742,function(_0x363c7f){if(_0x363c7f){console['log'](_0x6c32('0xee'),_0x363c7f);}else{fs[_0x6c32('0xef')](_0x97cc81);}});});});}else{return _0x21f2ee[_0x6c32('0x1c')](0xc8);}})[_0x6c32('0x30')](handleError(_0x21f2ee,null));};