Built motion from commit a61a4a20.|2.5.46
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index c29209b..4300ae3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1ce5=['update','body','describe','chat-interactions','accept','chat','read','readAt','format','UserId','user','Contact','ChatInteraction','isNil','YYYY-MM-DD\x20HH:mm:ss','interaction','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','acceptMessage','manual','interface','SIP/%s','EventManager','acceptmessage','parse','formData','../../config/logger','agent','ChatInteractionId','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','channel','event','rejectmessage','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../mysqldb','redis','localhost','socket.io-emitter','./chatMessage.socket','jayson/promise','client','http','test','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','end','json','count','offset','set','Content-Range','apply','reject','save','destroy','name','send','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','limit','order','sort','pick','filter','where','options','include','findAll','show','params','includeAll','merge','find','create'];(function(_0xbd5cd8,_0x1c4828){var _0x3af56d=function(_0x2be1a2){while(--_0x2be1a2){_0xbd5cd8['push'](_0xbd5cd8['shift']());}};_0x3af56d(++_0x1c4828);}(_0x1ce5,0x1a8));var _0x51ce=function(_0x255d5b,_0x4f6f35){_0x255d5b=_0x255d5b-0x0;var _0x3e141a=_0x1ce5[_0x255d5b];return _0x3e141a;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x51ce('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x51ce('0x1'));var rp=require(_0x51ce('0x2'));var moment=require(_0x51ce('0x3'));var BPromise=require(_0x51ce('0x4'));var Mustache=require(_0x51ce('0x5'));var util=require(_0x51ce('0x6'));var path=require(_0x51ce('0x7'));var sox=require(_0x51ce('0x8'));var csv=require(_0x51ce('0x9'));var ejs=require(_0x51ce('0xa'));var fs=require('fs');var _=require(_0x51ce('0xb'));var squel=require(_0x51ce('0xc'));var crypto=require(_0x51ce('0xd'));var jsforce=require(_0x51ce('0xe'));var deskjs=require(_0x51ce('0xf'));var toCsv=require(_0x51ce('0x9'));var querystring=require(_0x51ce('0x10'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x51ce('0x11'));var qs=require(_0x51ce('0x12'));var as=require(_0x51ce('0x13'));var hardwareService=require(_0x51ce('0x14'));var logger=require('../../config/logger')('api');var utils=require(_0x51ce('0x15'));var config=require(_0x51ce('0x16'));var db=require(_0x51ce('0x17'))['db'];config[_0x51ce('0x18')]=_['defaults'](config[_0x51ce('0x18')],{'host':_0x51ce('0x19'),'port':0x18eb});var socket=require(_0x51ce('0x1a'))(new Redis(config['redis']));require(_0x51ce('0x1b'))['register'](socket);var jayson=require(_0x51ce('0x1c'));var client=jayson[_0x51ce('0x1d')][_0x51ce('0x1e')]({'port':0x232c});var client9002=jayson[_0x51ce('0x1d')][_0x51ce('0x1e')]({'port':0x232a});function checkPasswordPattern(_0x5e4470,_0x337eb6,_0x33c48d){if(_0x33c48d){var _0x4afdc0=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x4afdc0[_0x51ce('0x1f')](_0x337eb6)){return _0x5e4470;}else{throw new db['Sequelize'][(_0x51ce('0x20'))](_0x51ce('0x21'));}}else{return _0x5e4470;}}function respondWithRpcPromise(_0x3e38ec,_0x514bee,_0x60be02,_0x553c5d){return new BPromise(function(_0x22fc8e,_0x1a5322){var _0x18606a=_0x553c5d||client;return _0x18606a[_0x51ce('0x22')](_0x3e38ec,_0x60be02)[_0x51ce('0x23')](function(_0x5bb26c){logger[_0x51ce('0x24')](_0x51ce('0x25'),_0x514bee,_0x51ce('0x26'));logger[_0x51ce('0x27')](_0x51ce('0x28'),_0x514bee,_0x51ce('0x26'),JSON[_0x51ce('0x29')](_0x5bb26c));if(_0x5bb26c[_0x51ce('0x2a')]){if(_0x5bb26c['error'][_0x51ce('0x2b')]===0x1f4){logger[_0x51ce('0x2a')]('ChatMessage,\x20%s,\x20%s',_0x514bee,_0x5bb26c[_0x51ce('0x2a')]['message']);return _0x1a5322(_0x5bb26c[_0x51ce('0x2a')][_0x51ce('0x2c')]);}logger['error'](_0x51ce('0x25'),_0x514bee,_0x5bb26c[_0x51ce('0x2a')][_0x51ce('0x2c')]);return _0x22fc8e(_0x5bb26c[_0x51ce('0x2a')][_0x51ce('0x2c')]);}else{logger[_0x51ce('0x24')]('ChatMessage,\x20%s,\x20%s',_0x514bee,_0x51ce('0x26'));_0x22fc8e(_0x5bb26c[_0x51ce('0x2d')][_0x51ce('0x2c')]);}})[_0x51ce('0x2e')](function(_0x445b7d){logger[_0x51ce('0x2a')]('ChatMessage,\x20%s,\x20%s',_0x514bee,_0x445b7d);_0x1a5322(_0x445b7d);});});}function respondWithStatusCode(_0xa3923c,_0xea5a7f){_0xea5a7f=_0xea5a7f||0xcc;return function(_0x286eb7){if(_0x286eb7){return _0xa3923c[_0x51ce('0x2f')](_0xea5a7f);}return _0xa3923c[_0x51ce('0x30')](_0xea5a7f)[_0x51ce('0x31')]();};}function respondWithResult(_0x2f2721,_0x4cf22c){_0x4cf22c=_0x4cf22c||0xc8;return function(_0x25ec6b){if(_0x25ec6b){return _0x2f2721[_0x51ce('0x30')](_0x4cf22c)[_0x51ce('0x32')](_0x25ec6b);}};}function respondWithFilteredResult(_0xc1b048,_0x5ead3a){return function(_0x2efa68){if(_0x2efa68){var _0x10ba1f=_0x2efa68[_0x51ce('0x33')],_0x586430=_0x5ead3a[_0x51ce('0x34')],_0x28dc88=_0x5ead3a[_0x51ce('0x34')]+_0x5ead3a['limit'],_0x5df94c;if(_0x28dc88>=_0x10ba1f){_0x28dc88=_0x10ba1f;_0x5df94c=0xc8;}else{_0x5df94c=0xce;}_0xc1b048['status'](_0x5df94c);return _0xc1b048[_0x51ce('0x35')](_0x51ce('0x36'),_0x586430+'-'+_0x28dc88+'/'+_0x10ba1f)[_0x51ce('0x32')](_0x2efa68);}return null;};}function patchUpdates(_0x36d7f8){return function(_0x2fa4ef){try{jsonpatch[_0x51ce('0x37')](_0x2fa4ef,_0x36d7f8,!![]);}catch(_0x65a301){return BPromise[_0x51ce('0x38')](_0x65a301);}return _0x2fa4ef[_0x51ce('0x39')]();};}function saveUpdates(_0x1c4490,_0x432e9b){return function(_0x44abde){if(_0x44abde){return _0x44abde['update'](_0x1c4490)[_0x51ce('0x23')](function(_0x454659){return _0x454659;});}return null;};}function removeEntity(_0x3e7a90,_0x247847){return function(_0x2a67dd){if(_0x2a67dd){return _0x2a67dd[_0x51ce('0x3a')]()[_0x51ce('0x23')](function(){_0x3e7a90[_0x51ce('0x30')](0xcc)[_0x51ce('0x31')]();});}};}function handleEntityNotFound(_0x528436,_0x6c225a){return function(_0x598043){if(!_0x598043){_0x528436[_0x51ce('0x2f')](0x194);}return _0x598043;};}function handleError(_0x10e45e,_0x1f0567){_0x1f0567=_0x1f0567||0x1f4;return function(_0x2df7f5){logger[_0x51ce('0x2a')](_0x2df7f5['stack']);if(_0x2df7f5['name']){delete _0x2df7f5[_0x51ce('0x3b')];}_0x10e45e[_0x51ce('0x30')](_0x1f0567)[_0x51ce('0x3c')](_0x2df7f5);};}exports[_0x51ce('0x3d')]=function(_0x651dae,_0xdcfbf5){var _0x4bb548={},_0x4c34a5={},_0x56badd={'count':0x0,'rows':[]};var _0x1ddcbd=_[_0x51ce('0x3e')](db[_0x51ce('0x3f')][_0x51ce('0x40')],function(_0x475dba){return{'name':_0x475dba[_0x51ce('0x41')],'type':_0x475dba[_0x51ce('0x42')][_0x51ce('0x43')]};});_0x4c34a5[_0x51ce('0x44')]=_['map'](_0x1ddcbd,'name');_0x4c34a5[_0x51ce('0x45')]=_[_0x51ce('0x46')](_0x651dae[_0x51ce('0x45')]);_0x4c34a5[_0x51ce('0x47')]=_[_0x51ce('0x48')](_0x4c34a5[_0x51ce('0x44')],_0x4c34a5['query']);_0x4bb548[_0x51ce('0x49')]=_['intersection'](_0x4c34a5[_0x51ce('0x44')],qs[_0x51ce('0x4a')](_0x651dae['query'][_0x51ce('0x4a')]));_0x4bb548[_0x51ce('0x49')]=_0x4bb548[_0x51ce('0x49')][_0x51ce('0x4b')]?_0x4bb548['attributes']:_0x4c34a5[_0x51ce('0x44')];if(!_0x651dae['query'][_0x51ce('0x4c')]('nolimit')){_0x4bb548[_0x51ce('0x4d')]=qs[_0x51ce('0x4d')](_0x651dae[_0x51ce('0x45')][_0x51ce('0x4d')]);_0x4bb548[_0x51ce('0x34')]=qs['offset'](_0x651dae['query'][_0x51ce('0x34')]);}_0x4bb548[_0x51ce('0x4e')]=qs[_0x51ce('0x4f')](_0x651dae[_0x51ce('0x45')][_0x51ce('0x4f')]);_0x4bb548['where']=qs['filters'](_[_0x51ce('0x50')](_0x651dae[_0x51ce('0x45')],_0x4c34a5[_0x51ce('0x47')]));if(_0x651dae['query'][_0x51ce('0x51')]){_0x4bb548[_0x51ce('0x52')]=_['merge'](_0x4bb548[_0x51ce('0x52')],{'$or':_['map'](_0x1ddcbd,function(_0x5c6bd8){if(_0x5c6bd8['type']!=='VIRTUAL'){var _0xecf34e={};_0xecf34e[_0x5c6bd8[_0x51ce('0x3b')]]={'$like':'%'+_0x651dae['query'][_0x51ce('0x51')]+'%'};return _0xecf34e;}})});}_0x4bb548=_['merge']({},_0x4bb548,_0x651dae[_0x51ce('0x53')]);var _0x3d18d5={'where':_0x4bb548[_0x51ce('0x52')]};return db[_0x51ce('0x3f')][_0x51ce('0x33')](_0x3d18d5)[_0x51ce('0x23')](function(_0x419e9d){_0x56badd[_0x51ce('0x33')]=_0x419e9d;if(_0x651dae[_0x51ce('0x45')]['includeAll']){_0x4bb548[_0x51ce('0x54')]=[{'all':!![]}];}return db[_0x51ce('0x3f')][_0x51ce('0x55')](_0x4bb548);})[_0x51ce('0x23')](function(_0x406450){_0x56badd['rows']=_0x406450;return _0x56badd;})[_0x51ce('0x23')](respondWithFilteredResult(_0xdcfbf5,_0x4bb548))[_0x51ce('0x2e')](handleError(_0xdcfbf5,null));};exports[_0x51ce('0x56')]=function(_0x2f5536,_0x50200c){var _0x3cd8e4={'raw':!![],'where':{'id':_0x2f5536[_0x51ce('0x57')]['id']}},_0x5b40e1={};_0x5b40e1['model']=_[_0x51ce('0x46')](db[_0x51ce('0x3f')][_0x51ce('0x40')]);_0x5b40e1['query']=_[_0x51ce('0x46')](_0x2f5536[_0x51ce('0x45')]);_0x5b40e1[_0x51ce('0x47')]=_[_0x51ce('0x48')](_0x5b40e1['model'],_0x5b40e1[_0x51ce('0x45')]);_0x3cd8e4['attributes']=_[_0x51ce('0x48')](_0x5b40e1[_0x51ce('0x44')],qs[_0x51ce('0x4a')](_0x2f5536[_0x51ce('0x45')][_0x51ce('0x4a')]));_0x3cd8e4['attributes']=_0x3cd8e4[_0x51ce('0x49')]['length']?_0x3cd8e4['attributes']:_0x5b40e1[_0x51ce('0x44')];if(_0x2f5536['query'][_0x51ce('0x58')]){_0x3cd8e4[_0x51ce('0x54')]=[{'all':!![]}];}_0x3cd8e4=_[_0x51ce('0x59')]({},_0x3cd8e4,_0x2f5536[_0x51ce('0x53')]);return db[_0x51ce('0x3f')][_0x51ce('0x5a')](_0x3cd8e4)[_0x51ce('0x23')](handleEntityNotFound(_0x50200c,null))[_0x51ce('0x23')](respondWithResult(_0x50200c,null))[_0x51ce('0x2e')](handleError(_0x50200c,null));};exports[_0x51ce('0x5b')]=function(_0x7d6402,_0x76942b){return db[_0x51ce('0x3f')]['create'](_0x7d6402['body'],{})['then'](respondWithResult(_0x76942b,0xc9))['catch'](handleError(_0x76942b,null));};exports[_0x51ce('0x5c')]=function(_0x535d35,_0x480371){if(_0x535d35['body']['id']){delete _0x535d35[_0x51ce('0x5d')]['id'];}return db[_0x51ce('0x3f')][_0x51ce('0x5a')]({'where':{'id':_0x535d35[_0x51ce('0x57')]['id']}})[_0x51ce('0x23')](handleEntityNotFound(_0x480371,null))[_0x51ce('0x23')](saveUpdates(_0x535d35[_0x51ce('0x5d')],null))[_0x51ce('0x23')](respondWithResult(_0x480371,null))[_0x51ce('0x2e')](handleError(_0x480371,null));};exports[_0x51ce('0x3a')]=function(_0x3aac2e,_0x30ba00){return db[_0x51ce('0x3f')][_0x51ce('0x5a')]({'where':{'id':_0x3aac2e[_0x51ce('0x57')]['id']}})['then'](handleEntityNotFound(_0x30ba00,null))[_0x51ce('0x23')](removeEntity(_0x30ba00,null))[_0x51ce('0x2e')](handleError(_0x30ba00,null));};exports[_0x51ce('0x5e')]=function(_0x1558ea,_0xc3fad8){return db[_0x51ce('0x3f')][_0x51ce('0x5e')]()[_0x51ce('0x23')](respondWithResult(_0xc3fad8,null))[_0x51ce('0x2e')](handleError(_0xc3fad8,null));};var interaction_log=require('../../config/logger')(_0x51ce('0x5f'));exports[_0x51ce('0x60')]=function(_0x16f877,_0x519c52,_0x8959ff){var _0x5d79c2={'channel':_0x51ce('0x61')};if(_0x16f877['body']['id']){delete _0x16f877[_0x51ce('0x5d')]['id'];}_0x16f877[_0x51ce('0x5d')][_0x51ce('0x62')]=!![];_0x16f877[_0x51ce('0x5d')][_0x51ce('0x63')]=moment()[_0x51ce('0x64')]('YYYY-MM-DD\x20HH:mm:ss');_0x16f877['body'][_0x51ce('0x65')]=_0x16f877[_0x51ce('0x5d')][_0x51ce('0x65')]||_0x16f877[_0x51ce('0x66')]['id'];return db[_0x51ce('0x3f')][_0x51ce('0x5a')]({'where':{'id':_0x16f877[_0x51ce('0x57')]['id'],'UserId':null},'include':[{'model':db['CmContact'],'as':_0x51ce('0x67')}]})['then'](handleEntityNotFound(_0x519c52,null))[_0x51ce('0x23')](saveUpdates(_0x16f877[_0x51ce('0x5d')],null))[_0x51ce('0x23')](function(_0x4bb821){if(_0x4bb821){_0x5d79c2[_0x51ce('0x2c')]=_0x4bb821['get']({'plain':!![]});return db[_0x51ce('0x68')][_0x51ce('0x5a')]({'where':{'id':_0x4bb821['ChatInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x519c52,null))[_0x51ce('0x23')](function(_0x2e6e14){if(_0x2e6e14){return _0x2e6e14[_0x51ce('0x5c')]({'UserId':_0x16f877[_0x51ce('0x5d')]['UserId'],'read1stAt':_[_0x51ce('0x69')](_0x2e6e14['read1stAt'])?moment()['format'](_0x51ce('0x6a')):undefined});}return null;})[_0x51ce('0x23')](function(_0x3eb13e){if(_0x3eb13e){_0x5d79c2[_0x51ce('0x6b')]=_0x3eb13e[_0x51ce('0x6c')]({'plain':!![]});interaction_log[_0x51ce('0x24')](_0x51ce('0x6d'),_0x16f877[_0x51ce('0x66')]['id'],_0x16f877[_0x51ce('0x66')][_0x51ce('0x3b')],_0x16f877[_0x51ce('0x66')][_0x51ce('0x6e')],_0x5d79c2[_0x51ce('0x6b')]['id'],_0x16f877[_0x51ce('0x5d')]?JSON[_0x51ce('0x29')](_0x16f877['body']):_0x51ce('0x6f'));return respondWithRpcPromise('AcceptMessage',_0x51ce('0x70'),_0x5d79c2);}return null;})[_0x51ce('0x23')](function(_0x1d08c5){if(_0x1d08c5){if(_0x16f877[_0x51ce('0x5d')][_0x51ce('0x71')]){_0x5d79c2[_0x51ce('0x2c')][_0x51ce('0x72')]=util[_0x51ce('0x64')](_0x51ce('0x73'),_0x16f877[_0x51ce('0x66')]['name']);_0x5d79c2['message']['channel']=_0x5d79c2['channel'];_0x5d79c2[_0x51ce('0x2c')]['event']=_0x51ce('0x60');return respondWithRpcPromise('EventManager',_0x51ce('0x74'),{'event':_0x51ce('0x75'),'message':_[_0x51ce('0x59')](_0x5d79c2[_0x51ce('0x2c')],JSON[_0x51ce('0x76')](_0x5d79c2[_0x51ce('0x6b')][_0x51ce('0x77')]))},client9002)[_0x51ce('0x23')](function(){return _0x5d79c2;});}return _0x5d79c2;}return null;})[_0x51ce('0x23')](respondWithResult(_0x519c52,null))[_0x51ce('0x2e')](handleError(_0x519c52,null));};var interaction_log=require(_0x51ce('0x78'))(_0x51ce('0x5f'));exports[_0x51ce('0x38')]=function(_0x39f048,_0x4a9c94,_0x488d0c){var _0x188d3d={'agent':{},'channel':_0x51ce('0x61')};if(_0x39f048[_0x51ce('0x5d')]['id']){delete _0x39f048[_0x51ce('0x5d')]['id'];}_0x39f048[_0x51ce('0x5d')][_0x51ce('0x65')]=_0x39f048[_0x51ce('0x5d')][_0x51ce('0x65')]||_0x39f048[_0x51ce('0x66')]['id'];_0x188d3d[_0x51ce('0x79')]['id']=_0x39f048[_0x51ce('0x5d')][_0x51ce('0x65')];return db[_0x51ce('0x3f')]['find']({'where':{'id':_0x39f048[_0x51ce('0x57')]['id'],'UserId':null}})[_0x51ce('0x23')](handleEntityNotFound(_0x4a9c94,null))[_0x51ce('0x23')](function(_0x1f9f40){if(_0x1f9f40){_0x188d3d['message']=_0x1f9f40[_0x51ce('0x6c')]({'plain':!![]});return db['ChatInteraction'][_0x51ce('0x5a')]({'where':{'id':_0x1f9f40[_0x51ce('0x7a')]}});}return null;})[_0x51ce('0x23')](handleEntityNotFound(_0x4a9c94,null))[_0x51ce('0x23')](function(_0x2c9d6c){if(_0x2c9d6c){_0x188d3d[_0x51ce('0x6b')]=_0x2c9d6c['get']({'plain':!![]});interaction_log[_0x51ce('0x24')](_0x51ce('0x7b'),_0x39f048[_0x51ce('0x66')]['id'],_0x39f048['user'][_0x51ce('0x3b')],_0x39f048[_0x51ce('0x66')]['role'],_0x188d3d[_0x51ce('0x6b')]['id'],_0x39f048[_0x51ce('0x5d')]?JSON[_0x51ce('0x29')](_0x39f048[_0x51ce('0x5d')]):'null');return respondWithRpcPromise(_0x51ce('0x7c'),_0x51ce('0x7d'),_0x188d3d);}return null;})[_0x51ce('0x23')](function(_0x3eab24){if(_0x3eab24){_0x3eab24[_0x51ce('0x2c')][_0x51ce('0x72')]=util[_0x51ce('0x64')](_0x51ce('0x73'),_0x39f048[_0x51ce('0x66')][_0x51ce('0x3b')]);_0x3eab24['message']['channel']=_0x188d3d[_0x51ce('0x7e')];_0x3eab24[_0x51ce('0x2c')][_0x51ce('0x7f')]=_0x51ce('0x38');respondWithRpcPromise(_0x51ce('0x74'),_0x51ce('0x74'),{'event':_0x51ce('0x80'),'message':_0x3eab24[_0x51ce('0x2c')]},client9002);return _0x188d3d;}return null;})['then'](respondWithResult(_0x4a9c94,null))[_0x51ce('0x2e')](handleError(_0x4a9c94,null));};
\ No newline at end of file
+var _0x85c6=['accept','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','ChatInteractionId','read1stAt','interaction','get','role','null','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','Sequelize','QueryTypes','SELECT','contact','User','agent','internal','SIP/%s','channel','motionChannel','event','EventManager','formData','chat','RejectMessage','ContactId','fullname','email','interface','reject','parse','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','client','http','request','then','info','ChatMessage,\x20%s,\x20%s','ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','error','message','result','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','save','sendStatus','stack','name','send','index','map','ChatMessage','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','sort','where','filter','merge','VIRTUAL','include','findAll','catch','show','rawAttributes','options','find','create','update','body','params','destroy','describe','chat-interactions'];(function(_0x37de6e,_0x2d81e7){var _0x2c63a3=function(_0x4ba309){while(--_0x4ba309){_0x37de6e['push'](_0x37de6e['shift']());}};_0x2c63a3(++_0x2d81e7);}(_0x85c6,0x19f));var _0x685c=function(_0x506b1b,_0x4888d6){_0x506b1b=_0x506b1b-0x0;var _0x489d65=_0x85c6[_0x506b1b];return _0x489d65;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x685c('0x0'));var zipdir=require(_0x685c('0x1'));var jsonpatch=require(_0x685c('0x2'));var rp=require(_0x685c('0x3'));var moment=require(_0x685c('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x685c('0x5'));var util=require(_0x685c('0x6'));var path=require(_0x685c('0x7'));var sox=require(_0x685c('0x8'));var csv=require(_0x685c('0x9'));var ejs=require(_0x685c('0xa'));var fs=require('fs');var fs_extra=require(_0x685c('0xb'));var _=require(_0x685c('0xc'));var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x685c('0xd'));var toCsv=require(_0x685c('0x9'));var querystring=require(_0x685c('0xe'));var Papa=require(_0x685c('0xf'));var Redis=require(_0x685c('0x10'));var authService=require(_0x685c('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x685c('0x12'));var hardwareService=require(_0x685c('0x13'));var logger=require('../../config/logger')(_0x685c('0x14'));var utils=require('../../config/utils');var config=require(_0x685c('0x15'));var licenseUtil=require(_0x685c('0x16'));var db=require('../../mysqldb')['db'];config[_0x685c('0x17')]=_[_0x685c('0x18')](config['redis'],{'host':_0x685c('0x19'),'port':0x18eb});var socket=require(_0x685c('0x1a'))(new Redis(config[_0x685c('0x17')]));require(_0x685c('0x1b'))[_0x685c('0x1c')](socket);var jayson=require('jayson/promise');var client=jayson[_0x685c('0x1d')][_0x685c('0x1e')]({'port':0x232c});var client9002=jayson[_0x685c('0x1d')]['http']({'port':0x232a});function respondWithRpcPromise(_0x408a41,_0x3da04e,_0x102010,_0x4c6a0c){return new BPromise(function(_0x198390,_0x474204){var _0x23997c=_0x4c6a0c||client;return _0x23997c[_0x685c('0x1f')](_0x408a41,_0x102010)[_0x685c('0x20')](function(_0x51058f){logger[_0x685c('0x21')](_0x685c('0x22'),_0x3da04e,'request\x20sent');logger['debug'](_0x685c('0x23'),_0x3da04e,_0x685c('0x24'),JSON['stringify'](_0x51058f));if(_0x51058f['error']){if(_0x51058f[_0x685c('0x25')]['code']===0x1f4){logger['error'](_0x685c('0x22'),_0x3da04e,_0x51058f['error'][_0x685c('0x26')]);return _0x474204(_0x51058f[_0x685c('0x25')][_0x685c('0x26')]);}logger[_0x685c('0x25')]('ChatMessage,\x20%s,\x20%s',_0x3da04e,_0x51058f[_0x685c('0x25')][_0x685c('0x26')]);return _0x198390(_0x51058f[_0x685c('0x25')][_0x685c('0x26')]);}else{logger['info'](_0x685c('0x22'),_0x3da04e,_0x685c('0x24'));_0x198390(_0x51058f[_0x685c('0x27')][_0x685c('0x26')]);}})['catch'](function(_0x2280b0){logger[_0x685c('0x25')](_0x685c('0x22'),_0x3da04e,_0x2280b0);_0x474204(_0x2280b0);});});}function respondWithStatusCode(_0x3d7590,_0x227ed0){_0x227ed0=_0x227ed0||0xcc;return function(_0x2b84bd){if(_0x2b84bd){return _0x3d7590['sendStatus'](_0x227ed0);}return _0x3d7590[_0x685c('0x28')](_0x227ed0)[_0x685c('0x29')]();};}function respondWithResult(_0x3a74c8,_0x4b3e1d){_0x4b3e1d=_0x4b3e1d||0xc8;return function(_0x4a1d6b){if(_0x4a1d6b){return _0x3a74c8[_0x685c('0x28')](_0x4b3e1d)[_0x685c('0x2a')](_0x4a1d6b);}};}function respondWithFilteredResult(_0x4158a5,_0x27c514){return function(_0x1f7a1a){if(_0x1f7a1a){var _0x51fe76=typeof _0x27c514[_0x685c('0x2b')]==='undefined'&&typeof _0x27c514[_0x685c('0x2c')]===_0x685c('0x2d');var _0x4810b8=_0x1f7a1a[_0x685c('0x2e')];var _0x27833f=_0x51fe76?0x0:_0x27c514['offset'];var _0x27f2c7=_0x51fe76?_0x1f7a1a[_0x685c('0x2e')]:_0x27c514['offset']+_0x27c514[_0x685c('0x2c')];var _0x183962;if(_0x27f2c7>=_0x4810b8){_0x27f2c7=_0x4810b8;_0x183962=0xc8;}else{_0x183962=0xce;}_0x4158a5[_0x685c('0x28')](_0x183962);return _0x4158a5[_0x685c('0x2f')](_0x685c('0x30'),_0x27833f+'-'+_0x27f2c7+'/'+_0x4810b8)[_0x685c('0x2a')](_0x1f7a1a);}return null;};}function patchUpdates(_0x59169d){return function(_0x3b6358){try{jsonpatch[_0x685c('0x31')](_0x3b6358,_0x59169d,!![]);}catch(_0x416e6d){return BPromise['reject'](_0x416e6d);}return _0x3b6358[_0x685c('0x32')]();};}function saveUpdates(_0x8e7123,_0x25c731){return function(_0x4caa74){if(_0x4caa74){return _0x4caa74['update'](_0x8e7123)[_0x685c('0x20')](function(_0x3dc3ef){return _0x3dc3ef;});}return null;};}function removeEntity(_0x47f8af,_0x9670aa){return function(_0x206086){if(_0x206086){return _0x206086['destroy']()[_0x685c('0x20')](function(){_0x47f8af[_0x685c('0x28')](0xcc)[_0x685c('0x29')]();});}};}function handleEntityNotFound(_0x569ea2,_0x27527f){return function(_0x497d4a){if(!_0x497d4a){_0x569ea2[_0x685c('0x33')](0x194);}return _0x497d4a;};}function handleError(_0x450e36,_0x28f3b1){_0x28f3b1=_0x28f3b1||0x1f4;return function(_0x4df849){logger[_0x685c('0x25')](_0x4df849[_0x685c('0x34')]);if(_0x4df849[_0x685c('0x35')]){delete _0x4df849[_0x685c('0x35')];}_0x450e36['status'](_0x28f3b1)[_0x685c('0x36')](_0x4df849);};}exports[_0x685c('0x37')]=function(_0x4567e9,_0x9eafbb){var _0x3719db={},_0x2c5dfe={},_0x2947d1={'count':0x0,'rows':[]};var _0x4856f7=_[_0x685c('0x38')](db[_0x685c('0x39')]['rawAttributes'],function(_0x277c41){return{'name':_0x277c41[_0x685c('0x3a')],'type':_0x277c41[_0x685c('0x3b')][_0x685c('0x3c')]};});_0x2c5dfe[_0x685c('0x3d')]=_['map'](_0x4856f7,_0x685c('0x35'));_0x2c5dfe[_0x685c('0x3e')]=_[_0x685c('0x3f')](_0x4567e9[_0x685c('0x3e')]);_0x2c5dfe[_0x685c('0x40')]=_[_0x685c('0x41')](_0x2c5dfe[_0x685c('0x3d')],_0x2c5dfe['query']);_0x3719db[_0x685c('0x42')]=_['intersection'](_0x2c5dfe[_0x685c('0x3d')],qs[_0x685c('0x43')](_0x4567e9[_0x685c('0x3e')][_0x685c('0x43')]));_0x3719db[_0x685c('0x42')]=_0x3719db[_0x685c('0x42')][_0x685c('0x44')]?_0x3719db[_0x685c('0x42')]:_0x2c5dfe[_0x685c('0x3d')];if(!_0x4567e9[_0x685c('0x3e')]['hasOwnProperty'](_0x685c('0x45'))){_0x3719db['limit']=qs[_0x685c('0x2c')](_0x4567e9['query']['limit']);_0x3719db[_0x685c('0x2b')]=qs[_0x685c('0x2b')](_0x4567e9[_0x685c('0x3e')][_0x685c('0x2b')]);}_0x3719db['order']=qs[_0x685c('0x46')](_0x4567e9[_0x685c('0x3e')][_0x685c('0x46')]);_0x3719db[_0x685c('0x47')]=qs[_0x685c('0x40')](_['pick'](_0x4567e9['query'],_0x2c5dfe[_0x685c('0x40')]),_0x4856f7);if(_0x4567e9[_0x685c('0x3e')][_0x685c('0x48')]){_0x3719db['where']=_[_0x685c('0x49')](_0x3719db[_0x685c('0x47')],{'$or':_['map'](_0x4856f7,function(_0x5abe96){if(_0x5abe96[_0x685c('0x3b')]!==_0x685c('0x4a')){var _0x490608={};_0x490608[_0x5abe96[_0x685c('0x35')]]={'$like':'%'+_0x4567e9[_0x685c('0x3e')]['filter']+'%'};return _0x490608;}})});}_0x3719db=_[_0x685c('0x49')]({},_0x3719db,_0x4567e9['options']);var _0x2279e4={'where':_0x3719db[_0x685c('0x47')]};return db[_0x685c('0x39')][_0x685c('0x2e')](_0x2279e4)[_0x685c('0x20')](function(_0x58bc9a){_0x2947d1[_0x685c('0x2e')]=_0x58bc9a;if(_0x4567e9['query']['includeAll']){_0x3719db[_0x685c('0x4b')]=[{'all':!![]}];}return db[_0x685c('0x39')][_0x685c('0x4c')](_0x3719db);})[_0x685c('0x20')](function(_0x3e94f8){_0x2947d1['rows']=_0x3e94f8;return _0x2947d1;})[_0x685c('0x20')](respondWithFilteredResult(_0x9eafbb,_0x3719db))[_0x685c('0x4d')](handleError(_0x9eafbb,null));};exports[_0x685c('0x4e')]=function(_0x1f7334,_0x4a2706){var _0x136065={'raw':!![],'where':{'id':_0x1f7334['params']['id']}},_0x22675e={};_0x22675e[_0x685c('0x3d')]=_[_0x685c('0x3f')](db[_0x685c('0x39')][_0x685c('0x4f')]);_0x22675e[_0x685c('0x3e')]=_['keys'](_0x1f7334[_0x685c('0x3e')]);_0x22675e[_0x685c('0x40')]=_['intersection'](_0x22675e['model'],_0x22675e[_0x685c('0x3e')]);_0x136065[_0x685c('0x42')]=_[_0x685c('0x41')](_0x22675e[_0x685c('0x3d')],qs[_0x685c('0x43')](_0x1f7334[_0x685c('0x3e')][_0x685c('0x43')]));_0x136065[_0x685c('0x42')]=_0x136065[_0x685c('0x42')][_0x685c('0x44')]?_0x136065[_0x685c('0x42')]:_0x22675e[_0x685c('0x3d')];if(_0x1f7334[_0x685c('0x3e')]['includeAll']){_0x136065[_0x685c('0x4b')]=[{'all':!![]}];}_0x136065=_['merge']({},_0x136065,_0x1f7334[_0x685c('0x50')]);return db[_0x685c('0x39')][_0x685c('0x51')](_0x136065)[_0x685c('0x20')](handleEntityNotFound(_0x4a2706,null))[_0x685c('0x20')](respondWithResult(_0x4a2706,null))[_0x685c('0x4d')](handleError(_0x4a2706,null));};exports[_0x685c('0x52')]=function(_0x4525c1,_0x36524f){return db[_0x685c('0x39')]['create'](_0x4525c1['body'],{})[_0x685c('0x20')](respondWithResult(_0x36524f,0xc9))[_0x685c('0x4d')](handleError(_0x36524f,null));};exports[_0x685c('0x53')]=function(_0x5821f1,_0x1629f1){if(_0x5821f1[_0x685c('0x54')]['id']){delete _0x5821f1['body']['id'];}return db[_0x685c('0x39')][_0x685c('0x51')]({'where':{'id':_0x5821f1[_0x685c('0x55')]['id']}})['then'](handleEntityNotFound(_0x1629f1,null))['then'](saveUpdates(_0x5821f1[_0x685c('0x54')],null))[_0x685c('0x20')](respondWithResult(_0x1629f1,null))[_0x685c('0x4d')](handleError(_0x1629f1,null));};exports[_0x685c('0x56')]=function(_0x50c18d,_0x2f55a4){return db[_0x685c('0x39')][_0x685c('0x51')]({'where':{'id':_0x50c18d[_0x685c('0x55')]['id']}})['then'](handleEntityNotFound(_0x2f55a4,null))[_0x685c('0x20')](removeEntity(_0x2f55a4,null))[_0x685c('0x4d')](handleError(_0x2f55a4,null));};exports[_0x685c('0x57')]=function(_0xc61836,_0xc0ed2b){return db['ChatMessage']['describe']()[_0x685c('0x20')](respondWithResult(_0xc0ed2b,null))[_0x685c('0x4d')](handleError(_0xc0ed2b,null));};var interaction_log=require('../../config/logger')(_0x685c('0x58'));exports[_0x685c('0x59')]=function(_0x1c266e,_0x2de12a,_0x608c9b){var _0x4faa60={'agent':{},'channel':'chat'};if(_0x1c266e[_0x685c('0x54')]['id']){delete _0x1c266e[_0x685c('0x54')]['id'];}_0x1c266e[_0x685c('0x54')][_0x685c('0x5a')]=!![];_0x1c266e[_0x685c('0x54')][_0x685c('0x5b')]=moment()[_0x685c('0x5c')](_0x685c('0x5d'));_0x1c266e['body'][_0x685c('0x5e')]=_0x1c266e[_0x685c('0x54')][_0x685c('0x5e')]||_0x1c266e[_0x685c('0x5f')]['id'];_0x4faa60['agent']['id']=_0x1c266e[_0x685c('0x54')][_0x685c('0x5e')];return db[_0x685c('0x39')][_0x685c('0x51')]({'where':{'id':_0x1c266e[_0x685c('0x55')]['id'],'UserId':null}})[_0x685c('0x20')](handleEntityNotFound(_0x2de12a,null))[_0x685c('0x20')](saveUpdates(_0x1c266e[_0x685c('0x54')],null))[_0x685c('0x20')](function(_0x440bd9){if(_0x440bd9){_0x4faa60[_0x685c('0x26')]=_0x440bd9['get']({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x440bd9[_0x685c('0x60')]}});}return null;})['then'](handleEntityNotFound(_0x2de12a,null))[_0x685c('0x20')](function(_0xa4f302){if(_0xa4f302){return _0xa4f302[_0x685c('0x53')]({'UserId':_0x1c266e[_0x685c('0x54')]['UserId'],'read1stAt':_['isNil'](_0xa4f302[_0x685c('0x61')])?moment()[_0x685c('0x5c')](_0x685c('0x5d')):undefined});}return null;})[_0x685c('0x20')](function(_0x141e1c){if(_0x141e1c){_0x4faa60[_0x685c('0x62')]=_0x141e1c[_0x685c('0x63')]({'plain':!![]});interaction_log[_0x685c('0x21')]('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1c266e[_0x685c('0x5f')]['id'],_0x1c266e['user'][_0x685c('0x35')],_0x1c266e[_0x685c('0x5f')][_0x685c('0x64')],_0x4faa60[_0x685c('0x62')]['id'],_0x1c266e[_0x685c('0x54')]?JSON['stringify'](_0x1c266e[_0x685c('0x54')]):_0x685c('0x65'));return respondWithRpcPromise('AcceptMessage',_0x685c('0x66'),_0x4faa60);}return null;})[_0x685c('0x20')](function(_0x2875d5){var _0x37285e=_0x685c('0x67')+_0x2875d5['message']['ContactId'];return db[_0x685c('0x68')][_0x685c('0x3e')](_0x37285e,{'type':db[_0x685c('0x69')][_0x685c('0x6a')][_0x685c('0x6b')],'raw':!![]})[_0x685c('0x20')](function(_0x1837d7){return _0x1837d7;});})['then'](function(_0xa6f4cf){if(_0xa6f4cf){_0x4faa60['message'][_0x685c('0x6c')]=_0xa6f4cf[0x0];if(!_0x1c266e[_0x685c('0x54')]['UserId'])return;return db[_0x685c('0x6d')][_0x685c('0x51')]({'where':{'id':_0x1c266e[_0x685c('0x54')][_0x685c('0x5e')],'role':_0x685c('0x6e')},'attributes':['id',_0x685c('0x35'),'fullname','email',_0x685c('0x6f')],'raw':!![]});}return null;})[_0x685c('0x20')](function(_0x5a7eae){if(!_0x5a7eae)return null;_0x4faa60['message'][_0x685c('0x6e')]=_0x5a7eae;return _0x4faa60;})[_0x685c('0x20')](function(_0x5a2bf3){if(_0x5a2bf3){if(_0x1c266e[_0x685c('0x54')]['manual']){_0x4faa60[_0x685c('0x26')]['interface']=util['format'](_0x685c('0x70'),_0x1c266e['user'][_0x685c('0x35')]);_0x4faa60['message'][_0x685c('0x71')]=_0x4faa60[_0x685c('0x71')];_0x4faa60[_0x685c('0x26')][_0x685c('0x72')]=_0x4faa60[_0x685c('0x71')];_0x4faa60[_0x685c('0x26')][_0x685c('0x73')]='accept';return respondWithRpcPromise('EventManager',_0x685c('0x74'),{'event':'acceptmessage','message':_[_0x685c('0x49')](_0x4faa60[_0x685c('0x26')],JSON['parse'](_0x4faa60[_0x685c('0x62')][_0x685c('0x75')]))},client9002)[_0x685c('0x20')](function(){return _0x4faa60;});}return _0x4faa60;}return null;})[_0x685c('0x20')](respondWithResult(_0x2de12a,null))[_0x685c('0x4d')](handleError(_0x2de12a,null));};var interaction_log=require('../../config/logger')(_0x685c('0x58'));exports['reject']=function(_0x1de38d,_0x52e294,_0x29deb1){var _0x5ddbfd={'agent':{},'channel':_0x685c('0x76')};if(_0x1de38d[_0x685c('0x54')]['id']){delete _0x1de38d['body']['id'];}_0x1de38d[_0x685c('0x54')][_0x685c('0x5e')]=_0x1de38d[_0x685c('0x54')][_0x685c('0x5e')]||_0x1de38d[_0x685c('0x5f')]['id'];_0x5ddbfd['agent']['id']=_0x1de38d[_0x685c('0x54')][_0x685c('0x5e')];return db[_0x685c('0x39')][_0x685c('0x51')]({'where':{'id':_0x1de38d['params']['id'],'UserId':null}})[_0x685c('0x20')](handleEntityNotFound(_0x52e294,null))['then'](function(_0x5303ca){if(_0x5303ca){_0x5ddbfd[_0x685c('0x26')]=_0x5303ca[_0x685c('0x63')]({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x5303ca[_0x685c('0x60')]}});}return null;})[_0x685c('0x20')](handleEntityNotFound(_0x52e294,null))[_0x685c('0x20')](function(_0x595940){if(_0x595940){_0x5ddbfd[_0x685c('0x62')]=_0x595940['get']({'plain':!![]});interaction_log[_0x685c('0x21')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1de38d[_0x685c('0x5f')]['id'],_0x1de38d[_0x685c('0x5f')][_0x685c('0x35')],_0x1de38d[_0x685c('0x5f')][_0x685c('0x64')],_0x5ddbfd['interaction']['id'],_0x1de38d[_0x685c('0x54')]?JSON['stringify'](_0x1de38d[_0x685c('0x54')]):_0x685c('0x65'));return respondWithRpcPromise(_0x685c('0x77'),'rejectMessage',_0x5ddbfd);}return null;})[_0x685c('0x20')](function(_0x28ec1c){var _0x4bd1e9=_0x685c('0x67')+_0x28ec1c['message'][_0x685c('0x78')];return db[_0x685c('0x68')][_0x685c('0x3e')](_0x4bd1e9,{'type':db[_0x685c('0x69')][_0x685c('0x6a')]['SELECT'],'raw':!![]})['then'](function(_0x570eff){return _0x570eff;});})[_0x685c('0x20')](function(_0x5da422){if(_0x5da422){_0x5ddbfd['message'][_0x685c('0x6c')]=_0x5da422[0x0];if(!_0x1de38d[_0x685c('0x54')][_0x685c('0x5e')])return;return db[_0x685c('0x6d')][_0x685c('0x51')]({'where':{'id':_0x1de38d[_0x685c('0x54')][_0x685c('0x5e')],'role':_0x685c('0x6e')},'attributes':['id',_0x685c('0x35'),_0x685c('0x79'),_0x685c('0x7a'),_0x685c('0x6f')],'raw':!![]});}return null;})['then'](function(_0x3369a2){if(!_0x3369a2)return null;_0x5ddbfd[_0x685c('0x26')][_0x685c('0x6e')]=_0x3369a2;return _0x5ddbfd;})[_0x685c('0x20')](function(_0x535f1a){if(_0x535f1a){_0x535f1a['message'][_0x685c('0x7b')]=util[_0x685c('0x5c')](_0x685c('0x70'),_0x1de38d[_0x685c('0x5f')][_0x685c('0x35')]);_0x535f1a[_0x685c('0x26')]['channel']=_0x5ddbfd[_0x685c('0x71')];_0x535f1a[_0x685c('0x26')][_0x685c('0x72')]=_0x5ddbfd[_0x685c('0x71')];_0x535f1a[_0x685c('0x26')][_0x685c('0x73')]=_0x685c('0x7c');respondWithRpcPromise('EventManager',_0x685c('0x74'),{'event':'rejectmessage','message':_['merge'](_0x5ddbfd[_0x685c('0x26')],JSON[_0x685c('0x7d')](_0x5ddbfd[_0x685c('0x62')][_0x685c('0x75')]))},client9002);return _0x5ddbfd;}return null;})['then'](respondWithResult(_0x52e294,null))[_0x685c('0x4d')](handleError(_0x52e294,null));};
\ No newline at end of file