Built motion from commit f7863d46.|2.5.41
[motion2.git] / server / api / faxInteraction / faxInteraction.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 _0x94d1=['Tags','split','forEach','catch','waiting','talking','answered','unmanaged','total','UserId','closed','index','FaxInteraction','rawAttributes','fieldName','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filters','select','field','color','tools_tags','u.id','ui.FaxInteractionId','from','user_has_fax_interactions','left_join','fax_interactions','cm_contacts','users','o.id\x20=\x20i.UserId','fax_accounts','a.id\x20=\x20i.FaxAccountId','fax_messages','fax_interaction_has_tags','it.FaxInteractionId\x20=\x20i.id','expr','search','parseSearch','sqlOperator','conditions','find','value','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','ContactId','text','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','buildExpression','keys','some','isEmpty','FaxAccountId','where','i.FaxAccountId\x20IN\x20?','concat','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isNumeric','i.id\x20LIKE\x20?','i.fax\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)','unreadMessages','contactName','DESC','resolve','i.FaxAccountId\x20IS\x20NOT\x20NULL','user','role','agent','i.FaxAccountId\x20IS\x20NULL','sequelize','toString','merge','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','Contact.phone','Contact.mobile','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.FaxInteractionId\x20IN\x20?','groupBy','push','rows','show','params','includeAll','include','create','update','body','destroy','describe','addMessage','FaxMessage','ids','getMessages','FaxInteractionId','format','YYYY-MM-DD\x20HH:mm:ss','options','addTags','setTags','omit','spread','emit','faxInteractionTags:save','download','unix','join','server','files','tmp','root','Attachment','Messages','get','mkdirSync','basename','existsSync','createReadStream','pipe','createWriteStream','log','err','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../mysqldb','redis','defaults','socket.io-emitter','./faxInteraction.socket','register','sendStatus','status','end','json','undefined','limit','count','offset','reject','save','then','error','stack','name','send','Users','map','fullname','TagIds'];(function(_0x16238c,_0x1dd846){var _0x1879c9=function(_0x577d36){while(--_0x577d36){_0x16238c['push'](_0x16238c['shift']());}};_0x1879c9(++_0x1dd846);}(_0x94d1,0xb0));var _0x194d=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x94d1[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x194d('0x0'));var rimraf=require(_0x194d('0x1'));var zipdir=require(_0x194d('0x2'));var jsonpatch=require(_0x194d('0x3'));var rp=require(_0x194d('0x4'));var moment=require(_0x194d('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x194d('0x6'));var util=require(_0x194d('0x7'));var path=require(_0x194d('0x8'));var sox=require(_0x194d('0x9'));var csv=require(_0x194d('0xa'));var ejs=require(_0x194d('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x194d('0xc'));var squel=require(_0x194d('0xd'));var crypto=require(_0x194d('0xe'));var jsforce=require(_0x194d('0xf'));var deskjs=require(_0x194d('0x10'));var toCsv=require(_0x194d('0xa'));var querystring=require(_0x194d('0x11'));var Papa=require(_0x194d('0x12'));var Redis=require(_0x194d('0x13'));var authService=require('../../components/auth/service');var qs=require(_0x194d('0x14'));var as=require(_0x194d('0x15'));var hardwareService=require(_0x194d('0x16'));var logger=require(_0x194d('0x17'))(_0x194d('0x18'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x194d('0x19'))['db'];config[_0x194d('0x1a')]=_[_0x194d('0x1b')](config[_0x194d('0x1a')],{'host':'localhost','port':0x18eb});var socket=require(_0x194d('0x1c'))(new Redis(config['redis']));require(_0x194d('0x1d'))[_0x194d('0x1e')](socket);function respondWithStatusCode(_0x389fe4,_0x27fa04){_0x27fa04=_0x27fa04||0xcc;return function(_0x4c4e6a){if(_0x4c4e6a){return _0x389fe4[_0x194d('0x1f')](_0x27fa04);}return _0x389fe4[_0x194d('0x20')](_0x27fa04)[_0x194d('0x21')]();};}function respondWithResult(_0x573c38,_0x30becd){_0x30becd=_0x30becd||0xc8;return function(_0x400f2e){if(_0x400f2e){return _0x573c38[_0x194d('0x20')](_0x30becd)[_0x194d('0x22')](_0x400f2e);}};}function respondWithFilteredResult(_0x13c4fc,_0x31d39b){return function(_0x27ff69){if(_0x27ff69){var _0x71cddc=typeof _0x31d39b['offset']===_0x194d('0x23')&&typeof _0x31d39b[_0x194d('0x24')]===_0x194d('0x23');var _0x7f7f6b=_0x27ff69[_0x194d('0x25')];var _0x292927=_0x71cddc?0x0:_0x31d39b[_0x194d('0x26')];var _0x4c1b0=_0x71cddc?_0x27ff69[_0x194d('0x25')]:_0x31d39b['offset']+_0x31d39b[_0x194d('0x24')];var _0x433800;if(_0x4c1b0>=_0x7f7f6b){_0x4c1b0=_0x7f7f6b;_0x433800=0xc8;}else{_0x433800=0xce;}_0x13c4fc[_0x194d('0x20')](_0x433800);return _0x13c4fc['set']('Content-Range',_0x292927+'-'+_0x4c1b0+'/'+_0x7f7f6b)[_0x194d('0x22')](_0x27ff69);}return null;};}function patchUpdates(_0x416a57){return function(_0x1ac5bc){try{jsonpatch['apply'](_0x1ac5bc,_0x416a57,!![]);}catch(_0x4353e2){return BPromise[_0x194d('0x27')](_0x4353e2);}return _0x1ac5bc[_0x194d('0x28')]();};}function saveUpdates(_0x4364ae,_0x399f36){return function(_0x12d87d){if(_0x12d87d){return _0x12d87d['update'](_0x4364ae)['then'](function(_0x819c8f){return _0x819c8f;});}return null;};}function removeEntity(_0x228e51,_0x19fd93){return function(_0x1c31d6){if(_0x1c31d6){return _0x1c31d6['destroy']()[_0x194d('0x29')](function(){_0x228e51[_0x194d('0x20')](0xcc)[_0x194d('0x21')]();});}};}function handleEntityNotFound(_0x47ae28,_0x4a2c0d){return function(_0x4fda94){if(!_0x4fda94){_0x47ae28[_0x194d('0x1f')](0x194);}return _0x4fda94;};}function handleError(_0x78f6b,_0x12f8ce){_0x12f8ce=_0x12f8ce||0x1f4;return function(_0x2d16c1){logger[_0x194d('0x2a')](_0x2d16c1[_0x194d('0x2b')]);if(_0x2d16c1[_0x194d('0x2c')]){delete _0x2d16c1[_0x194d('0x2c')];}_0x78f6b['status'](_0x12f8ce)[_0x194d('0x2d')](_0x2d16c1);};}function getInteractionUsers(_0x4ea4c4,_0x3ed476){return new BPromise(function(_0x2d52e7,_0x3d90ed){try{if(_0x3ed476[_0x4ea4c4['id']]){_0x4ea4c4[_0x194d('0x2e')]=_[_0x194d('0x2f')](_0x3ed476[_0x4ea4c4['id']],function(_0x4db109){return{'id':_0x4db109['id'],'fullname':_0x4db109[_0x194d('0x30')]};});}}catch(_0x437ba1){_0x3d90ed(_0x437ba1);}_0x2d52e7(_0x4ea4c4);});}function getInteractionTags(_0x288653,_0x1c9b88){return new BPromise(function(_0x231ef1,_0x38883f){try{if(_0x288653[_0x194d('0x31')]){_0x288653[_0x194d('0x32')]=[];_0x288653[_0x194d('0x31')][_0x194d('0x33')](',')[_0x194d('0x34')](function(_0x316b40){_0x288653[_0x194d('0x32')]['push'](_0x1c9b88[_0x316b40]);});}delete _0x288653['TagIds'];}catch(_0x564900){_0x38883f(_0x564900);}_0x231ef1(_0x288653);});}function updateFaxInteraction(_0x383d45,_0x8d8550,_0x549bbd){return new BPromise(function(_0x585eca,_0x30d3d2){return getInteractionUsers(_0x383d45,_0x549bbd)[_0x194d('0x29')](function(_0x9e82a3){return getInteractionTags(_0x9e82a3,_0x8d8550);})[_0x194d('0x29')](function(_0x3f0e46){return getStateInteraction(_0x3f0e46);})[_0x194d('0x29')](function(_0x41b3ec){_0x585eca(_0x41b3ec);})[_0x194d('0x35')](function(_0x261029){_0x30d3d2(_0x261029);});});}function getStateInteraction(_0x1429a0){return new BPromise(function(_0x3331c0){_0x1429a0[_0x194d('0x36')]=0x0;_0x1429a0[_0x194d('0x37')]=0x0;_0x1429a0[_0x194d('0x38')]=0x0;_0x1429a0[_0x194d('0x39')]=0x0;_0x1429a0[_0x194d('0x3a')]=0x0;if(!_0x1429a0['closed']&&!_0x1429a0[_0x194d('0x3b')]){_0x1429a0[_0x194d('0x36')]+=0x1;}if(!_0x1429a0[_0x194d('0x3c')]&&_0x1429a0[_0x194d('0x3b')]){_0x1429a0[_0x194d('0x37')]+=0x1;if(_0x1429a0[_0x194d('0x36')]){_0x1429a0[_0x194d('0x36')]-=0x1;}}if(_0x1429a0[_0x194d('0x3c')]&&_0x1429a0['UserId']){_0x1429a0['answered']+=0x1;if(_0x1429a0[_0x194d('0x37')]){_0x1429a0[_0x194d('0x37')]-=0x1;}}if(_0x1429a0['closed']&&!_0x1429a0[_0x194d('0x3b')]){_0x1429a0['unmanaged']+=0x1;if(_0x1429a0[_0x194d('0x36')]){_0x1429a0[_0x194d('0x36')]-=0x1;}}_0x1429a0[_0x194d('0x3a')]+=0x1;_0x3331c0(_0x1429a0);});}exports[_0x194d('0x3d')]=function(_0x3730cc,_0x1a4f92){var _0x438eed={},_0x2691fe={},_0x7823d0={'count':0x0,'rows':[]};var _0x8152e6=_[_0x194d('0x2f')](db[_0x194d('0x3e')][_0x194d('0x3f')],function(_0x349813){return{'name':_0x349813[_0x194d('0x40')],'type':_0x349813[_0x194d('0x41')][_0x194d('0x42')]};});_0x2691fe[_0x194d('0x43')]=_[_0x194d('0x2f')](_0x8152e6,'name');_0x2691fe[_0x194d('0x44')]=_['keys'](_0x3730cc[_0x194d('0x44')]);_0x2691fe['filters']=_[_0x194d('0x45')](_0x2691fe[_0x194d('0x43')],_0x2691fe[_0x194d('0x44')]);_0x438eed[_0x194d('0x46')]=_[_0x194d('0x45')](_0x2691fe['model'],qs[_0x194d('0x47')](_0x3730cc[_0x194d('0x44')][_0x194d('0x47')]));_0x438eed['attributes']=_0x438eed['attributes'][_0x194d('0x48')]?_0x438eed[_0x194d('0x46')]:_0x2691fe[_0x194d('0x43')];if(!_0x3730cc[_0x194d('0x44')][_0x194d('0x49')](_0x194d('0x4a'))){_0x438eed['limit']=qs[_0x194d('0x24')](_0x3730cc['query'][_0x194d('0x24')]);_0x438eed['offset']=qs['offset'](_0x3730cc[_0x194d('0x44')][_0x194d('0x26')]);}_0x438eed[_0x194d('0x4b')]=qs[_0x194d('0x4c')](_0x3730cc['query']['sort']);_0x438eed['where']=qs['filters'](_[_0x194d('0x4d')](_0x3730cc[_0x194d('0x44')],_0x2691fe[_0x194d('0x4e')]),_0x8152e6);var _0x1fee2d=[];var _0x4c4bb1=squel[_0x194d('0x4f')]()['field']('id')['field']('name')[_0x194d('0x50')](_0x194d('0x51'))['from'](_0x194d('0x52'));var _0x1eccbb=squel['select']()[_0x194d('0x50')](_0x194d('0x53'))[_0x194d('0x50')]('u.fullname')['field'](_0x194d('0x54'))[_0x194d('0x55')](_0x194d('0x56'),'ui')[_0x194d('0x57')]('users','u','u.id\x20=\x20ui.UserId');var _0x51aee2=squel[_0x194d('0x4f')]()[_0x194d('0x55')](_0x194d('0x58'),'i')[_0x194d('0x57')](_0x194d('0x59'),'c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')[_0x194d('0x57')](_0x194d('0x5a'),'o',_0x194d('0x5b'))[_0x194d('0x57')](_0x194d('0x5c'),'a',_0x194d('0x5d'))['left_join'](_0x194d('0x5e'),'me','me.FaxInteractionId\x20=\x20i.id')[_0x194d('0x57')](_0x194d('0x5f'),'it',_0x194d('0x60'))[_0x194d('0x57')]('tools_tags','t','t.id\x20=\x20it.TagId');var _0x3825df=squel[_0x194d('0x61')]();var _0x543677=[];var _0x170cfc=squel[_0x194d('0x61')]();var _0x4fa421;if(_0x3730cc[_0x194d('0x44')][_0x194d('0x62')]){_0x4fa421=as[_0x194d('0x63')](_0x3730cc[_0x194d('0x44')]['search']);var _0x44ff68=_0x4fa421[_0x194d('0x64')];for(var _0x1f5582=0x0;_0x1f5582<_0x4fa421[_0x194d('0x65')][_0x194d('0x48')];_0x1f5582++){var _0x215b2f=_0x4fa421[_0x194d('0x65')][_0x1f5582];var _0x3de681='i';var _0x2d7df6=_[_0x194d('0x66')](_0x8152e6,[_0x194d('0x2c'),_0x215b2f[_0x194d('0x50')]]);if(!_0x2d7df6){switch(_0x215b2f[_0x194d('0x50')]){case'unreadMessages':if(_0x215b2f[_0x194d('0x67')]==0x1){_0x51aee2[_0x194d('0x68')]('`'+_0x215b2f[_0x194d('0x50')]+_0x194d('0x69'));}else{_0x51aee2[_0x194d('0x68')]('`'+_0x215b2f['field']+_0x194d('0x6a'));}break;case _0x194d('0x6b'):if(_0x215b2f[_0x194d('0x6c')]===_0x194d('0x6d')){if(_0x215b2f['value']['split']('\x20')[_0x194d('0x48')]>0x1){_0x3825df[_0x44ff68](_0x194d('0x6e'),qs[_0x194d('0x6f')](_0x215b2f[_0x194d('0x67')]),null);}else{var _0xafde81='%'+_0x215b2f[_0x194d('0x67')]+'%';_0x3825df[_0x44ff68]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0xafde81,_0xafde81,_0xafde81);}}else{_0x2d7df6=_[_0x194d('0x66')](_0x8152e6,[_0x194d('0x2c'),_0x194d('0x70')]);_0x215b2f[_0x194d('0x50')]=_0x194d('0x70');_0x47d302=as['buildExpression'](_0x3de681,_0x2d7df6[_0x194d('0x41')],_0x215b2f);_0x3825df[_0x44ff68](_0x47d302[_0x194d('0x71')],_0x47d302[_0x194d('0x67')][_0x194d('0x72')],_0x47d302[_0x194d('0x67')][_0x194d('0x21')]);}break;case _0x194d('0x73'):var _0x55bf2f=_0x215b2f['value'][_0x194d('0x33')](',')['map'](function(_0x5d66ab){return Number(_0x5d66ab);});_0x55bf2f[_0x194d('0x34')](function(_0x988019){_0x170cfc['or'](_0x194d('0x74'),'%,'+_0x988019+',%');});_0x543677=_[_0x194d('0x75')](_0x543677,_0x55bf2f);break;case _0x194d('0x76'):if(_0x215b2f[_0x194d('0x6c')]===_0x194d('0x6d')){_0x3825df[_0x44ff68](_0x194d('0x77'),'%'+_0x215b2f[_0x194d('0x67')]+'%',null);}else{_0x2d7df6=_[_0x194d('0x66')](_0x8152e6,[_0x194d('0x2c'),'UserId']);_0x215b2f[_0x194d('0x50')]=_0x194d('0x3b');_0x47d302=as[_0x194d('0x78')](_0x3de681,_0x2d7df6[_0x194d('0x41')],_0x215b2f);_0x3825df[_0x44ff68](_0x47d302[_0x194d('0x71')],_0x47d302[_0x194d('0x67')]['start'],_0x47d302[_0x194d('0x67')][_0x194d('0x21')]);}break;case'body':_0x47d302=as[_0x194d('0x78')]('me',null,_0x215b2f);_0x3825df[_0x44ff68](_0x47d302[_0x194d('0x71')],_0x47d302[_0x194d('0x67')][_0x194d('0x72')],_0x47d302[_0x194d('0x67')][_0x194d('0x21')]);break;}}else{var _0x47d302=as[_0x194d('0x78')](_0x3de681,_0x2d7df6['type'],_0x215b2f);_0x3825df[_0x44ff68](_0x47d302['text'],_0x47d302['value'][_0x194d('0x72')],_0x47d302[_0x194d('0x67')][_0x194d('0x21')]);}}}else{var _0x1404ff=_(_0x3730cc[_0x194d('0x44')])[_0x194d('0x79')]()['map'](function(_0x29e63b){return _[_0x194d('0x7a')](_0x8152e6,[_0x194d('0x2c'),_0x29e63b])?_0x29e63b:undefined;})['compact']()[_0x194d('0x67')]();if(!_[_0x194d('0x7b')](_0x1404ff)){_0x1404ff[_0x194d('0x34')](function(_0x46c141){if(_0x46c141===_0x194d('0x7c')){_0x51aee2[_0x194d('0x7d')](_0x194d('0x7e'),[][_0x194d('0x7f')](_0x3730cc['query'][_0x46c141]));}else if(_0x46c141===_0x194d('0x80')){var _0x77145c=JSON[_0x194d('0x81')](_0x3730cc[_0x194d('0x44')][_0x46c141])[_0x194d('0x82')];var _0x23feca=JSON[_0x194d('0x81')](_0x3730cc['query'][_0x46c141])[_0x194d('0x83')];_0x51aee2['where'](_0x194d('0x84'),_0x77145c,_0x23feca);}else{if(_0x3730cc['query'][_0x46c141]===_0x194d('0x85')){_0x51aee2[_0x194d('0x7d')]('i.'+_0x46c141+_0x194d('0x86'));}else{_0x51aee2['where']('i.'+_0x46c141+_0x194d('0x87'),_0x3730cc['query'][_0x46c141]);}}});}if(_0x3730cc[_0x194d('0x44')][_0x194d('0x88')]){if(_0x3730cc['query'][_0x194d('0x88')]==0x1){_0x51aee2['having'](_0x194d('0x89'));}else{_0x51aee2[_0x194d('0x68')](_0x194d('0x8a'));}}if(_0x3730cc[_0x194d('0x44')][_0x194d('0x8b')]){_0x543677=_['isArray'](_0x3730cc['query']['tag'])?_0x3730cc[_0x194d('0x44')][_0x194d('0x8b')]:new Array(_0x3730cc['query'][_0x194d('0x8b')]);_0x543677['forEach'](function(_0x3efaec){_0x170cfc['or'](_0x194d('0x74'),'%,'+_0x3efaec+',%');});}if(_0x3730cc[_0x194d('0x44')]['filter']){var _0x6f998b=_0x3730cc[_0x194d('0x44')]['filter']['replace']('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0x194d('0x8c')](_0x6f998b)){_0x3825df['or'](_0x194d('0x8d'),_0x6f998b+'%')['or'](_0x194d('0x8e'),_0x6f998b+'%');}_0x3825df['or'](_0x194d('0x8f'),_0x6f998b+'%');}}_0x51aee2['where'](_0x3825df);_0x51aee2[_0x194d('0x90')](_0x194d('0x91'));var _0x32d30e={'type':db['Sequelize'][_0x194d('0x92')][_0x194d('0x93')],'raw':!![]};var _0x14bbb7=_0x51aee2[_0x194d('0x94')]();_0x14bbb7[_0x194d('0x50')](_0x194d('0x91'));_0x14bbb7[_0x194d('0x50')](_0x194d('0x95'),_0x194d('0x96'));if(_0x438eed['order']){_0x438eed[_0x194d('0x4b')][_0x194d('0x34')](function(_0x22ea29){var _0x3f1bd5=_0x22ea29[0x0]===_0x194d('0x97')?_0x22ea29[0x0]:'i.'+_0x22ea29[0x0];_0x51aee2[_0x194d('0x4b')](_0x3f1bd5,_0x22ea29[0x1]===_0x194d('0x98')?![]:!![]);});}if(!_[_0x194d('0x7b')](_0x543677)){_0x51aee2[_0x194d('0x68')](_0x170cfc);_0x14bbb7[_0x194d('0x7d')]('t.id\x20IN\x20?',_0x543677);}BPromise[_0x194d('0x99')]()[_0x194d('0x29')](function(){if(!_0x4fa421){if(_0x3730cc[_0x194d('0x44')][_0x194d('0x7c')])return;_0x14bbb7[_0x194d('0x7d')](_0x194d('0x9a'));_0x51aee2['where'](_0x194d('0x9a'));return;}if(_0x3730cc[_0x194d('0x9b')][_0x194d('0x9c')]!==_0x194d('0x9d'))return;return _0x3730cc[_0x194d('0x9b')]['getFaxAccounts']({'attributes':['id'],'raw':!![]})[_0x194d('0x29')](function(_0x30c7a4){if(_['isEmpty'](_0x30c7a4)){_0x14bbb7['where'](_0x194d('0x9e'));_0x51aee2[_0x194d('0x7d')](_0x194d('0x9e'));}else{_0x14bbb7[_0x194d('0x7d')](_0x194d('0x7e'),_['map'](_0x30c7a4,'id'));_0x51aee2['where'](_0x194d('0x7e'),_['map'](_0x30c7a4,'id'));}});})[_0x194d('0x29')](function(){if(_0x3730cc['user'][_0x194d('0x9c')]==='agent'&&!_0x4fa421&&!_0x3730cc[_0x194d('0x44')][_0x194d('0x7c')])return[];return db[_0x194d('0x9f')][_0x194d('0x44')](_0x14bbb7[_0x194d('0xa0')](),_0x32d30e);})[_0x194d('0x29')](function(_0x130429){_0x7823d0['count']=_0x130429[_0x194d('0x48')];if(_0x7823d0[_0x194d('0x25')]===0x0)return[];return db[_0x194d('0x9f')][_0x194d('0x44')](_0x4c4bb1[_0x194d('0xa0')](),_0x32d30e)['then'](function(_0x4d4368){_0x1fee2d=_['keyBy'](_0x4d4368,'id');_0x32d30e=_[_0x194d('0xa1')](_0x32d30e,{'model':db['FaxInteraction'],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x3730cc['query']['fields']){_0x438eed[_0x194d('0x46')][_0x194d('0x34')](function(_0x54d894){_0x51aee2[_0x194d('0x50')]('i.'+_0x54d894);});}else{_0x51aee2[_0x194d('0x50')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x194d('0x96'));_0x51aee2[_0x194d('0x50')]('a.key',_0x194d('0xa2'));_0x51aee2[_0x194d('0x50')](_0x194d('0xa3'),_0x194d('0xa4'));_0x51aee2['field'](_0x194d('0xa5'),'contactName');_0x51aee2[_0x194d('0x50')]('i.*');_0x51aee2['field'](_0x194d('0xa6'),_0x194d('0xa7'));_0x51aee2[_0x194d('0x50')](_0x194d('0xa8'),_0x194d('0xa9'));_0x51aee2[_0x194d('0x50')](_0x194d('0xaa'),_0x194d('0xab'));_0x51aee2[_0x194d('0x50')]('c.phone',_0x194d('0xac'));_0x51aee2['field']('c.mobile',_0x194d('0xad'));_0x51aee2[_0x194d('0x50')]('c.fax',_0x194d('0xae'));_0x51aee2[_0x194d('0x50')](_0x194d('0xaf'),_0x194d('0xb0'));_0x51aee2[_0x194d('0x50')](_0x194d('0xb1'),_0x194d('0xb2'));_0x51aee2['field'](_0x194d('0xb3'),'TagIds');}if(_0x438eed['limit'])_0x51aee2[_0x194d('0x24')](_0x438eed[_0x194d('0x24')]);if(_0x438eed[_0x194d('0x26')])_0x51aee2[_0x194d('0x26')](_0x438eed['offset']);return db[_0x194d('0x9f')][_0x194d('0x44')](_0x51aee2[_0x194d('0xa0')](),_0x32d30e);})[_0x194d('0x29')](function(_0x307f93){if(_0x307f93['length']>0x0)_0x1eccbb[_0x194d('0x7d')](_0x194d('0xb4'),_[_0x194d('0x2f')](_0x307f93,'id'));return db[_0x194d('0x9f')][_0x194d('0x44')](_0x1eccbb[_0x194d('0xa0')](),_0x32d30e)[_0x194d('0x29')](function(_0x10c249){var _0x16b431=_[_0x194d('0xb5')](_0x10c249,'FaxInteractionId');var _0x3c134e=[];_0x307f93['forEach'](function(_0x21195b){_0x3c134e[_0x194d('0xb6')](updateFaxInteraction(_0x21195b,_0x1fee2d,_0x16b431));});return BPromise['all'](_0x3c134e);});});})[_0x194d('0x29')](function(_0x432dcc){_0x7823d0[_0x194d('0xb7')]=_0x432dcc;return _0x7823d0;})['then'](respondWithFilteredResult(_0x1a4f92,_0x438eed))[_0x194d('0x35')](handleError(_0x1a4f92,null));};exports[_0x194d('0xb8')]=function(_0x28ebfb,_0x5ef571){var _0x49373f={'raw':![],'where':{'id':_0x28ebfb[_0x194d('0xb9')]['id']}},_0x557d66={};_0x557d66[_0x194d('0x43')]=_['keys'](db[_0x194d('0x3e')][_0x194d('0x3f')]);_0x557d66[_0x194d('0x44')]=_[_0x194d('0x79')](_0x28ebfb['query']);_0x557d66[_0x194d('0x4e')]=_['intersection'](_0x557d66['model'],_0x557d66[_0x194d('0x44')]);_0x49373f[_0x194d('0x46')]=_[_0x194d('0x45')](_0x557d66[_0x194d('0x43')],qs[_0x194d('0x47')](_0x28ebfb[_0x194d('0x44')][_0x194d('0x47')]));_0x49373f[_0x194d('0x46')]=_0x49373f[_0x194d('0x46')]['length']?_0x49373f[_0x194d('0x46')]:_0x557d66[_0x194d('0x43')];if(_0x28ebfb['query'][_0x194d('0xba')]){_0x49373f[_0x194d('0xbb')]=[{'all':!![]}];}_0x49373f=_[_0x194d('0xa1')]({},_0x49373f,_0x28ebfb['options']);return db[_0x194d('0x3e')]['find'](_0x49373f)[_0x194d('0x29')](handleEntityNotFound(_0x5ef571,null))['then'](respondWithResult(_0x5ef571,null))['catch'](handleError(_0x5ef571,null));};exports[_0x194d('0xbc')]=function(_0xcc1d76,_0x4b5d2b){return db[_0x194d('0x3e')][_0x194d('0xbc')](_0xcc1d76['body'],{})[_0x194d('0x29')](respondWithResult(_0x4b5d2b,0xc9))[_0x194d('0x35')](handleError(_0x4b5d2b,null));};exports[_0x194d('0xbd')]=function(_0x15946f,_0x163223){if(_0x15946f['body']['id']){delete _0x15946f['body']['id'];}return db[_0x194d('0x3e')][_0x194d('0x66')]({'where':{'id':_0x15946f[_0x194d('0xb9')]['id']}})['then'](handleEntityNotFound(_0x163223,null))[_0x194d('0x29')](saveUpdates(_0x15946f[_0x194d('0xbe')],null))[_0x194d('0x29')](respondWithResult(_0x163223,null))[_0x194d('0x35')](handleError(_0x163223,null));};exports[_0x194d('0xbf')]=function(_0x2e46da,_0x517163){return db['FaxInteraction'][_0x194d('0x66')]({'where':{'id':_0x2e46da[_0x194d('0xb9')]['id']}})[_0x194d('0x29')](handleEntityNotFound(_0x517163,null))['then'](removeEntity(_0x517163,null))[_0x194d('0x35')](handleError(_0x517163,null));};exports['describe']=function(_0x40426e,_0x2c8574){return db['FaxInteraction'][_0x194d('0xc0')]()[_0x194d('0x29')](respondWithResult(_0x2c8574,null))['catch'](handleError(_0x2c8574,null));};exports[_0x194d('0xc1')]=function(_0x56c7bf,_0x14261a,_0x2ffc9c){return db[_0x194d('0xc2')][_0x194d('0x66')]({'where':{'id':_0x56c7bf[_0x194d('0xb9')]['id']}})['then'](handleEntityNotFound(_0x14261a,null))[_0x194d('0x29')](function(_0x1ede00){if(_0x1ede00){return _0x1ede00['addMessage'](_0x56c7bf[_0x194d('0xbe')][_0x194d('0xc3')],_['omit'](_0x56c7bf[_0x194d('0xbe')],[_0x194d('0xc3'),'id'])||{});}})[_0x194d('0x29')](respondWithResult(_0x14261a,null))['catch'](handleError(_0x14261a,null));};exports[_0x194d('0xc4')]=function(_0xdbe891,_0x4ca182,_0x208c97){var _0x20e826={'raw':![],'where':{}};var _0x2e0500={};var _0x62d37b={'count':0x0,'rows':[]};return db[_0x194d('0x3e')]['findOne']({'where':{'id':_0xdbe891[_0x194d('0xb9')]['id']}})[_0x194d('0x29')](handleEntityNotFound(_0x4ca182,null))[_0x194d('0x29')](function(_0x3e1143){if(_0x3e1143){_0x2e0500[_0x194d('0x43')]=_[_0x194d('0x79')](db[_0x194d('0xc2')][_0x194d('0x3f')]);_0x2e0500[_0x194d('0x44')]=_[_0x194d('0x79')](_0xdbe891[_0x194d('0x44')]);_0x2e0500[_0x194d('0x4e')]=_['intersection'](_0x2e0500['model'],_0x2e0500[_0x194d('0x44')]);_0x20e826[_0x194d('0x46')]=_[_0x194d('0x45')](_0x2e0500[_0x194d('0x43')],qs[_0x194d('0x47')](_0xdbe891['query']['fields']));_0x20e826[_0x194d('0x46')]=_0x20e826[_0x194d('0x46')][_0x194d('0x48')]?_0x20e826[_0x194d('0x46')]:_0x2e0500[_0x194d('0x43')];if(!_0xdbe891[_0x194d('0x44')]['hasOwnProperty'](_0x194d('0x4a'))){_0x20e826[_0x194d('0x24')]=qs[_0x194d('0x24')](_0xdbe891[_0x194d('0x44')]['limit']);_0x20e826[_0x194d('0x26')]=qs[_0x194d('0x26')](_0xdbe891[_0x194d('0x44')][_0x194d('0x26')]);}_0x20e826['order']=qs[_0x194d('0x4c')](_0xdbe891[_0x194d('0x44')][_0x194d('0x4c')]);_0x20e826[_0x194d('0x7d')]=qs[_0x194d('0x4e')](_['pick'](_0xdbe891['query'],_0x2e0500[_0x194d('0x4e')]));_0x20e826['where'][_0x194d('0xc5')]=_0x3e1143['id'];if(_0xdbe891['query']['filter']){_0x20e826[_0x194d('0x7d')]=_[_0x194d('0xa1')](_0x20e826['where'],{'$or':_[_0x194d('0x2f')](_0x20e826[_0x194d('0x46')],function(_0x1b96c4){var _0x34b275={};_0x34b275[_0x1b96c4]={'$like':'%'+_0xdbe891[_0x194d('0x44')]['filter']+'%'};return _0x34b275;})});}if(_0xdbe891[_0x194d('0x44')][_0x194d('0x82')]){var _0x710448=_0xdbe891[_0x194d('0x44')][_0x194d('0x82')][_0x194d('0x33')](',');var _0x44260b={};_0x44260b[_0x710448[0x0]]={'$gte':moment(_0x710448[0x1])[_0x194d('0xc6')](_0x194d('0xc7'))};_0x20e826['where']=_[_0x194d('0xa1')](_0x20e826[_0x194d('0x7d')],_0x44260b);}_0x20e826=_[_0x194d('0xa1')]({},_0x20e826,_0xdbe891[_0x194d('0xc8')]);return db[_0x194d('0xc2')][_0x194d('0x25')]({'where':_0x20e826['where']})['then'](function(_0xb3c91c){_0x62d37b[_0x194d('0x25')]=_0xb3c91c;if(_0xdbe891[_0x194d('0x44')][_0x194d('0xba')]){_0x20e826[_0x194d('0xbb')]=[{'all':!![]}];}return db[_0x194d('0xc2')]['findAll'](_0x20e826);})[_0x194d('0x29')](function(_0x509582){_0x62d37b[_0x194d('0xb7')]=_0x509582;return _0x62d37b;});}})['then'](respondWithFilteredResult(_0x4ca182,_0x20e826))[_0x194d('0x35')](handleError(_0x4ca182,null));};exports[_0x194d('0xc9')]=function(_0xd5d60d,_0x7a8027,_0x26f9cf){return db[_0x194d('0x3e')][_0x194d('0x66')]({'where':{'id':_0xd5d60d['params']['id']}})[_0x194d('0x29')](handleEntityNotFound(_0x7a8027,null))['then'](function(_0x26340e){if(_0x26340e){return _0x26340e[_0x194d('0xca')](_0xd5d60d[_0x194d('0xbe')][_0x194d('0xc3')],_[_0x194d('0xcb')](_0xd5d60d['body'],['ids','id'])||{})[_0x194d('0xcc')](function(){return db[_0x194d('0x73')]['findAll']({'attributes':['id',_0x194d('0x2c'),_0x194d('0x51')],'where':{'id':_0xd5d60d[_0x194d('0xbe')][_0x194d('0xc3')]}});})[_0x194d('0x29')](function(_0x1160a3){socket[_0x194d('0xcd')](_0x194d('0xce'),{'id':Number(_0xd5d60d['params']['id']),'tags':_0x1160a3||[]});return{'id':Number(_0xd5d60d[_0x194d('0xb9')]['id']),'tags':_0x1160a3||[]};});}})[_0x194d('0x29')](respondWithResult(_0x7a8027,null))['catch'](handleError(_0x7a8027,null));};exports['removeTags']=function(_0x208bbb,_0x468fa1,_0x4ecf9e){return db[_0x194d('0x3e')][_0x194d('0x66')]({'where':{'id':_0x208bbb[_0x194d('0xb9')]['id']}})[_0x194d('0x29')](handleEntityNotFound(_0x468fa1,null))[_0x194d('0x29')](function(_0x4094d2){if(_0x4094d2){return _0x4094d2['removeTags'](_0x208bbb[_0x194d('0x44')]['ids']);}})[_0x194d('0x29')](respondWithStatusCode(_0x468fa1,null))[_0x194d('0x35')](handleError(_0x468fa1,null));};exports[_0x194d('0xcf')]=function(_0x5c4485,_0x4b8669){var _0x2dbb16=moment()[_0x194d('0xd0')]()[_0x194d('0xa0')]();var _0x11b97f=path[_0x194d('0xd1')](config['root'],_0x194d('0xd2'),_0x194d('0xd3'),_0x194d('0xd4'));var _0x12efc3=path[_0x194d('0xd1')](config[_0x194d('0xd5')],_0x194d('0xd2'),'files','attachments');var _0x30c81a=path[_0x194d('0xd1')](_0x11b97f,_0x2dbb16);var _0x5723a6=util['format']('transcript-%d-%s.zip',_0x5c4485[_0x194d('0xb9')]['id'],_0x2dbb16);var _0x399fa0=path[_0x194d('0xd1')](_0x11b97f,_0x5723a6);var _0x4ea2d4=[];_0x4ea2d4[_0x194d('0xb6')]({'model':db[_0x194d('0xd6')],'as':'Attachment','raw':!![]});var _0x2fded1=[{'model':db['FaxMessage'],'as':'Messages','attributes':['id','body',_0x194d('0x80')],'include':_0x4ea2d4}];return db[_0x194d('0x3e')][_0x194d('0x66')]({'where':{'id':_0x5c4485['params']['id']},'include':_0x2fded1})[_0x194d('0x29')](handleEntityNotFound(_0x4b8669,null))[_0x194d('0x29')](function(_0x1dac95){if(_0x1dac95&&_0x1dac95[_0x194d('0xd7')]){var _0x62fade=_0x1dac95[_0x194d('0xd8')]({'plain':!![]});fs[_0x194d('0xd9')](_0x30c81a);for(var _0x467ea3=0x0;_0x467ea3<_0x62fade[_0x194d('0xd7')][_0x194d('0x48')];_0x467ea3++){var _0x1aa4f5=_0x62fade['Messages'][_0x467ea3][_0x194d('0xd6')];if(_0x1aa4f5){var _0x5b4c5a=path[_0x194d('0xd1')](_0x12efc3,_0x1aa4f5[_0x194d('0xda')]);if(fs[_0x194d('0xdb')](_0x5b4c5a)){fs[_0x194d('0xdc')](_0x5b4c5a)[_0x194d('0xdd')](fs[_0x194d('0xde')](path['join'](_0x30c81a,_0x1aa4f5[_0x194d('0xda')])));}}}return BPromise[_0x194d('0x99')]()[_0x194d('0x29')](function(){return new BPromise(function(_0x3ca7fb,_0x2a79c5){zipdir(_0x30c81a,{'saveTo':_0x399fa0},function(_0x2e5eaa,_0x47db1f){if(_0x2e5eaa)return _0x2a79c5(_0x2e5eaa);return _0x3ca7fb(_0x47db1f);});})[_0x194d('0x29')](function(){return new BPromise(function(_0x3a9125,_0x31fb89){rimraf(_0x30c81a,function(_0x1e0908){if(_0x1e0908)_0x31fb89(_0x1e0908);return _0x3a9125();});});})[_0x194d('0x29')](function(){return _0x4b8669[_0x194d('0xcf')](_0x399fa0,_0x5723a6,function(_0x4fb76f){if(_0x4fb76f){console[_0x194d('0xdf')](_0x194d('0xe0'),_0x4fb76f);}else{fs[_0x194d('0xe1')](_0x399fa0);}});});});}else{return _0x4b8669[_0x194d('0x1f')](0xc8);}})[_0x194d('0x35')](handleError(_0x4b8669,null));};