ea0ebee807f1ac200399ed375f770435367d59ab
[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 _0x9298=['u.id','u.fullname','user_has_openchannel_interactions','left_join','users','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','it.OpenchannelInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','search','parseSearch','sqlOperator','conditions','length','find','unreadMessages','value','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','split','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','text','start','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','UserId','body','buildExpression','some','compact','OpenchannelAccountId','i.OpenchannelAccountId\x20IN\x20?','concat','$gte','parse','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','filter','replace','isNumeric','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','i.from\x20LIKE\x20?','group','i.id','Sequelize','QueryTypes','SELECT','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','contactName','resolve','i.OpenchannelAccountId\x20IS\x20NOT\x20NULL','user','getOpenchannelAccounts','isEmpty','i.OpenchannelAccountId\x20IS\x20NULL','role','sequelize','toString','keyBy','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','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','Contact.phone','c.mobile','Contact.mobile','o.fullname','Owner.fullname','Owner.internal','ui.OpenchannelInteractionId\x20IN\x20?','groupBy','OpenchannelInteractionId','all','rows','params','rawAttributes','intersection','include','merge','options','create','destroy','describe','addMessage','OpenchannelMessage','ids','format','YYYY-MM-DD\x20HH:mm:ss','includeAll','findAll','addTags','setTags','omit','spread','Tag','emit','openchannelInteractionTags:save','removeTags','download','unix','root','tmp','join','server','files','attachments','transcript-%d-%s.zip','fullname','CmContact','lastName','Attachment','Messages','createdAt','direction','secret','OpenchannelAccount','Account','Owner','get','mkdirSync','Openchannel','N.A.','closed','closedAt','disposition','threadId','Public','Private','basename','existsSync','createReadStream','pipe','out','System','firstName','renderFile','views','downloadInteraction.ejs','.pdf','log','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','fs-extra','squel','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../components/export/pdf','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','reject','save','update','then','end','error','name','send','Users','map','TagIds','Tags','forEach','push','catch','index','OpenchannelInteraction','fieldName','type','keys','query','filters','model','fields','attributes','hasOwnProperty','nolimit','order','sort','where','pick','field','color','from','tools_tags','select'];(function(_0x119d5a,_0x19b457){var _0x15bff4=function(_0x1b7c78){while(--_0x1b7c78){_0x119d5a['push'](_0x119d5a['shift']());}};_0x15bff4(++_0x19b457);}(_0x9298,0x193));var _0x8929=function(_0xcf89af,_0x59ba17){_0xcf89af=_0xcf89af-0x0;var _0x24a9b7=_0x9298[_0xcf89af];return _0x24a9b7;};'use strict';var emlformat=require(_0x8929('0x0'));var rimraf=require(_0x8929('0x1'));var zipdir=require(_0x8929('0x2'));var jsonpatch=require(_0x8929('0x3'));var rp=require(_0x8929('0x4'));var moment=require(_0x8929('0x5'));var BPromise=require(_0x8929('0x6'));var Mustache=require('mustache');var util=require(_0x8929('0x7'));var path=require(_0x8929('0x8'));var sox=require(_0x8929('0x9'));var csv=require(_0x8929('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x8929('0xb'));var _=require('lodash');var squel=require(_0x8929('0xc'));var crypto=require('crypto');var jsforce=require(_0x8929('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x8929('0xa'));var querystring=require(_0x8929('0xe'));var Papa=require(_0x8929('0xf'));var Redis=require(_0x8929('0x10'));var authService=require(_0x8929('0x11'));var qs=require(_0x8929('0x12'));var as=require(_0x8929('0x13'));var pdf=require(_0x8929('0x14'));var hardwareService=require(_0x8929('0x15'));var logger=require(_0x8929('0x16'))(_0x8929('0x17'));var utils=require(_0x8929('0x18'));var config=require(_0x8929('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0x8929('0x1a'))['db'];config[_0x8929('0x1b')]=_[_0x8929('0x1c')](config[_0x8929('0x1b')],{'host':'localhost','port':0x18eb});var socket=require(_0x8929('0x1d'))(new Redis(config['redis']));require('./openchannelInteraction.socket')['register'](socket);function respondWithStatusCode(_0x3226af,_0x28df03){_0x28df03=_0x28df03||0xcc;return function(_0xff634c){if(_0xff634c){return _0x3226af[_0x8929('0x1e')](_0x28df03);}return _0x3226af[_0x8929('0x1f')](_0x28df03)['end']();};}function respondWithResult(_0x1340ae,_0x4c94bc){_0x4c94bc=_0x4c94bc||0xc8;return function(_0x26c874){if(_0x26c874){return _0x1340ae[_0x8929('0x1f')](_0x4c94bc)[_0x8929('0x20')](_0x26c874);}};}function respondWithFilteredResult(_0x12647a,_0x15e4a6){return function(_0x5876f2){if(_0x5876f2){var _0x2bfe1f=typeof _0x15e4a6[_0x8929('0x21')]===_0x8929('0x22')&&typeof _0x15e4a6[_0x8929('0x23')]===_0x8929('0x22');var _0x17edf4=_0x5876f2[_0x8929('0x24')];var _0x2aefd0=_0x2bfe1f?0x0:_0x15e4a6[_0x8929('0x21')];var _0x92c9fe=_0x2bfe1f?_0x5876f2[_0x8929('0x24')]:_0x15e4a6[_0x8929('0x21')]+_0x15e4a6['limit'];var _0x1c0e44;if(_0x92c9fe>=_0x17edf4){_0x92c9fe=_0x17edf4;_0x1c0e44=0xc8;}else{_0x1c0e44=0xce;}_0x12647a['status'](_0x1c0e44);return _0x12647a[_0x8929('0x25')](_0x8929('0x26'),_0x2aefd0+'-'+_0x92c9fe+'/'+_0x17edf4)[_0x8929('0x20')](_0x5876f2);}return null;};}function patchUpdates(_0x1ba372){return function(_0x491ffa){try{jsonpatch['apply'](_0x491ffa,_0x1ba372,!![]);}catch(_0x505b78){return BPromise[_0x8929('0x27')](_0x505b78);}return _0x491ffa[_0x8929('0x28')]();};}function saveUpdates(_0x5038f5,_0x459977){return function(_0x3469e8){if(_0x3469e8){return _0x3469e8[_0x8929('0x29')](_0x5038f5)[_0x8929('0x2a')](function(_0x4bbd1f){return _0x4bbd1f;});}return null;};}function removeEntity(_0x8cb16c,_0x5830f9){return function(_0x456fc5){if(_0x456fc5){return _0x456fc5['destroy']()['then'](function(){_0x8cb16c['status'](0xcc)[_0x8929('0x2b')]();});}};}function handleEntityNotFound(_0xad1e5c,_0x4c5c9b){return function(_0xc0f3de){if(!_0xc0f3de){_0xad1e5c[_0x8929('0x1e')](0x194);}return _0xc0f3de;};}function handleError(_0x583c17,_0x62c560){_0x62c560=_0x62c560||0x1f4;return function(_0x24ba2a){logger[_0x8929('0x2c')](_0x24ba2a['stack']);if(_0x24ba2a[_0x8929('0x2d')]){delete _0x24ba2a[_0x8929('0x2d')];}_0x583c17[_0x8929('0x1f')](_0x62c560)[_0x8929('0x2e')](_0x24ba2a);};}function getInteractionUsers(_0x1aa46f,_0x483988){return new BPromise(function(_0x561399,_0x7057d2){try{if(_0x483988[_0x1aa46f['id']]){_0x1aa46f[_0x8929('0x2f')]=_[_0x8929('0x30')](_0x483988[_0x1aa46f['id']],function(_0x1ee20a){return{'id':_0x1ee20a['id'],'fullname':_0x1ee20a['fullname']};});}}catch(_0x2b0ba8){_0x7057d2(_0x2b0ba8);}_0x561399(_0x1aa46f);});}function getInteractionTags(_0x3cbb19,_0x5d5df8){return new BPromise(function(_0x5c3e46,_0x4ccc44){try{if(_0x3cbb19[_0x8929('0x31')]){_0x3cbb19[_0x8929('0x32')]=[];_0x3cbb19[_0x8929('0x31')]['split'](',')[_0x8929('0x33')](function(_0x16d107){_0x3cbb19[_0x8929('0x32')][_0x8929('0x34')](_0x5d5df8[_0x16d107]);});}delete _0x3cbb19[_0x8929('0x31')];}catch(_0x417f56){_0x4ccc44(_0x417f56);}_0x5c3e46(_0x3cbb19);});}function updateOpenchannelInteraction(_0x63fed1,_0x4411cd,_0x210afc){return new BPromise(function(_0x199a11,_0x393479){return getInteractionUsers(_0x63fed1,_0x210afc)['then'](function(_0x55004f){return getInteractionTags(_0x55004f,_0x4411cd);})[_0x8929('0x2a')](function(_0x4c759a){_0x199a11(_0x4c759a);})[_0x8929('0x35')](function(_0x4ea674){_0x393479(_0x4ea674);});});}exports[_0x8929('0x36')]=function(_0x3bd4d0,_0x1ece80){var _0x47871d={},_0xa0e88e={},_0x1d7d70={'count':0x0,'rows':[]};var _0x2f09a1=_[_0x8929('0x30')](db[_0x8929('0x37')]['rawAttributes'],function(_0x17519c){return{'name':_0x17519c[_0x8929('0x38')],'type':_0x17519c[_0x8929('0x39')]['key']};});_0xa0e88e['model']=_[_0x8929('0x30')](_0x2f09a1,_0x8929('0x2d'));_0xa0e88e['query']=_[_0x8929('0x3a')](_0x3bd4d0[_0x8929('0x3b')]);_0xa0e88e[_0x8929('0x3c')]=_['intersection'](_0xa0e88e[_0x8929('0x3d')],_0xa0e88e[_0x8929('0x3b')]);_0x47871d['attributes']=_['intersection'](_0xa0e88e[_0x8929('0x3d')],qs[_0x8929('0x3e')](_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x3e')]));_0x47871d[_0x8929('0x3f')]=_0x47871d[_0x8929('0x3f')]['length']?_0x47871d[_0x8929('0x3f')]:_0xa0e88e[_0x8929('0x3d')];if(!_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x40')](_0x8929('0x41'))){_0x47871d[_0x8929('0x23')]=qs[_0x8929('0x23')](_0x3bd4d0['query'][_0x8929('0x23')]);_0x47871d[_0x8929('0x21')]=qs[_0x8929('0x21')](_0x3bd4d0['query'][_0x8929('0x21')]);}_0x47871d[_0x8929('0x42')]=qs[_0x8929('0x43')](_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x43')]);_0x47871d[_0x8929('0x44')]=qs[_0x8929('0x3c')](_[_0x8929('0x45')](_0x3bd4d0[_0x8929('0x3b')],_0xa0e88e[_0x8929('0x3c')]),_0x2f09a1);var _0x53ad49=[];var _0x816091=squel['select']()[_0x8929('0x46')]('id')[_0x8929('0x46')](_0x8929('0x2d'))[_0x8929('0x46')](_0x8929('0x47'))[_0x8929('0x48')](_0x8929('0x49'));var _0x39e15c=squel[_0x8929('0x4a')]()['field'](_0x8929('0x4b'))[_0x8929('0x46')](_0x8929('0x4c'))[_0x8929('0x46')]('ui.OpenchannelInteractionId')[_0x8929('0x48')](_0x8929('0x4d'),'ui')[_0x8929('0x4e')](_0x8929('0x4f'),'u','u.id\x20=\x20ui.UserId');var _0x5d9d7c=squel[_0x8929('0x4a')]()[_0x8929('0x48')](_0x8929('0x50'),'i')[_0x8929('0x4e')](_0x8929('0x51'),'c',_0x8929('0x52'))['left_join'](_0x8929('0x4f'),'o','o.id\x20=\x20i.UserId')[_0x8929('0x4e')](_0x8929('0x53'),'a',_0x8929('0x54'))[_0x8929('0x4e')](_0x8929('0x55'),'me',_0x8929('0x56'))[_0x8929('0x4e')](_0x8929('0x57'),'it',_0x8929('0x58'))['left_join'](_0x8929('0x49'),'t',_0x8929('0x59'));var _0x475a84=squel['expr']();var _0x680f95=[];var _0x123941=squel['expr']();var _0x428894;if(_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x5a')]){_0x428894=as[_0x8929('0x5b')](_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x5a')]);var _0x1562f7=_0x428894[_0x8929('0x5c')];for(var _0x478a68=0x0;_0x478a68<_0x428894[_0x8929('0x5d')][_0x8929('0x5e')];_0x478a68++){var _0xcbf5b7=_0x428894['conditions'][_0x478a68];var _0xf9e5f5='i';var _0x4daf25=_[_0x8929('0x5f')](_0x2f09a1,[_0x8929('0x2d'),_0xcbf5b7['field']]);if(!_0x4daf25){switch(_0xcbf5b7['field']){case _0x8929('0x60'):if(_0xcbf5b7[_0x8929('0x61')]==0x1){_0x5d9d7c[_0x8929('0x62')]('`'+_0xcbf5b7[_0x8929('0x46')]+_0x8929('0x63'));}else{_0x5d9d7c['having']('`'+_0xcbf5b7[_0x8929('0x46')]+_0x8929('0x64'));}break;case _0x8929('0x65'):if(_0xcbf5b7[_0x8929('0x66')]===_0x8929('0x67')){if(_0xcbf5b7[_0x8929('0x61')][_0x8929('0x68')]('\x20')[_0x8929('0x5e')]>0x1){_0x475a84[_0x1562f7]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0xcbf5b7[_0x8929('0x61')]),null);}else{var _0x11317d='%'+_0xcbf5b7[_0x8929('0x61')]+'%';_0x475a84[_0x1562f7](_0x8929('0x69'),_0x11317d,_0x11317d,_0x11317d);}}else{_0x4daf25=_[_0x8929('0x5f')](_0x2f09a1,[_0x8929('0x2d'),_0x8929('0x6a')]);_0xcbf5b7[_0x8929('0x46')]=_0x8929('0x6a');_0x52c48f=as['buildExpression'](_0xf9e5f5,_0x4daf25[_0x8929('0x39')],_0xcbf5b7);_0x475a84[_0x1562f7](_0x52c48f[_0x8929('0x6b')],_0x52c48f[_0x8929('0x61')][_0x8929('0x6c')],_0x52c48f['value'][_0x8929('0x2b')]);}break;case'Tag':var _0x1894ea=_0xcbf5b7[_0x8929('0x61')][_0x8929('0x68')](',')['map'](function(_0x2d0e6d){return Number(_0x2d0e6d);});_0x1894ea[_0x8929('0x33')](function(_0xc32a1b){_0x123941['or'](_0x8929('0x6d'),'%,'+_0xc32a1b+',%');});_0x680f95=_[_0x8929('0x6e')](_0x680f95,_0x1894ea);break;case _0x8929('0x6f'):if(_0xcbf5b7[_0x8929('0x66')]===_0x8929('0x67')){_0x475a84[_0x1562f7]('CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','%'+_0xcbf5b7[_0x8929('0x61')]+'%',null);}else{_0x4daf25=_[_0x8929('0x5f')](_0x2f09a1,['name',_0x8929('0x70')]);_0xcbf5b7[_0x8929('0x46')]=_0x8929('0x70');_0x52c48f=as['buildExpression'](_0xf9e5f5,_0x4daf25[_0x8929('0x39')],_0xcbf5b7);_0x475a84[_0x1562f7](_0x52c48f[_0x8929('0x6b')],_0x52c48f[_0x8929('0x61')][_0x8929('0x6c')],_0x52c48f[_0x8929('0x61')][_0x8929('0x2b')]);}break;case _0x8929('0x71'):_0x52c48f=as[_0x8929('0x72')]('me',null,_0xcbf5b7);_0x475a84[_0x1562f7](_0x52c48f[_0x8929('0x6b')],_0x52c48f[_0x8929('0x61')][_0x8929('0x6c')],_0x52c48f[_0x8929('0x61')][_0x8929('0x2b')]);break;}}else{var _0x52c48f=as[_0x8929('0x72')](_0xf9e5f5,_0x4daf25[_0x8929('0x39')],_0xcbf5b7);_0x475a84[_0x1562f7](_0x52c48f[_0x8929('0x6b')],_0x52c48f[_0x8929('0x61')]['start'],_0x52c48f['value']['end']);}}}else{var _0x218302=_(_0x3bd4d0[_0x8929('0x3b')])[_0x8929('0x3a')]()[_0x8929('0x30')](function(_0x6ca829){return _[_0x8929('0x73')](_0x2f09a1,[_0x8929('0x2d'),_0x6ca829])?_0x6ca829:undefined;})[_0x8929('0x74')]()[_0x8929('0x61')]();if(!_['isEmpty'](_0x218302)){_0x218302[_0x8929('0x33')](function(_0x5dbd30){if(_0x5dbd30===_0x8929('0x75')){_0x5d9d7c[_0x8929('0x44')](_0x8929('0x76'),[][_0x8929('0x77')](_0x3bd4d0['query'][_0x5dbd30]));}else if(_0x5dbd30==='createdAt'){var _0x119553=JSON['parse'](_0x3bd4d0[_0x8929('0x3b')][_0x5dbd30])[_0x8929('0x78')];var _0x139b45=JSON[_0x8929('0x79')](_0x3bd4d0[_0x8929('0x3b')][_0x5dbd30])[_0x8929('0x7a')];_0x5d9d7c[_0x8929('0x44')](_0x8929('0x7b'),_0x119553,_0x139b45);}else{if(_0x3bd4d0[_0x8929('0x3b')][_0x5dbd30]===_0x8929('0x7c')){_0x5d9d7c[_0x8929('0x44')]('i.'+_0x5dbd30+'\x20IS\x20NULL');}else{_0x5d9d7c[_0x8929('0x44')]('i.'+_0x5dbd30+'\x20=\x20?',_0x3bd4d0[_0x8929('0x3b')][_0x5dbd30]);}}});}if(_0x3bd4d0['query'][_0x8929('0x7d')]){if(_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x7d')]==0x1){_0x5d9d7c[_0x8929('0x62')](_0x8929('0x7e'));}else{_0x5d9d7c[_0x8929('0x62')](_0x8929('0x7f'));}}if(_0x3bd4d0['query'][_0x8929('0x80')]){_0x680f95=_['isArray'](_0x3bd4d0[_0x8929('0x3b')]['tag'])?_0x3bd4d0['query'][_0x8929('0x80')]:new Array(_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x80')]);_0x680f95['forEach'](function(_0x4495da){_0x123941['or'](_0x8929('0x6d'),'%,'+_0x4495da+',%');});}if(_0x3bd4d0[_0x8929('0x3b')]['filter']){var _0x2b980d=_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x81')][_0x8929('0x82')]('\x5c','\x5c\x5c')[_0x8929('0x82')](/'/g,'\x27\x27');if(qs[_0x8929('0x83')](_0x2b980d)){_0x475a84['or']('i.id\x20LIKE\x20?',_0x2b980d+'%');}else{_0x475a84['or'](_0x8929('0x84'),qs[_0x8929('0x85')](_0x2b980d))['or'](_0x8929('0x86'),_0x2b980d+'%')['or']('CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?',_0x2b980d+'%');}}}_0x5d9d7c[_0x8929('0x44')](_0x475a84);_0x5d9d7c[_0x8929('0x87')](_0x8929('0x88'));var _0x2b0554={'type':db[_0x8929('0x89')][_0x8929('0x8a')][_0x8929('0x8b')],'raw':!![]};var _0x248ca1=_0x5d9d7c['clone']();_0x248ca1[_0x8929('0x46')]('i.id');_0x248ca1['field'](_0x8929('0x8c'),_0x8929('0x60'));if(_0x47871d[_0x8929('0x42')]){_0x47871d[_0x8929('0x42')][_0x8929('0x33')](function(_0x490a0d){var _0x380bbf=_0x490a0d[0x0]===_0x8929('0x8d')?_0x490a0d[0x0]:'i.'+_0x490a0d[0x0];_0x5d9d7c[_0x8929('0x42')](_0x380bbf,_0x490a0d[0x1]==='DESC'?![]:!![]);});}if(!_['isEmpty'](_0x680f95)){_0x5d9d7c[_0x8929('0x62')](_0x123941);_0x248ca1[_0x8929('0x44')]('t.id\x20IN\x20?',_0x680f95);}BPromise[_0x8929('0x8e')]()['then'](function(){if(!_0x428894){if(_0x3bd4d0['query']['OpenchannelAccountId'])return;_0x248ca1[_0x8929('0x44')](_0x8929('0x8f'));_0x5d9d7c[_0x8929('0x44')]('i.OpenchannelAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x3bd4d0[_0x8929('0x90')]['role']!=='agent')return;return _0x3bd4d0['user'][_0x8929('0x91')]({'attributes':['id'],'raw':!![]})['then'](function(_0x160529){if(_[_0x8929('0x92')](_0x160529)){_0x248ca1[_0x8929('0x44')](_0x8929('0x93'));_0x5d9d7c[_0x8929('0x44')](_0x8929('0x93'));}else{_0x248ca1[_0x8929('0x44')]('i.OpenchannelAccountId\x20IN\x20?',_[_0x8929('0x30')](_0x160529,'id'));_0x5d9d7c[_0x8929('0x44')](_0x8929('0x76'),_[_0x8929('0x30')](_0x160529,'id'));}});})['then'](function(){if(_0x3bd4d0[_0x8929('0x90')][_0x8929('0x94')]==='agent'&&!_0x428894&&!_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x75')])return[];return db[_0x8929('0x95')][_0x8929('0x3b')](_0x248ca1[_0x8929('0x96')](),_0x2b0554);})[_0x8929('0x2a')](function(_0x220c9a){_0x1d7d70[_0x8929('0x24')]=_0x220c9a[_0x8929('0x5e')];if(_0x1d7d70[_0x8929('0x24')]===0x0)return[];return db[_0x8929('0x95')]['query'](_0x816091[_0x8929('0x96')](),_0x2b0554)[_0x8929('0x2a')](function(_0x2dd6b7){_0x53ad49=_[_0x8929('0x97')](_0x2dd6b7,'id');_0x2b0554=_['merge'](_0x2b0554,{'model':db[_0x8929('0x37')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3bd4d0[_0x8929('0x3b')][_0x8929('0x3e')]){_0x47871d['attributes']['forEach'](function(_0x568809){_0x5d9d7c[_0x8929('0x46')]('i.'+_0x568809);});}else{_0x5d9d7c[_0x8929('0x46')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x8929('0x60'));_0x5d9d7c['field']('a.key',_0x8929('0x98'));_0x5d9d7c[_0x8929('0x46')](_0x8929('0x99'),_0x8929('0x9a'));_0x5d9d7c[_0x8929('0x46')](_0x8929('0x9b'),_0x8929('0x8d'));_0x5d9d7c[_0x8929('0x46')]('i.*');_0x5d9d7c['field'](_0x8929('0x9c'),_0x8929('0x9d'));_0x5d9d7c[_0x8929('0x46')](_0x8929('0x9e'),_0x8929('0x9f'));_0x5d9d7c[_0x8929('0x46')](_0x8929('0xa0'),_0x8929('0xa1'));_0x5d9d7c[_0x8929('0x46')]('c.phone',_0x8929('0xa2'));_0x5d9d7c[_0x8929('0x46')](_0x8929('0xa3'),_0x8929('0xa4'));_0x5d9d7c[_0x8929('0x46')]('c.fax','Contact.fax');_0x5d9d7c[_0x8929('0x46')](_0x8929('0xa5'),_0x8929('0xa6'));_0x5d9d7c[_0x8929('0x46')]('o.internal',_0x8929('0xa7'));_0x5d9d7c[_0x8929('0x46')]('GROUP_CONCAT(DISTINCT\x20t.id)','TagIds');}if(_0x47871d[_0x8929('0x23')])_0x5d9d7c[_0x8929('0x23')](_0x47871d[_0x8929('0x23')]);if(_0x47871d[_0x8929('0x21')])_0x5d9d7c[_0x8929('0x21')](_0x47871d['offset']);return db[_0x8929('0x95')][_0x8929('0x3b')](_0x5d9d7c[_0x8929('0x96')](),_0x2b0554);})['then'](function(_0x5d5c7d){if(_0x5d5c7d['length']>0x0)_0x39e15c[_0x8929('0x44')](_0x8929('0xa8'),_[_0x8929('0x30')](_0x5d5c7d,'id'));return db['sequelize'][_0x8929('0x3b')](_0x39e15c[_0x8929('0x96')](),_0x2b0554)['then'](function(_0x413821){var _0x3f6c9f=_[_0x8929('0xa9')](_0x413821,_0x8929('0xaa'));var _0x53d120=[];_0x5d5c7d[_0x8929('0x33')](function(_0x4d33ad){_0x53d120[_0x8929('0x34')](updateOpenchannelInteraction(_0x4d33ad,_0x53ad49,_0x3f6c9f));});return BPromise[_0x8929('0xab')](_0x53d120);});});})['then'](function(_0x531341){_0x1d7d70[_0x8929('0xac')]=_0x531341;return _0x1d7d70;})[_0x8929('0x2a')](respondWithFilteredResult(_0x1ece80,_0x47871d))['catch'](handleError(_0x1ece80,null));};exports['show']=function(_0x4c5021,_0x42dd05){var _0x253134={};if(_0x4c5021['query'][_0x8929('0x39')]&&_0x4c5021[_0x8929('0x3b')][_0x8929('0x39')]==='from'){_0x253134[_0x8929('0x48')]=_0x4c5021[_0x8929('0xad')]['id'];}else{_0x253134['id']=_0x4c5021['params']['id'];}var _0x24354b={'raw':![],'where':_0x253134},_0x2eade5={};_0x2eade5['model']=_[_0x8929('0x3a')](db[_0x8929('0x37')][_0x8929('0xae')]);_0x2eade5['query']=_[_0x8929('0x3a')](_0x4c5021['query']);_0x2eade5[_0x8929('0x3c')]=_[_0x8929('0xaf')](_0x2eade5['model'],_0x2eade5[_0x8929('0x3b')]);_0x24354b[_0x8929('0x3f')]=_[_0x8929('0xaf')](_0x2eade5['model'],qs['fields'](_0x4c5021[_0x8929('0x3b')][_0x8929('0x3e')]));_0x24354b['attributes']=_0x24354b[_0x8929('0x3f')][_0x8929('0x5e')]?_0x24354b[_0x8929('0x3f')]:_0x2eade5['model'];if(_0x4c5021[_0x8929('0x3b')]['includeAll']){_0x24354b[_0x8929('0xb0')]=[{'all':!![]}];}_0x24354b=_[_0x8929('0xb1')]({},_0x24354b,_0x4c5021[_0x8929('0xb2')]);return db[_0x8929('0x37')][_0x8929('0x5f')](_0x24354b)[_0x8929('0x2a')](handleEntityNotFound(_0x42dd05,null))[_0x8929('0x2a')](respondWithResult(_0x42dd05,null))[_0x8929('0x35')](handleError(_0x42dd05,null));};exports['create']=function(_0x317148,_0xcab89c){return db['OpenchannelInteraction'][_0x8929('0xb3')](_0x317148[_0x8929('0x71')],{})[_0x8929('0x2a')](respondWithResult(_0xcab89c,0xc9))['catch'](handleError(_0xcab89c,null));};exports[_0x8929('0x29')]=function(_0x284ab1,_0x474cc0){if(_0x284ab1['body']['id']){delete _0x284ab1[_0x8929('0x71')]['id'];}return db[_0x8929('0x37')]['find']({'where':{'id':_0x284ab1[_0x8929('0xad')]['id']}})[_0x8929('0x2a')](handleEntityNotFound(_0x474cc0,null))[_0x8929('0x2a')](saveUpdates(_0x284ab1['body'],null))[_0x8929('0x2a')](respondWithResult(_0x474cc0,null))[_0x8929('0x35')](handleError(_0x474cc0,null));};exports[_0x8929('0xb4')]=function(_0x532820,_0x17f9ed){return db[_0x8929('0x37')][_0x8929('0x5f')]({'where':{'id':_0x532820[_0x8929('0xad')]['id']}})['then'](handleEntityNotFound(_0x17f9ed,null))[_0x8929('0x2a')](removeEntity(_0x17f9ed,null))[_0x8929('0x35')](handleError(_0x17f9ed,null));};exports[_0x8929('0xb5')]=function(_0x950aea,_0x2afc5a){return db[_0x8929('0x37')]['describe']()[_0x8929('0x2a')](respondWithResult(_0x2afc5a,null))['catch'](handleError(_0x2afc5a,null));};exports[_0x8929('0xb6')]=function(_0x5926ab,_0x4cf276,_0x2ce60b){return db[_0x8929('0xb7')][_0x8929('0x5f')]({'where':{'id':_0x5926ab[_0x8929('0xad')]['id']}})['then'](handleEntityNotFound(_0x4cf276,null))[_0x8929('0x2a')](function(_0x21be1e){if(_0x21be1e){return _0x21be1e[_0x8929('0xb6')](_0x5926ab[_0x8929('0x71')]['ids'],_['omit'](_0x5926ab['body'],[_0x8929('0xb8'),'id'])||{});}})[_0x8929('0x2a')](respondWithResult(_0x4cf276,null))['catch'](handleError(_0x4cf276,null));};exports['getMessages']=function(_0x372894,_0x1ec451,_0x23ea59){var _0x2afc75={'raw':![],'where':{}};var _0x434fa3={};var _0x58999b={'count':0x0,'rows':[]};return db[_0x8929('0x37')]['findOne']({'where':{'id':_0x372894['params']['id']}})[_0x8929('0x2a')](handleEntityNotFound(_0x1ec451,null))[_0x8929('0x2a')](function(_0x5116c5){if(_0x5116c5){_0x434fa3[_0x8929('0x3d')]=_[_0x8929('0x3a')](db[_0x8929('0xb7')]['rawAttributes']);_0x434fa3[_0x8929('0x3b')]=_['keys'](_0x372894[_0x8929('0x3b')]);_0x434fa3[_0x8929('0x3c')]=_[_0x8929('0xaf')](_0x434fa3[_0x8929('0x3d')],_0x434fa3[_0x8929('0x3b')]);_0x2afc75['attributes']=_[_0x8929('0xaf')](_0x434fa3[_0x8929('0x3d')],qs[_0x8929('0x3e')](_0x372894[_0x8929('0x3b')][_0x8929('0x3e')]));_0x2afc75['attributes']=_0x2afc75[_0x8929('0x3f')][_0x8929('0x5e')]?_0x2afc75[_0x8929('0x3f')]:_0x434fa3[_0x8929('0x3d')];if(!_0x372894[_0x8929('0x3b')]['hasOwnProperty'](_0x8929('0x41'))){_0x2afc75[_0x8929('0x23')]=qs[_0x8929('0x23')](_0x372894[_0x8929('0x3b')][_0x8929('0x23')]);_0x2afc75[_0x8929('0x21')]=qs[_0x8929('0x21')](_0x372894[_0x8929('0x3b')][_0x8929('0x21')]);}_0x2afc75['order']=qs[_0x8929('0x43')](_0x372894[_0x8929('0x3b')][_0x8929('0x43')]);_0x2afc75[_0x8929('0x44')]=qs['filters'](_[_0x8929('0x45')](_0x372894[_0x8929('0x3b')],_0x434fa3[_0x8929('0x3c')]));_0x2afc75[_0x8929('0x44')][_0x8929('0xaa')]=_0x5116c5['id'];if(_0x372894[_0x8929('0x3b')]['filter']){_0x2afc75[_0x8929('0x44')]=_[_0x8929('0xb1')](_0x2afc75[_0x8929('0x44')],{'$or':_[_0x8929('0x30')](_0x2afc75['attributes'],function(_0x5c3809){var _0x28e090={};_0x28e090[_0x5c3809]={'$like':'%'+_0x372894[_0x8929('0x3b')][_0x8929('0x81')]+'%'};return _0x28e090;})});}if(_0x372894['query'][_0x8929('0x78')]){var _0x28a791=_0x372894[_0x8929('0x3b')][_0x8929('0x78')]['split'](',');var _0xdabee7={};_0xdabee7[_0x28a791[0x0]]={'$gte':moment(_0x28a791[0x1])[_0x8929('0xb9')](_0x8929('0xba'))};_0x2afc75[_0x8929('0x44')]=_[_0x8929('0xb1')](_0x2afc75['where'],_0xdabee7);}_0x2afc75=_[_0x8929('0xb1')]({},_0x2afc75,_0x372894[_0x8929('0xb2')]);return db[_0x8929('0xb7')]['count']({'where':_0x2afc75[_0x8929('0x44')]})[_0x8929('0x2a')](function(_0x55de85){_0x58999b['count']=_0x55de85;if(_0x372894[_0x8929('0x3b')][_0x8929('0xbb')]){_0x2afc75[_0x8929('0xb0')]=[{'all':!![]}];}return db['OpenchannelMessage'][_0x8929('0xbc')](_0x2afc75);})[_0x8929('0x2a')](function(_0x1824bf){_0x58999b['rows']=_0x1824bf;return _0x58999b;});}})[_0x8929('0x2a')](respondWithFilteredResult(_0x1ec451,_0x2afc75))['catch'](handleError(_0x1ec451,null));};exports[_0x8929('0xbd')]=function(_0x2e71c1,_0x5d45ef,_0x391423){return db[_0x8929('0x37')][_0x8929('0x5f')]({'where':{'id':_0x2e71c1[_0x8929('0xad')]['id']}})[_0x8929('0x2a')](handleEntityNotFound(_0x5d45ef,null))[_0x8929('0x2a')](function(_0xf810f1){if(_0xf810f1){return _0xf810f1[_0x8929('0xbe')](_0x2e71c1[_0x8929('0x71')][_0x8929('0xb8')],_[_0x8929('0xbf')](_0x2e71c1[_0x8929('0x71')],[_0x8929('0xb8'),'id'])||{})[_0x8929('0xc0')](function(){return db[_0x8929('0xc1')][_0x8929('0xbc')]({'attributes':['id',_0x8929('0x2d'),'color'],'where':{'id':_0x2e71c1[_0x8929('0x71')][_0x8929('0xb8')]}});})[_0x8929('0x2a')](function(_0x42fd3d){socket[_0x8929('0xc2')](_0x8929('0xc3'),{'id':Number(_0x2e71c1[_0x8929('0xad')]['id']),'tags':_0x42fd3d||[]});return{'id':Number(_0x2e71c1[_0x8929('0xad')]['id']),'tags':_0x42fd3d||[]};});}})[_0x8929('0x2a')](respondWithResult(_0x5d45ef,null))[_0x8929('0x35')](handleError(_0x5d45ef,null));};exports[_0x8929('0xc4')]=function(_0x4ef614,_0x38a76c,_0x510ece){return db[_0x8929('0x37')]['find']({'where':{'id':_0x4ef614[_0x8929('0xad')]['id']}})[_0x8929('0x2a')](handleEntityNotFound(_0x38a76c,null))[_0x8929('0x2a')](function(_0x1ab84f){if(_0x1ab84f){return _0x1ab84f[_0x8929('0xc4')](_0x4ef614[_0x8929('0x3b')][_0x8929('0xb8')]);}})[_0x8929('0x2a')](respondWithStatusCode(_0x38a76c,null))['catch'](handleError(_0x38a76c,null));};exports[_0x8929('0xc5')]=function(_0x4429c8,_0x45d509){var _0x5e02c5=moment()[_0x8929('0xc6')]()[_0x8929('0x96')]();var _0x562871=path['join'](config[_0x8929('0xc7')],'server','files',_0x8929('0xc8'));var _0x3cd1c7=path[_0x8929('0xc9')](config[_0x8929('0xc7')],_0x8929('0xca'),_0x8929('0xcb'),_0x8929('0xcc'));var _0x5e0c6e=path[_0x8929('0xc9')](_0x562871,_0x5e02c5);var _0x54413a=util[_0x8929('0xb9')](_0x8929('0xcd'),_0x4429c8[_0x8929('0xad')]['id'],_0x5e02c5);var _0x5870d2=path[_0x8929('0xc9')](_0x562871,_0x54413a);var _0x3fd475=[];_0x3fd475[_0x8929('0x34')]({'model':db[_0x8929('0x6f')],'as':_0x8929('0x6f'),'attributes':['id',_0x8929('0xce')],'raw':!![]});_0x3fd475[_0x8929('0x34')]({'model':db[_0x8929('0xcf')],'as':_0x8929('0x65'),'attributes':['id','firstName',_0x8929('0xd0')],'raw':!![]});if(_0x4429c8[_0x8929('0x3b')][_0x8929('0xcc')]){_0x3fd475[_0x8929('0x34')]({'model':db[_0x8929('0xd1')],'as':'Attachment','raw':!![]});}var _0x4bbb01=[{'model':db['OpenchannelMessage'],'as':_0x8929('0xd2'),'attributes':['id','body',_0x8929('0xd3'),_0x8929('0xd4'),_0x8929('0xd5'),_0x8929('0x7d')],'include':_0x3fd475}];_0x4bbb01[_0x8929('0x34')]({'model':db[_0x8929('0xd6')],'as':_0x8929('0xd7'),'attributes':['id','name']});_0x4bbb01[_0x8929('0x34')]({'model':db[_0x8929('0x6f')],'as':_0x8929('0xd8'),'attributes':['id',_0x8929('0xce')]});return db[_0x8929('0x37')][_0x8929('0x5f')]({'where':{'id':_0x4429c8[_0x8929('0xad')]['id']},'include':_0x4bbb01})[_0x8929('0x2a')](handleEntityNotFound(_0x45d509,null))['then'](function(_0xf15b0b){if(_0xf15b0b){var _0x3a104f=_0xf15b0b[_0x8929('0xd9')]({'plain':!![]});fs[_0x8929('0xda')](_0x5e0c6e);var _0x4ba465={'channel':_0x8929('0xdb'),'account':_0x3a104f[_0x8929('0xd7')][_0x8929('0x2d')],'agent':_0x3a104f[_0x8929('0xd8')]?_0x3a104f[_0x8929('0xd8')][_0x8929('0xce')]:_0x8929('0xdc'),'createdAt':moment(_0x3a104f[_0x8929('0xd3')])['format'](_0x8929('0xba'))[_0x8929('0x96')](),'closedAt':_0x3a104f[_0x8929('0xdd')]?moment(_0x3a104f[_0x8929('0xde')])[_0x8929('0xb9')](_0x8929('0xba'))[_0x8929('0x96')]():'','disposition':_0x3a104f[_0x8929('0xdf')],'visibility':_0x3a104f[_0x8929('0xe0')]?_0x8929('0xe1'):_0x8929('0xe2'),'messages':_(_0x3a104f[_0x8929('0xd2')])[_0x8929('0x81')]({'secret':![]})['map'](function(_0x1dcbd6){if(_0x1dcbd6[_0x8929('0xd1')]){var _0x11b88f=path[_0x8929('0xc9')](_0x3cd1c7,_0x1dcbd6[_0x8929('0xd1')][_0x8929('0xe3')]);if(fs[_0x8929('0xe4')](_0x11b88f)){fs[_0x8929('0xe5')](_0x11b88f)[_0x8929('0xe6')](fs['createWriteStream'](path['join'](_0x5e0c6e,_0x1dcbd6['Attachment'][_0x8929('0xe3')])));}}return{'date':moment(_0x1dcbd6[_0x8929('0xd3')])[_0x8929('0xb9')](_0x8929('0xba'))[_0x8929('0x96')](),'sender':_0x1dcbd6[_0x8929('0xd4')]===_0x8929('0xe7')?_0x1dcbd6[_0x8929('0x6f')]?_0x1dcbd6[_0x8929('0x6f')][_0x8929('0xce')]:_0x8929('0xe8'):_0x1dcbd6[_0x8929('0x65')][_0x8929('0xe9')]+(_0x1dcbd6[_0x8929('0x65')][_0x8929('0xd0')]?'\x20'+_0x1dcbd6[_0x8929('0x65')]['lastName']:''),'body':_0x1dcbd6[_0x8929('0xd1')]?_0x1dcbd6[_0x8929('0xd1')][_0x8929('0xe3')]:_0x1dcbd6[_0x8929('0x71')],'direction':_0x1dcbd6[_0x8929('0xd4')]===_0x8929('0xe7')?'A':'C','secret':_0x1dcbd6[_0x8929('0xd5')],'read':_0x1dcbd6[_0x8929('0x7d')],'attachment':_0x1dcbd6[_0x8929('0xd1')]};})[_0x8929('0x61')]()};return ejs[_0x8929('0xea')](path[_0x8929('0xc9')](config[_0x8929('0xc7')],_0x8929('0xca'),_0x8929('0xeb'),_0x8929('0xec')),{'interaction':_0x4ba465})[_0x8929('0x2a')](function(_0x124a9c){var _0x2f4615=path[_0x8929('0xc9')](_0x5e0c6e,'transcript-'+_0x3a104f['id']+'-'+_0x5e02c5+_0x8929('0xed'));var _0x543238={'path':_0x2f4615,'channel':_0x8929('0xdb'),'interactionId':_0x3a104f['id']};return pdf['createPdfFromHTML'](_0x124a9c,_0x543238);})[_0x8929('0x2a')](function(){return new BPromise(function(_0x2bd482,_0x20a493){zipdir(_0x5e0c6e,{'saveTo':_0x5870d2},function(_0x13495b,_0x23654f){if(_0x13495b)return _0x20a493(_0x13495b);return _0x2bd482(_0x23654f);});})[_0x8929('0x2a')](function(){return new BPromise(function(_0x472298,_0x38f5b0){rimraf(_0x5e0c6e,function(_0x46b24e){if(_0x46b24e)_0x38f5b0(_0x46b24e);return _0x472298();});});})['then'](function(){return _0x45d509[_0x8929('0xc5')](_0x5870d2,_0x54413a,function(_0x14a749){if(_0x14a749){console[_0x8929('0xee')]('err',_0x14a749);}else{fs['unlinkSync'](_0x5870d2);}});});});}else{return _0x45d509['sendStatus'](0xc8);}})[_0x8929('0x35')](handleError(_0x45d509,null));};