Built motion from commit 5b761a7b.|2.5.36
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 54f5c48..107aca6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xbf13=['to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../config/license/util','redis','localhost','./chatMessage.socket','register','request','then','info','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','error','ChatMessage,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','count','offset','limit','set','Content-Range','json','reject','save','update','destroy','stack','name','send','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','fields','length','sort','where','pick','filter','merge','VIRTUAL','options','findAll','rows','show','params','intersection','includeAll','include','find','create','body','../../config/logger','chat-interactions','read','YYYY-MM-DD\x20HH:mm:ss','UserId','user','Contact','get','read1stAt','format','interaction','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','stringify','null','AcceptMessage','acceptMessage','manual','interface','SIP/%s','channel','accept','EventManager','acceptmessage','parse','chat','ChatInteraction','ChatInteractionId','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','event','html-pdf','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','path','sox'];(function(_0x4ed13c,_0xeca59a){var _0xefde65=function(_0x41eddf){while(--_0x41eddf){_0x4ed13c['push'](_0x4ed13c['shift']());}};_0xefde65(++_0xeca59a);}(_0xbf13,0x159));var _0x3bf1=function(_0x3e9d35,_0x25ab2a){_0x3e9d35=_0x3e9d35-0x0;var _0xac638c=_0xbf13[_0x3e9d35];return _0xac638c;};'use strict';var pdf=require(_0x3bf1('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x3bf1('0x1'));var zipdir=require(_0x3bf1('0x2'));var jsonpatch=require(_0x3bf1('0x3'));var rp=require(_0x3bf1('0x4'));var moment=require('moment');var BPromise=require(_0x3bf1('0x5'));var Mustache=require(_0x3bf1('0x6'));var util=require('util');var path=require(_0x3bf1('0x7'));var sox=require(_0x3bf1('0x8'));var csv=require(_0x3bf1('0x9'));var ejs=require(_0x3bf1('0xa'));var fs=require('fs');var _=require(_0x3bf1('0xb'));var squel=require('squel');var crypto=require(_0x3bf1('0xc'));var jsforce=require(_0x3bf1('0xd'));var deskjs=require(_0x3bf1('0xe'));var toCsv=require(_0x3bf1('0x9'));var querystring=require(_0x3bf1('0xf'));var Papa=require(_0x3bf1('0x10'));var Redis=require(_0x3bf1('0x11'));var authService=require(_0x3bf1('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x3bf1('0x13'));var hardwareService=require(_0x3bf1('0x14'));var logger=require('../../config/logger')(_0x3bf1('0x15'));var utils=require('../../config/utils');var config=require(_0x3bf1('0x16'));var licenseUtil=require(_0x3bf1('0x17'));var db=require('../../mysqldb')['db'];config[_0x3bf1('0x18')]=_['defaults'](config[_0x3bf1('0x18')],{'host':_0x3bf1('0x19'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x3bf1('0x18')]));require(_0x3bf1('0x1a'))[_0x3bf1('0x1b')](socket);var jayson=require('jayson/promise');var client=jayson['client']['http']({'port':0x232c});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x571f77,_0x3a36bc,_0x1d2660,_0x268cd7){return new BPromise(function(_0xe8626e,_0x33271a){var _0x5948ee=_0x268cd7||client;return _0x5948ee[_0x3bf1('0x1c')](_0x571f77,_0x1d2660)[_0x3bf1('0x1d')](function(_0x35f942){logger[_0x3bf1('0x1e')]('ChatMessage,\x20%s,\x20%s',_0x3a36bc,_0x3bf1('0x1f'));logger[_0x3bf1('0x20')](_0x3bf1('0x21'),_0x3a36bc,'request\x20sent',JSON['stringify'](_0x35f942));if(_0x35f942[_0x3bf1('0x22')]){if(_0x35f942['error']['code']===0x1f4){logger[_0x3bf1('0x22')](_0x3bf1('0x23'),_0x3a36bc,_0x35f942['error']['message']);return _0x33271a(_0x35f942[_0x3bf1('0x22')][_0x3bf1('0x24')]);}logger[_0x3bf1('0x22')](_0x3bf1('0x23'),_0x3a36bc,_0x35f942['error'][_0x3bf1('0x24')]);return _0xe8626e(_0x35f942[_0x3bf1('0x22')]['message']);}else{logger[_0x3bf1('0x1e')](_0x3bf1('0x23'),_0x3a36bc,_0x3bf1('0x1f'));_0xe8626e(_0x35f942[_0x3bf1('0x25')]['message']);}})[_0x3bf1('0x26')](function(_0x4a7169){logger[_0x3bf1('0x22')](_0x3bf1('0x23'),_0x3a36bc,_0x4a7169);_0x33271a(_0x4a7169);});});}function respondWithStatusCode(_0xd71580,_0x394ade){_0x394ade=_0x394ade||0xcc;return function(_0x4c9164){if(_0x4c9164){return _0xd71580[_0x3bf1('0x27')](_0x394ade);}return _0xd71580[_0x3bf1('0x28')](_0x394ade)[_0x3bf1('0x29')]();};}function respondWithResult(_0x10ce38,_0x3553b6){_0x3553b6=_0x3553b6||0xc8;return function(_0x50b812){if(_0x50b812){return _0x10ce38['status'](_0x3553b6)['json'](_0x50b812);}};}function respondWithFilteredResult(_0xf54488,_0x24c313){return function(_0x301804){if(_0x301804){var _0x3b52e8=_0x301804[_0x3bf1('0x2a')],_0x12648c=_0x24c313[_0x3bf1('0x2b')],_0x533d7f=_0x24c313[_0x3bf1('0x2b')]+_0x24c313[_0x3bf1('0x2c')],_0x3dd85b;if(_0x533d7f>=_0x3b52e8){_0x533d7f=_0x3b52e8;_0x3dd85b=0xc8;}else{_0x3dd85b=0xce;}_0xf54488[_0x3bf1('0x28')](_0x3dd85b);return _0xf54488[_0x3bf1('0x2d')](_0x3bf1('0x2e'),_0x12648c+'-'+_0x533d7f+'/'+_0x3b52e8)[_0x3bf1('0x2f')](_0x301804);}return null;};}function patchUpdates(_0x4a67a6){return function(_0x5ca171){try{jsonpatch['apply'](_0x5ca171,_0x4a67a6,!![]);}catch(_0xf6a0ea){return BPromise[_0x3bf1('0x30')](_0xf6a0ea);}return _0x5ca171[_0x3bf1('0x31')]();};}function saveUpdates(_0x405815,_0x44b921){return function(_0x26a318){if(_0x26a318){return _0x26a318[_0x3bf1('0x32')](_0x405815)[_0x3bf1('0x1d')](function(_0x46051e){return _0x46051e;});}return null;};}function removeEntity(_0x390022,_0x37ca95){return function(_0x159176){if(_0x159176){return _0x159176[_0x3bf1('0x33')]()['then'](function(){_0x390022[_0x3bf1('0x28')](0xcc)[_0x3bf1('0x29')]();});}};}function handleEntityNotFound(_0x402334,_0xe5a250){return function(_0x43d610){if(!_0x43d610){_0x402334[_0x3bf1('0x27')](0x194);}return _0x43d610;};}function handleError(_0x3b04fd,_0x28c0e1){_0x28c0e1=_0x28c0e1||0x1f4;return function(_0x3e49b6){logger[_0x3bf1('0x22')](_0x3e49b6[_0x3bf1('0x34')]);if(_0x3e49b6[_0x3bf1('0x35')]){delete _0x3e49b6['name'];}_0x3b04fd[_0x3bf1('0x28')](_0x28c0e1)[_0x3bf1('0x36')](_0x3e49b6);};}exports[_0x3bf1('0x37')]=function(_0x3e6f71,_0x2b4b10){var _0x2bde1a={},_0xf50386={},_0x5bbce8={'count':0x0,'rows':[]};var _0x36acf5=_[_0x3bf1('0x38')](db[_0x3bf1('0x39')][_0x3bf1('0x3a')],function(_0x51054c){return{'name':_0x51054c[_0x3bf1('0x3b')],'type':_0x51054c[_0x3bf1('0x3c')][_0x3bf1('0x3d')]};});_0xf50386[_0x3bf1('0x3e')]=_[_0x3bf1('0x38')](_0x36acf5,'name');_0xf50386[_0x3bf1('0x3f')]=_[_0x3bf1('0x40')](_0x3e6f71[_0x3bf1('0x3f')]);_0xf50386[_0x3bf1('0x41')]=_['intersection'](_0xf50386['model'],_0xf50386[_0x3bf1('0x3f')]);_0x2bde1a[_0x3bf1('0x42')]=_['intersection'](_0xf50386['model'],qs['fields'](_0x3e6f71[_0x3bf1('0x3f')][_0x3bf1('0x43')]));_0x2bde1a[_0x3bf1('0x42')]=_0x2bde1a[_0x3bf1('0x42')][_0x3bf1('0x44')]?_0x2bde1a[_0x3bf1('0x42')]:_0xf50386[_0x3bf1('0x3e')];if(!_0x3e6f71[_0x3bf1('0x3f')]['hasOwnProperty']('nolimit')){_0x2bde1a[_0x3bf1('0x2c')]=qs[_0x3bf1('0x2c')](_0x3e6f71[_0x3bf1('0x3f')][_0x3bf1('0x2c')]);_0x2bde1a[_0x3bf1('0x2b')]=qs[_0x3bf1('0x2b')](_0x3e6f71[_0x3bf1('0x3f')]['offset']);}_0x2bde1a['order']=qs['sort'](_0x3e6f71[_0x3bf1('0x3f')][_0x3bf1('0x45')]);_0x2bde1a[_0x3bf1('0x46')]=qs[_0x3bf1('0x41')](_[_0x3bf1('0x47')](_0x3e6f71[_0x3bf1('0x3f')],_0xf50386['filters']),_0x36acf5);if(_0x3e6f71[_0x3bf1('0x3f')][_0x3bf1('0x48')]){_0x2bde1a['where']=_[_0x3bf1('0x49')](_0x2bde1a['where'],{'$or':_['map'](_0x36acf5,function(_0x1bb336){if(_0x1bb336['type']!==_0x3bf1('0x4a')){var _0x107412={};_0x107412[_0x1bb336['name']]={'$like':'%'+_0x3e6f71['query']['filter']+'%'};return _0x107412;}})});}_0x2bde1a=_[_0x3bf1('0x49')]({},_0x2bde1a,_0x3e6f71[_0x3bf1('0x4b')]);var _0x41da89={'where':_0x2bde1a[_0x3bf1('0x46')]};return db[_0x3bf1('0x39')][_0x3bf1('0x2a')](_0x41da89)[_0x3bf1('0x1d')](function(_0x18b202){_0x5bbce8[_0x3bf1('0x2a')]=_0x18b202;if(_0x3e6f71[_0x3bf1('0x3f')]['includeAll']){_0x2bde1a['include']=[{'all':!![]}];}return db[_0x3bf1('0x39')][_0x3bf1('0x4c')](_0x2bde1a);})[_0x3bf1('0x1d')](function(_0x283651){_0x5bbce8[_0x3bf1('0x4d')]=_0x283651;return _0x5bbce8;})[_0x3bf1('0x1d')](respondWithFilteredResult(_0x2b4b10,_0x2bde1a))[_0x3bf1('0x26')](handleError(_0x2b4b10,null));};exports[_0x3bf1('0x4e')]=function(_0xe77b21,_0x2ceaed){var _0x39bbd3={'raw':!![],'where':{'id':_0xe77b21[_0x3bf1('0x4f')]['id']}},_0x2de4e6={};_0x2de4e6[_0x3bf1('0x3e')]=_[_0x3bf1('0x40')](db[_0x3bf1('0x39')][_0x3bf1('0x3a')]);_0x2de4e6[_0x3bf1('0x3f')]=_[_0x3bf1('0x40')](_0xe77b21['query']);_0x2de4e6[_0x3bf1('0x41')]=_[_0x3bf1('0x50')](_0x2de4e6[_0x3bf1('0x3e')],_0x2de4e6[_0x3bf1('0x3f')]);_0x39bbd3[_0x3bf1('0x42')]=_[_0x3bf1('0x50')](_0x2de4e6[_0x3bf1('0x3e')],qs[_0x3bf1('0x43')](_0xe77b21[_0x3bf1('0x3f')][_0x3bf1('0x43')]));_0x39bbd3['attributes']=_0x39bbd3[_0x3bf1('0x42')][_0x3bf1('0x44')]?_0x39bbd3[_0x3bf1('0x42')]:_0x2de4e6['model'];if(_0xe77b21[_0x3bf1('0x3f')][_0x3bf1('0x51')]){_0x39bbd3[_0x3bf1('0x52')]=[{'all':!![]}];}_0x39bbd3=_['merge']({},_0x39bbd3,_0xe77b21['options']);return db[_0x3bf1('0x39')][_0x3bf1('0x53')](_0x39bbd3)[_0x3bf1('0x1d')](handleEntityNotFound(_0x2ceaed,null))['then'](respondWithResult(_0x2ceaed,null))[_0x3bf1('0x26')](handleError(_0x2ceaed,null));};exports[_0x3bf1('0x54')]=function(_0x7aa20c,_0x4dce58){return db['ChatMessage'][_0x3bf1('0x54')](_0x7aa20c['body'],{})['then'](respondWithResult(_0x4dce58,0xc9))[_0x3bf1('0x26')](handleError(_0x4dce58,null));};exports[_0x3bf1('0x32')]=function(_0x3f364d,_0x5a2520){if(_0x3f364d[_0x3bf1('0x55')]['id']){delete _0x3f364d['body']['id'];}return db['ChatMessage'][_0x3bf1('0x53')]({'where':{'id':_0x3f364d[_0x3bf1('0x4f')]['id']}})[_0x3bf1('0x1d')](handleEntityNotFound(_0x5a2520,null))['then'](saveUpdates(_0x3f364d[_0x3bf1('0x55')],null))[_0x3bf1('0x1d')](respondWithResult(_0x5a2520,null))['catch'](handleError(_0x5a2520,null));};exports[_0x3bf1('0x33')]=function(_0x2d7f5d,_0x2ea167){return db[_0x3bf1('0x39')]['find']({'where':{'id':_0x2d7f5d['params']['id']}})['then'](handleEntityNotFound(_0x2ea167,null))[_0x3bf1('0x1d')](removeEntity(_0x2ea167,null))[_0x3bf1('0x26')](handleError(_0x2ea167,null));};exports['describe']=function(_0x32c2c2,_0x4798ef){return db['ChatMessage']['describe']()['then'](respondWithResult(_0x4798ef,null))[_0x3bf1('0x26')](handleError(_0x4798ef,null));};var interaction_log=require(_0x3bf1('0x56'))(_0x3bf1('0x57'));exports['accept']=function(_0x36743b,_0xaf0a53,_0x38cdea){var _0x518cbb={'agent':{},'channel':'chat'};if(_0x36743b[_0x3bf1('0x55')]['id']){delete _0x36743b['body']['id'];}_0x36743b[_0x3bf1('0x55')][_0x3bf1('0x58')]=!![];_0x36743b[_0x3bf1('0x55')]['readAt']=moment()['format'](_0x3bf1('0x59'));_0x36743b[_0x3bf1('0x55')][_0x3bf1('0x5a')]=_0x36743b['body'][_0x3bf1('0x5a')]||_0x36743b[_0x3bf1('0x5b')]['id'];_0x518cbb['agent']['id']=_0x36743b[_0x3bf1('0x55')][_0x3bf1('0x5a')];return db[_0x3bf1('0x39')][_0x3bf1('0x53')]({'where':{'id':_0x36743b['params']['id'],'UserId':null},'include':[{'model':db['CmContact'],'as':_0x3bf1('0x5c')}]})[_0x3bf1('0x1d')](handleEntityNotFound(_0xaf0a53,null))['then'](saveUpdates(_0x36743b[_0x3bf1('0x55')],null))['then'](function(_0x52dba9){if(_0x52dba9){_0x518cbb[_0x3bf1('0x24')]=_0x52dba9[_0x3bf1('0x5d')]({'plain':!![]});return db['ChatInteraction'][_0x3bf1('0x53')]({'where':{'id':_0x52dba9['ChatInteractionId']}});}return null;})[_0x3bf1('0x1d')](handleEntityNotFound(_0xaf0a53,null))[_0x3bf1('0x1d')](function(_0x2f9aa2){if(_0x2f9aa2){return _0x2f9aa2[_0x3bf1('0x32')]({'UserId':_0x36743b['body'][_0x3bf1('0x5a')],'read1stAt':_['isNil'](_0x2f9aa2[_0x3bf1('0x5e')])?moment()[_0x3bf1('0x5f')](_0x3bf1('0x59')):undefined});}return null;})[_0x3bf1('0x1d')](function(_0xd9276b){if(_0xd9276b){_0x518cbb[_0x3bf1('0x60')]=_0xd9276b[_0x3bf1('0x5d')]({'plain':!![]});interaction_log['info'](_0x3bf1('0x61'),_0x36743b['user']['id'],_0x36743b[_0x3bf1('0x5b')][_0x3bf1('0x35')],_0x36743b['user'][_0x3bf1('0x62')],_0x518cbb[_0x3bf1('0x60')]['id'],_0x36743b['body']?JSON[_0x3bf1('0x63')](_0x36743b[_0x3bf1('0x55')]):_0x3bf1('0x64'));return respondWithRpcPromise(_0x3bf1('0x65'),_0x3bf1('0x66'),_0x518cbb);}return null;})[_0x3bf1('0x1d')](function(_0x127b60){if(_0x127b60){if(_0x36743b[_0x3bf1('0x55')][_0x3bf1('0x67')]){_0x518cbb[_0x3bf1('0x24')][_0x3bf1('0x68')]=util[_0x3bf1('0x5f')](_0x3bf1('0x69'),_0x36743b[_0x3bf1('0x5b')]['name']);_0x518cbb[_0x3bf1('0x24')][_0x3bf1('0x6a')]=_0x518cbb[_0x3bf1('0x6a')];_0x518cbb['message']['event']=_0x3bf1('0x6b');return respondWithRpcPromise(_0x3bf1('0x6c'),_0x3bf1('0x6c'),{'event':_0x3bf1('0x6d'),'message':_[_0x3bf1('0x49')](_0x518cbb[_0x3bf1('0x24')],JSON[_0x3bf1('0x6e')](_0x518cbb[_0x3bf1('0x60')]['formData']))},client9002)[_0x3bf1('0x1d')](function(){return _0x518cbb;});}return _0x518cbb;}return null;})[_0x3bf1('0x1d')](respondWithResult(_0xaf0a53,null))['catch'](handleError(_0xaf0a53,null));};var interaction_log=require(_0x3bf1('0x56'))(_0x3bf1('0x57'));exports[_0x3bf1('0x30')]=function(_0xef69c5,_0x234687,_0x239b89){var _0xf5abf2={'agent':{},'channel':_0x3bf1('0x6f')};if(_0xef69c5[_0x3bf1('0x55')]['id']){delete _0xef69c5['body']['id'];}_0xef69c5['body'][_0x3bf1('0x5a')]=_0xef69c5[_0x3bf1('0x55')][_0x3bf1('0x5a')]||_0xef69c5[_0x3bf1('0x5b')]['id'];_0xf5abf2['agent']['id']=_0xef69c5['body'][_0x3bf1('0x5a')];return db['ChatMessage'][_0x3bf1('0x53')]({'where':{'id':_0xef69c5[_0x3bf1('0x4f')]['id'],'UserId':null}})[_0x3bf1('0x1d')](handleEntityNotFound(_0x234687,null))['then'](function(_0x27dea3){if(_0x27dea3){_0xf5abf2[_0x3bf1('0x24')]=_0x27dea3[_0x3bf1('0x5d')]({'plain':!![]});return db[_0x3bf1('0x70')]['find']({'where':{'id':_0x27dea3[_0x3bf1('0x71')]}});}return null;})['then'](handleEntityNotFound(_0x234687,null))['then'](function(_0x1c598f){if(_0x1c598f){_0xf5abf2['interaction']=_0x1c598f[_0x3bf1('0x5d')]({'plain':!![]});interaction_log[_0x3bf1('0x1e')](_0x3bf1('0x72'),_0xef69c5['user']['id'],_0xef69c5[_0x3bf1('0x5b')]['name'],_0xef69c5[_0x3bf1('0x5b')]['role'],_0xf5abf2['interaction']['id'],_0xef69c5[_0x3bf1('0x55')]?JSON[_0x3bf1('0x63')](_0xef69c5['body']):_0x3bf1('0x64'));return respondWithRpcPromise(_0x3bf1('0x73'),_0x3bf1('0x74'),_0xf5abf2);}return null;})[_0x3bf1('0x1d')](function(_0x56dc0b){if(_0x56dc0b){_0x56dc0b[_0x3bf1('0x24')][_0x3bf1('0x68')]=util[_0x3bf1('0x5f')](_0x3bf1('0x69'),_0xef69c5[_0x3bf1('0x5b')][_0x3bf1('0x35')]);_0x56dc0b['message'][_0x3bf1('0x6a')]=_0xf5abf2['channel'];_0x56dc0b['message'][_0x3bf1('0x75')]=_0x3bf1('0x30');respondWithRpcPromise(_0x3bf1('0x6c'),'EventManager',{'event':'rejectmessage','message':_0x56dc0b[_0x3bf1('0x24')]},client9002);return _0xf5abf2;}return null;})[_0x3bf1('0x1d')](respondWithResult(_0x234687,null))['catch'](handleError(_0x234687,null));};
\ No newline at end of file
+var _0x3ae9=['params','find','create','body','describe','chat-interactions','accept','chat','read','format','YYYY-MM-DD\x20HH:mm:ss','UserId','agent','ChatInteraction','ChatInteractionId','isNil','interaction','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','User','email','internal','manual','interface','channel','motionChannel','event','EventManager','acceptmessage','parse','formData','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','fullname','rejectmessage','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','path','sox','to-csv','ejs','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','register','jayson/promise','http','request','info','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','sendStatus','status','offset','undefined','limit','set','Content-Range','json','apply','reject','update','then','destroy','end','stack','send','index','map','rawAttributes','type','key','model','keys','filters','query','attributes','intersection','fields','length','hasOwnProperty','where','pick','VIRTUAL','name','filter','merge','ChatMessage','count','includeAll','include','findAll','rows','show'];(function(_0x34a7b5,_0x15c8fe){var _0x28dcf4=function(_0xe27734){while(--_0xe27734){_0x34a7b5['push'](_0x34a7b5['shift']());}};_0x28dcf4(++_0x15c8fe);}(_0x3ae9,0xb3));var _0x93ae=function(_0x465028,_0x4570ac){_0x465028=_0x465028-0x0;var _0xb783d4=_0x3ae9[_0x465028];return _0xb783d4;};'use strict';var emlformat=require(_0x93ae('0x0'));var rimraf=require(_0x93ae('0x1'));var zipdir=require(_0x93ae('0x2'));var jsonpatch=require(_0x93ae('0x3'));var rp=require('request-promise');var moment=require(_0x93ae('0x4'));var BPromise=require(_0x93ae('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0x93ae('0x6'));var sox=require(_0x93ae('0x7'));var csv=require(_0x93ae('0x8'));var ejs=require(_0x93ae('0x9'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x93ae('0xa'));var crypto=require(_0x93ae('0xb'));var jsforce=require(_0x93ae('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x93ae('0x8'));var querystring=require(_0x93ae('0xd'));var Papa=require(_0x93ae('0xe'));var Redis=require(_0x93ae('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x93ae('0x10'));var as=require(_0x93ae('0x11'));var hardwareService=require(_0x93ae('0x12'));var logger=require(_0x93ae('0x13'))('api');var utils=require('../../config/utils');var config=require(_0x93ae('0x14'));var licenseUtil=require(_0x93ae('0x15'));var db=require(_0x93ae('0x16'))['db'];config[_0x93ae('0x17')]=_[_0x93ae('0x18')](config[_0x93ae('0x17')],{'host':_0x93ae('0x19'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x93ae('0x17')]));require('./chatMessage.socket')[_0x93ae('0x1a')](socket);var jayson=require(_0x93ae('0x1b'));var client=jayson['client'][_0x93ae('0x1c')]({'port':0x232c});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x5289b1,_0x59661b,_0x5698d8,_0x3ae279){return new BPromise(function(_0x445acb,_0x26b1d3){var _0x3671ee=_0x3ae279||client;return _0x3671ee[_0x93ae('0x1d')](_0x5289b1,_0x5698d8)['then'](function(_0x1b6221){logger[_0x93ae('0x1e')](_0x93ae('0x1f'),_0x59661b,_0x93ae('0x20'));logger[_0x93ae('0x21')]('ChatMessage,\x20%s,\x20%s,\x20%s',_0x59661b,_0x93ae('0x20'),JSON[_0x93ae('0x22')](_0x1b6221));if(_0x1b6221[_0x93ae('0x23')]){if(_0x1b6221[_0x93ae('0x23')][_0x93ae('0x24')]===0x1f4){logger[_0x93ae('0x23')](_0x93ae('0x1f'),_0x59661b,_0x1b6221[_0x93ae('0x23')][_0x93ae('0x25')]);return _0x26b1d3(_0x1b6221['error'][_0x93ae('0x25')]);}logger[_0x93ae('0x23')]('ChatMessage,\x20%s,\x20%s',_0x59661b,_0x1b6221[_0x93ae('0x23')][_0x93ae('0x25')]);return _0x445acb(_0x1b6221[_0x93ae('0x23')][_0x93ae('0x25')]);}else{logger[_0x93ae('0x1e')](_0x93ae('0x1f'),_0x59661b,_0x93ae('0x20'));_0x445acb(_0x1b6221[_0x93ae('0x26')][_0x93ae('0x25')]);}})[_0x93ae('0x27')](function(_0xc58a3b){logger[_0x93ae('0x23')]('ChatMessage,\x20%s,\x20%s',_0x59661b,_0xc58a3b);_0x26b1d3(_0xc58a3b);});});}function respondWithStatusCode(_0x8d2814,_0x6d0b5c){_0x6d0b5c=_0x6d0b5c||0xcc;return function(_0x1004e2){if(_0x1004e2){return _0x8d2814[_0x93ae('0x28')](_0x6d0b5c);}return _0x8d2814[_0x93ae('0x29')](_0x6d0b5c)['end']();};}function respondWithResult(_0xdcdf6f,_0x487fd2){_0x487fd2=_0x487fd2||0xc8;return function(_0x4a04fc){if(_0x4a04fc){return _0xdcdf6f['status'](_0x487fd2)['json'](_0x4a04fc);}};}function respondWithFilteredResult(_0x1de872,_0xb379c0){return function(_0x52e7b4){if(_0x52e7b4){var _0x1761c8=typeof _0xb379c0[_0x93ae('0x2a')]===_0x93ae('0x2b')&&typeof _0xb379c0[_0x93ae('0x2c')]===_0x93ae('0x2b');var _0x305908=_0x52e7b4['count'];var _0x41e191=_0x1761c8?0x0:_0xb379c0['offset'];var _0x4d74b5=_0x1761c8?_0x52e7b4['count']:_0xb379c0[_0x93ae('0x2a')]+_0xb379c0['limit'];var _0x489ef7;if(_0x4d74b5>=_0x305908){_0x4d74b5=_0x305908;_0x489ef7=0xc8;}else{_0x489ef7=0xce;}_0x1de872[_0x93ae('0x29')](_0x489ef7);return _0x1de872[_0x93ae('0x2d')](_0x93ae('0x2e'),_0x41e191+'-'+_0x4d74b5+'/'+_0x305908)[_0x93ae('0x2f')](_0x52e7b4);}return null;};}function patchUpdates(_0x3ae8b6){return function(_0x2e04c0){try{jsonpatch[_0x93ae('0x30')](_0x2e04c0,_0x3ae8b6,!![]);}catch(_0x1e046e){return BPromise[_0x93ae('0x31')](_0x1e046e);}return _0x2e04c0['save']();};}function saveUpdates(_0x159c56,_0x54ee98){return function(_0x3699bb){if(_0x3699bb){return _0x3699bb[_0x93ae('0x32')](_0x159c56)[_0x93ae('0x33')](function(_0x2c4fbf){return _0x2c4fbf;});}return null;};}function removeEntity(_0x583b58,_0x311eaf){return function(_0x2728b2){if(_0x2728b2){return _0x2728b2[_0x93ae('0x34')]()['then'](function(){_0x583b58[_0x93ae('0x29')](0xcc)[_0x93ae('0x35')]();});}};}function handleEntityNotFound(_0x52ef94,_0x4577c7){return function(_0x421ad5){if(!_0x421ad5){_0x52ef94[_0x93ae('0x28')](0x194);}return _0x421ad5;};}function handleError(_0x137516,_0xcc7653){_0xcc7653=_0xcc7653||0x1f4;return function(_0x4b4095){logger['error'](_0x4b4095[_0x93ae('0x36')]);if(_0x4b4095['name']){delete _0x4b4095['name'];}_0x137516['status'](_0xcc7653)[_0x93ae('0x37')](_0x4b4095);};}exports[_0x93ae('0x38')]=function(_0x1da33b,_0x56cd3d){var _0x58cb70={},_0x1627a3={},_0x5155c1={'count':0x0,'rows':[]};var _0x3e62a9=_[_0x93ae('0x39')](db['ChatMessage'][_0x93ae('0x3a')],function(_0x2b04bb){return{'name':_0x2b04bb['fieldName'],'type':_0x2b04bb[_0x93ae('0x3b')][_0x93ae('0x3c')]};});_0x1627a3[_0x93ae('0x3d')]=_[_0x93ae('0x39')](_0x3e62a9,'name');_0x1627a3['query']=_[_0x93ae('0x3e')](_0x1da33b['query']);_0x1627a3[_0x93ae('0x3f')]=_['intersection'](_0x1627a3[_0x93ae('0x3d')],_0x1627a3[_0x93ae('0x40')]);_0x58cb70[_0x93ae('0x41')]=_[_0x93ae('0x42')](_0x1627a3[_0x93ae('0x3d')],qs[_0x93ae('0x43')](_0x1da33b[_0x93ae('0x40')][_0x93ae('0x43')]));_0x58cb70[_0x93ae('0x41')]=_0x58cb70[_0x93ae('0x41')][_0x93ae('0x44')]?_0x58cb70[_0x93ae('0x41')]:_0x1627a3[_0x93ae('0x3d')];if(!_0x1da33b[_0x93ae('0x40')][_0x93ae('0x45')]('nolimit')){_0x58cb70['limit']=qs[_0x93ae('0x2c')](_0x1da33b[_0x93ae('0x40')]['limit']);_0x58cb70[_0x93ae('0x2a')]=qs['offset'](_0x1da33b[_0x93ae('0x40')][_0x93ae('0x2a')]);}_0x58cb70['order']=qs['sort'](_0x1da33b['query']['sort']);_0x58cb70[_0x93ae('0x46')]=qs[_0x93ae('0x3f')](_[_0x93ae('0x47')](_0x1da33b[_0x93ae('0x40')],_0x1627a3[_0x93ae('0x3f')]),_0x3e62a9);if(_0x1da33b[_0x93ae('0x40')]['filter']){_0x58cb70['where']=_['merge'](_0x58cb70[_0x93ae('0x46')],{'$or':_[_0x93ae('0x39')](_0x3e62a9,function(_0x122479){if(_0x122479[_0x93ae('0x3b')]!==_0x93ae('0x48')){var _0x5515e4={};_0x5515e4[_0x122479[_0x93ae('0x49')]]={'$like':'%'+_0x1da33b['query'][_0x93ae('0x4a')]+'%'};return _0x5515e4;}})});}_0x58cb70=_[_0x93ae('0x4b')]({},_0x58cb70,_0x1da33b['options']);var _0xdaa299={'where':_0x58cb70['where']};return db[_0x93ae('0x4c')][_0x93ae('0x4d')](_0xdaa299)[_0x93ae('0x33')](function(_0x3d7e96){_0x5155c1[_0x93ae('0x4d')]=_0x3d7e96;if(_0x1da33b[_0x93ae('0x40')][_0x93ae('0x4e')]){_0x58cb70[_0x93ae('0x4f')]=[{'all':!![]}];}return db['ChatMessage'][_0x93ae('0x50')](_0x58cb70);})[_0x93ae('0x33')](function(_0x1f5054){_0x5155c1[_0x93ae('0x51')]=_0x1f5054;return _0x5155c1;})[_0x93ae('0x33')](respondWithFilteredResult(_0x56cd3d,_0x58cb70))[_0x93ae('0x27')](handleError(_0x56cd3d,null));};exports[_0x93ae('0x52')]=function(_0xcf130c,_0x89b64e){var _0x4ed5c4={'raw':!![],'where':{'id':_0xcf130c[_0x93ae('0x53')]['id']}},_0x278aed={};_0x278aed['model']=_[_0x93ae('0x3e')](db[_0x93ae('0x4c')]['rawAttributes']);_0x278aed[_0x93ae('0x40')]=_[_0x93ae('0x3e')](_0xcf130c[_0x93ae('0x40')]);_0x278aed[_0x93ae('0x3f')]=_[_0x93ae('0x42')](_0x278aed['model'],_0x278aed[_0x93ae('0x40')]);_0x4ed5c4['attributes']=_[_0x93ae('0x42')](_0x278aed[_0x93ae('0x3d')],qs[_0x93ae('0x43')](_0xcf130c[_0x93ae('0x40')][_0x93ae('0x43')]));_0x4ed5c4[_0x93ae('0x41')]=_0x4ed5c4['attributes'][_0x93ae('0x44')]?_0x4ed5c4[_0x93ae('0x41')]:_0x278aed[_0x93ae('0x3d')];if(_0xcf130c[_0x93ae('0x40')]['includeAll']){_0x4ed5c4['include']=[{'all':!![]}];}_0x4ed5c4=_[_0x93ae('0x4b')]({},_0x4ed5c4,_0xcf130c['options']);return db['ChatMessage'][_0x93ae('0x54')](_0x4ed5c4)[_0x93ae('0x33')](handleEntityNotFound(_0x89b64e,null))[_0x93ae('0x33')](respondWithResult(_0x89b64e,null))[_0x93ae('0x27')](handleError(_0x89b64e,null));};exports[_0x93ae('0x55')]=function(_0x31dea2,_0x5e4bd8){return db[_0x93ae('0x4c')][_0x93ae('0x55')](_0x31dea2[_0x93ae('0x56')],{})[_0x93ae('0x33')](respondWithResult(_0x5e4bd8,0xc9))[_0x93ae('0x27')](handleError(_0x5e4bd8,null));};exports[_0x93ae('0x32')]=function(_0xf762f8,_0x3b236b){if(_0xf762f8['body']['id']){delete _0xf762f8[_0x93ae('0x56')]['id'];}return db[_0x93ae('0x4c')][_0x93ae('0x54')]({'where':{'id':_0xf762f8[_0x93ae('0x53')]['id']}})[_0x93ae('0x33')](handleEntityNotFound(_0x3b236b,null))[_0x93ae('0x33')](saveUpdates(_0xf762f8['body'],null))[_0x93ae('0x33')](respondWithResult(_0x3b236b,null))['catch'](handleError(_0x3b236b,null));};exports['destroy']=function(_0xac862f,_0x55d7bd){return db[_0x93ae('0x4c')][_0x93ae('0x54')]({'where':{'id':_0xac862f[_0x93ae('0x53')]['id']}})[_0x93ae('0x33')](handleEntityNotFound(_0x55d7bd,null))[_0x93ae('0x33')](removeEntity(_0x55d7bd,null))[_0x93ae('0x27')](handleError(_0x55d7bd,null));};exports[_0x93ae('0x57')]=function(_0x42084d,_0x49f564){return db[_0x93ae('0x4c')][_0x93ae('0x57')]()[_0x93ae('0x33')](respondWithResult(_0x49f564,null))['catch'](handleError(_0x49f564,null));};var interaction_log=require(_0x93ae('0x13'))(_0x93ae('0x58'));exports[_0x93ae('0x59')]=function(_0x1666ef,_0x47930f,_0x35738a){var _0x162bf4={'agent':{},'channel':_0x93ae('0x5a')};if(_0x1666ef[_0x93ae('0x56')]['id']){delete _0x1666ef[_0x93ae('0x56')]['id'];}_0x1666ef[_0x93ae('0x56')][_0x93ae('0x5b')]=!![];_0x1666ef[_0x93ae('0x56')]['readAt']=moment()[_0x93ae('0x5c')](_0x93ae('0x5d'));_0x1666ef['body']['UserId']=_0x1666ef[_0x93ae('0x56')][_0x93ae('0x5e')]||_0x1666ef['user']['id'];_0x162bf4[_0x93ae('0x5f')]['id']=_0x1666ef['body'][_0x93ae('0x5e')];return db[_0x93ae('0x4c')][_0x93ae('0x54')]({'where':{'id':_0x1666ef[_0x93ae('0x53')]['id'],'UserId':null}})[_0x93ae('0x33')](handleEntityNotFound(_0x47930f,null))[_0x93ae('0x33')](saveUpdates(_0x1666ef[_0x93ae('0x56')],null))['then'](function(_0x4c4fd3){if(_0x4c4fd3){_0x162bf4[_0x93ae('0x25')]=_0x4c4fd3['get']({'plain':!![]});return db[_0x93ae('0x60')][_0x93ae('0x54')]({'where':{'id':_0x4c4fd3[_0x93ae('0x61')]}});}return null;})[_0x93ae('0x33')](handleEntityNotFound(_0x47930f,null))[_0x93ae('0x33')](function(_0x19eccf){if(_0x19eccf){return _0x19eccf['update']({'UserId':_0x1666ef['body']['UserId'],'read1stAt':_[_0x93ae('0x62')](_0x19eccf['read1stAt'])?moment()[_0x93ae('0x5c')](_0x93ae('0x5d')):undefined});}return null;})[_0x93ae('0x33')](function(_0x305b77){if(_0x305b77){_0x162bf4[_0x93ae('0x63')]=_0x305b77[_0x93ae('0x64')]({'plain':!![]});interaction_log[_0x93ae('0x1e')](_0x93ae('0x65'),_0x1666ef[_0x93ae('0x66')]['id'],_0x1666ef[_0x93ae('0x66')][_0x93ae('0x49')],_0x1666ef[_0x93ae('0x66')][_0x93ae('0x67')],_0x162bf4['interaction']['id'],_0x1666ef['body']?JSON[_0x93ae('0x22')](_0x1666ef[_0x93ae('0x56')]):_0x93ae('0x68'));return respondWithRpcPromise(_0x93ae('0x69'),_0x93ae('0x6a'),_0x162bf4);}return null;})[_0x93ae('0x33')](function(_0x2aed21){var _0x480a85=_0x93ae('0x6b')+_0x2aed21['message'][_0x93ae('0x6c')];return db[_0x93ae('0x6d')][_0x93ae('0x40')](_0x480a85,{'type':db[_0x93ae('0x6e')][_0x93ae('0x6f')][_0x93ae('0x70')],'raw':!![]})[_0x93ae('0x33')](function(_0x547284){return _0x547284;});})[_0x93ae('0x33')](function(_0x53e730){if(_0x53e730){_0x162bf4[_0x93ae('0x25')][_0x93ae('0x71')]=_0x53e730[0x0];if(!_0x1666ef[_0x93ae('0x56')][_0x93ae('0x5e')])return;return db[_0x93ae('0x72')]['find']({'where':{'id':_0x1666ef[_0x93ae('0x56')][_0x93ae('0x5e')],'role':'agent'},'attributes':['id',_0x93ae('0x49'),'fullname',_0x93ae('0x73'),_0x93ae('0x74')],'raw':!![]});}return null;})[_0x93ae('0x33')](function(_0x294aff){if(!_0x294aff)return null;_0x162bf4['message'][_0x93ae('0x5f')]=_0x294aff;return _0x162bf4;})[_0x93ae('0x33')](function(_0x39a40b){if(_0x39a40b){if(_0x1666ef['body'][_0x93ae('0x75')]){_0x162bf4[_0x93ae('0x25')][_0x93ae('0x76')]=util[_0x93ae('0x5c')]('SIP/%s',_0x1666ef[_0x93ae('0x66')][_0x93ae('0x49')]);_0x162bf4['message'][_0x93ae('0x77')]=_0x162bf4[_0x93ae('0x77')];_0x162bf4[_0x93ae('0x25')][_0x93ae('0x78')]=_0x162bf4[_0x93ae('0x77')];_0x162bf4['message'][_0x93ae('0x79')]=_0x93ae('0x59');return respondWithRpcPromise(_0x93ae('0x7a'),_0x93ae('0x7a'),{'event':_0x93ae('0x7b'),'message':_[_0x93ae('0x4b')](_0x162bf4[_0x93ae('0x25')],JSON[_0x93ae('0x7c')](_0x162bf4[_0x93ae('0x63')][_0x93ae('0x7d')]))},client9002)['then'](function(){return _0x162bf4;});}return _0x162bf4;}return null;})[_0x93ae('0x33')](respondWithResult(_0x47930f,null))[_0x93ae('0x27')](handleError(_0x47930f,null));};var interaction_log=require(_0x93ae('0x13'))(_0x93ae('0x58'));exports[_0x93ae('0x31')]=function(_0x2c27fd,_0x1a48ba,_0x2bf237){var _0x3e42a6={'agent':{},'channel':_0x93ae('0x5a')};if(_0x2c27fd[_0x93ae('0x56')]['id']){delete _0x2c27fd[_0x93ae('0x56')]['id'];}_0x2c27fd[_0x93ae('0x56')]['UserId']=_0x2c27fd[_0x93ae('0x56')][_0x93ae('0x5e')]||_0x2c27fd[_0x93ae('0x66')]['id'];_0x3e42a6[_0x93ae('0x5f')]['id']=_0x2c27fd['body']['UserId'];return db[_0x93ae('0x4c')][_0x93ae('0x54')]({'where':{'id':_0x2c27fd[_0x93ae('0x53')]['id'],'UserId':null}})[_0x93ae('0x33')](handleEntityNotFound(_0x1a48ba,null))[_0x93ae('0x33')](function(_0x4517df){if(_0x4517df){_0x3e42a6[_0x93ae('0x25')]=_0x4517df[_0x93ae('0x64')]({'plain':!![]});return db[_0x93ae('0x60')][_0x93ae('0x54')]({'where':{'id':_0x4517df[_0x93ae('0x61')]}});}return null;})[_0x93ae('0x33')](handleEntityNotFound(_0x1a48ba,null))[_0x93ae('0x33')](function(_0x2ec8e3){if(_0x2ec8e3){_0x3e42a6[_0x93ae('0x63')]=_0x2ec8e3[_0x93ae('0x64')]({'plain':!![]});interaction_log[_0x93ae('0x1e')](_0x93ae('0x7e'),_0x2c27fd[_0x93ae('0x66')]['id'],_0x2c27fd[_0x93ae('0x66')]['name'],_0x2c27fd['user'][_0x93ae('0x67')],_0x3e42a6[_0x93ae('0x63')]['id'],_0x2c27fd[_0x93ae('0x56')]?JSON['stringify'](_0x2c27fd[_0x93ae('0x56')]):'null');return respondWithRpcPromise(_0x93ae('0x7f'),_0x93ae('0x80'),_0x3e42a6);}return null;})[_0x93ae('0x33')](function(_0x27d015){var _0x357701=_0x93ae('0x6b')+_0x27d015[_0x93ae('0x25')]['ContactId'];return db['sequelize'][_0x93ae('0x40')](_0x357701,{'type':db[_0x93ae('0x6e')][_0x93ae('0x6f')]['SELECT'],'raw':!![]})[_0x93ae('0x33')](function(_0x3dd9f4){return _0x3dd9f4;});})[_0x93ae('0x33')](function(_0x4bb4fa){if(_0x4bb4fa){_0x3e42a6[_0x93ae('0x25')]['contact']=_0x4bb4fa[0x0];if(!_0x2c27fd[_0x93ae('0x56')]['UserId'])return;return db[_0x93ae('0x72')][_0x93ae('0x54')]({'where':{'id':_0x2c27fd[_0x93ae('0x56')][_0x93ae('0x5e')],'role':_0x93ae('0x5f')},'attributes':['id',_0x93ae('0x49'),_0x93ae('0x81'),_0x93ae('0x73'),'internal'],'raw':!![]});}return null;})[_0x93ae('0x33')](function(_0x252e11){if(!_0x252e11)return null;_0x3e42a6[_0x93ae('0x25')][_0x93ae('0x5f')]=_0x252e11;return _0x3e42a6;})[_0x93ae('0x33')](function(_0x17f65b){if(_0x17f65b){_0x17f65b[_0x93ae('0x25')][_0x93ae('0x76')]=util[_0x93ae('0x5c')]('SIP/%s',_0x2c27fd['user'][_0x93ae('0x49')]);_0x17f65b[_0x93ae('0x25')][_0x93ae('0x77')]=_0x3e42a6['channel'];_0x17f65b[_0x93ae('0x25')]['motionChannel']=_0x3e42a6['channel'];_0x17f65b[_0x93ae('0x25')][_0x93ae('0x79')]=_0x93ae('0x31');respondWithRpcPromise('EventManager',_0x93ae('0x7a'),{'event':_0x93ae('0x82'),'message':_[_0x93ae('0x4b')](_0x3e42a6['message'],JSON[_0x93ae('0x7c')](_0x3e42a6[_0x93ae('0x63')]['formData']))},client9002);return _0x3e42a6;}return null;})[_0x93ae('0x33')](respondWithResult(_0x1a48ba,null))[_0x93ae('0x27')](handleError(_0x1a48ba,null));};
\ No newline at end of file