Built motion from commit (unavailable).|2.5.26
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 62dbf2b..8222ae3 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x638f=['sox','to-csv','ejs','lodash','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','redis','localhost','./chatMessage.socket','register','jayson/promise','client','http','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','error','code','message','info','result','catch','sendStatus','end','status','count','offset','limit','Content-Range','apply','reject','save','destroy','then','stack','name','send','index','ChatMessage','rawAttributes','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','pick','where','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','params','find','create','body','update','describe','accept','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','user','agent','CmContact','get','ChatInteractionId','UserId','read1stAt','interaction','stringify','null','acceptMessage','manual','interface','SIP/%s','channel','event','EventManager','acceptmessage','parse','formData','chat-interactions','chat','ChatInteraction','html-pdf','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util'];(function(_0x389cda,_0x31155c){var _0x5889bc=function(_0x32f473){while(--_0x32f473){_0x389cda['push'](_0x389cda['shift']());}};_0x5889bc(++_0x31155c);}(_0x638f,0xe5));var _0xf638=function(_0xabca41,_0xbfdf4a){_0xabca41=_0xabca41-0x0;var _0x404ccb=_0x638f[_0xabca41];return _0x404ccb;};'use strict';var pdf=require(_0xf638('0x0'));var emlformat=require(_0xf638('0x1'));var rimraf=require(_0xf638('0x2'));var zipdir=require(_0xf638('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0xf638('0x4'));var moment=require(_0xf638('0x5'));var BPromise=require(_0xf638('0x6'));var Mustache=require(_0xf638('0x7'));var util=require(_0xf638('0x8'));var path=require('path');var sox=require(_0xf638('0x9'));var csv=require(_0xf638('0xa'));var ejs=require(_0xf638('0xb'));var fs=require('fs');var _=require(_0xf638('0xc'));var squel=require('squel');var crypto=require(_0xf638('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xf638('0xe'));var toCsv=require(_0xf638('0xa'));var querystring=require(_0xf638('0xf'));var Papa=require(_0xf638('0x10'));var Redis=require('ioredis');var authService=require(_0xf638('0x11'));var qs=require(_0xf638('0x12'));var as=require(_0xf638('0x13'));var hardwareService=require(_0xf638('0x14'));var logger=require(_0xf638('0x15'))(_0xf638('0x16'));var utils=require(_0xf638('0x17'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xf638('0x18'))['db'];config[_0xf638('0x19')]=_['defaults'](config['redis'],{'host':_0xf638('0x1a'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xf638('0x19')]));require(_0xf638('0x1b'))[_0xf638('0x1c')](socket);var jayson=require(_0xf638('0x1d'));var client=jayson[_0xf638('0x1e')][_0xf638('0x1f')]({'port':0x232c});var client9002=jayson[_0xf638('0x1e')][_0xf638('0x1f')]({'port':0x232a});function respondWithRpcPromise(_0x5d79f1,_0x1d7740,_0x5741f2,_0x57956a){return new BPromise(function(_0x127d60,_0x88fd3){var _0x17dd2f=_0x57956a||client;return _0x17dd2f['request'](_0x5d79f1,_0x5741f2)['then'](function(_0x481f0d){logger['info'](_0xf638('0x20'),_0x1d7740,_0xf638('0x21'));logger[_0xf638('0x22')](_0xf638('0x23'),_0x1d7740,_0xf638('0x21'),JSON['stringify'](_0x481f0d));if(_0x481f0d['error']){if(_0x481f0d[_0xf638('0x24')][_0xf638('0x25')]===0x1f4){logger['error'](_0xf638('0x20'),_0x1d7740,_0x481f0d[_0xf638('0x24')][_0xf638('0x26')]);return _0x88fd3(_0x481f0d[_0xf638('0x24')][_0xf638('0x26')]);}logger[_0xf638('0x24')](_0xf638('0x20'),_0x1d7740,_0x481f0d[_0xf638('0x24')]['message']);return _0x127d60(_0x481f0d[_0xf638('0x24')][_0xf638('0x26')]);}else{logger[_0xf638('0x27')]('ChatMessage,\x20%s,\x20%s',_0x1d7740,_0xf638('0x21'));_0x127d60(_0x481f0d[_0xf638('0x28')]['message']);}})[_0xf638('0x29')](function(_0x395d5b){logger[_0xf638('0x24')](_0xf638('0x20'),_0x1d7740,_0x395d5b);_0x88fd3(_0x395d5b);});});}function respondWithStatusCode(_0x2fbd7a,_0x57431f){_0x57431f=_0x57431f||0xcc;return function(_0x3cb9eb){if(_0x3cb9eb){return _0x2fbd7a[_0xf638('0x2a')](_0x57431f);}return _0x2fbd7a['status'](_0x57431f)[_0xf638('0x2b')]();};}function respondWithResult(_0x23a969,_0xcf68a1){_0xcf68a1=_0xcf68a1||0xc8;return function(_0x2c2e42){if(_0x2c2e42){return _0x23a969[_0xf638('0x2c')](_0xcf68a1)['json'](_0x2c2e42);}};}function respondWithFilteredResult(_0x49fd8b,_0x248e1b){return function(_0x14cbda){if(_0x14cbda){var _0x2a2d6d=_0x14cbda[_0xf638('0x2d')],_0x11f04b=_0x248e1b[_0xf638('0x2e')],_0x5f4200=_0x248e1b['offset']+_0x248e1b[_0xf638('0x2f')],_0x50cd79;if(_0x5f4200>=_0x2a2d6d){_0x5f4200=_0x2a2d6d;_0x50cd79=0xc8;}else{_0x50cd79=0xce;}_0x49fd8b['status'](_0x50cd79);return _0x49fd8b['set'](_0xf638('0x30'),_0x11f04b+'-'+_0x5f4200+'/'+_0x2a2d6d)['json'](_0x14cbda);}return null;};}function patchUpdates(_0xdbf6aa){return function(_0x16a9ef){try{jsonpatch[_0xf638('0x31')](_0x16a9ef,_0xdbf6aa,!![]);}catch(_0x3ad03b){return BPromise[_0xf638('0x32')](_0x3ad03b);}return _0x16a9ef[_0xf638('0x33')]();};}function saveUpdates(_0x55c0c4,_0x80c264){return function(_0x5a1e37){if(_0x5a1e37){return _0x5a1e37['update'](_0x55c0c4)['then'](function(_0x1444f4){return _0x1444f4;});}return null;};}function removeEntity(_0x3e7849,_0x3485d0){return function(_0x56b90e){if(_0x56b90e){return _0x56b90e[_0xf638('0x34')]()[_0xf638('0x35')](function(){_0x3e7849[_0xf638('0x2c')](0xcc)[_0xf638('0x2b')]();});}};}function handleEntityNotFound(_0x2696a2,_0xa495fd){return function(_0x2288f2){if(!_0x2288f2){_0x2696a2[_0xf638('0x2a')](0x194);}return _0x2288f2;};}function handleError(_0xf0ee96,_0x55c468){_0x55c468=_0x55c468||0x1f4;return function(_0x4e7cf8){logger['error'](_0x4e7cf8[_0xf638('0x36')]);if(_0x4e7cf8[_0xf638('0x37')]){delete _0x4e7cf8[_0xf638('0x37')];}_0xf0ee96['status'](_0x55c468)[_0xf638('0x38')](_0x4e7cf8);};}exports[_0xf638('0x39')]=function(_0x14b022,_0x1371e2){var _0x13c57e={},_0x78fe25={},_0x13ea6c={'count':0x0,'rows':[]};var _0x452f74=_['map'](db[_0xf638('0x3a')][_0xf638('0x3b')],function(_0x5d4b2f){return{'name':_0x5d4b2f[_0xf638('0x3c')],'type':_0x5d4b2f[_0xf638('0x3d')][_0xf638('0x3e')]};});_0x78fe25[_0xf638('0x3f')]=_[_0xf638('0x40')](_0x452f74,'name');_0x78fe25[_0xf638('0x41')]=_[_0xf638('0x42')](_0x14b022['query']);_0x78fe25[_0xf638('0x43')]=_[_0xf638('0x44')](_0x78fe25[_0xf638('0x3f')],_0x78fe25['query']);_0x13c57e[_0xf638('0x45')]=_['intersection'](_0x78fe25[_0xf638('0x3f')],qs[_0xf638('0x46')](_0x14b022[_0xf638('0x41')][_0xf638('0x46')]));_0x13c57e[_0xf638('0x45')]=_0x13c57e[_0xf638('0x45')][_0xf638('0x47')]?_0x13c57e[_0xf638('0x45')]:_0x78fe25[_0xf638('0x3f')];if(!_0x14b022[_0xf638('0x41')][_0xf638('0x48')]('nolimit')){_0x13c57e[_0xf638('0x2f')]=qs[_0xf638('0x2f')](_0x14b022[_0xf638('0x41')]['limit']);_0x13c57e[_0xf638('0x2e')]=qs[_0xf638('0x2e')](_0x14b022[_0xf638('0x41')]['offset']);}_0x13c57e[_0xf638('0x49')]=qs[_0xf638('0x4a')](_0x14b022[_0xf638('0x41')][_0xf638('0x4a')]);_0x13c57e['where']=qs[_0xf638('0x43')](_[_0xf638('0x4b')](_0x14b022['query'],_0x78fe25[_0xf638('0x43')]),_0x452f74);if(_0x14b022['query']['filter']){_0x13c57e[_0xf638('0x4c')]=_[_0xf638('0x4d')](_0x13c57e[_0xf638('0x4c')],{'$or':_['map'](_0x452f74,function(_0x584381){if(_0x584381[_0xf638('0x3d')]!==_0xf638('0x4e')){var _0x4c5783={};_0x4c5783[_0x584381[_0xf638('0x37')]]={'$like':'%'+_0x14b022['query'][_0xf638('0x4f')]+'%'};return _0x4c5783;}})});}_0x13c57e=_['merge']({},_0x13c57e,_0x14b022[_0xf638('0x50')]);var _0x5b9c13={'where':_0x13c57e[_0xf638('0x4c')]};return db[_0xf638('0x3a')][_0xf638('0x2d')](_0x5b9c13)['then'](function(_0x7b4b34){_0x13ea6c['count']=_0x7b4b34;if(_0x14b022[_0xf638('0x41')][_0xf638('0x51')]){_0x13c57e[_0xf638('0x52')]=[{'all':!![]}];}return db[_0xf638('0x3a')][_0xf638('0x53')](_0x13c57e);})[_0xf638('0x35')](function(_0xabb7c6){_0x13ea6c[_0xf638('0x54')]=_0xabb7c6;return _0x13ea6c;})[_0xf638('0x35')](respondWithFilteredResult(_0x1371e2,_0x13c57e))[_0xf638('0x29')](handleError(_0x1371e2,null));};exports['show']=function(_0x518306,_0x89025d){var _0xf62d7d={'raw':!![],'where':{'id':_0x518306[_0xf638('0x55')]['id']}},_0x22416b={};_0x22416b[_0xf638('0x3f')]=_[_0xf638('0x42')](db['ChatMessage'][_0xf638('0x3b')]);_0x22416b[_0xf638('0x41')]=_[_0xf638('0x42')](_0x518306['query']);_0x22416b['filters']=_[_0xf638('0x44')](_0x22416b[_0xf638('0x3f')],_0x22416b[_0xf638('0x41')]);_0xf62d7d[_0xf638('0x45')]=_[_0xf638('0x44')](_0x22416b[_0xf638('0x3f')],qs[_0xf638('0x46')](_0x518306[_0xf638('0x41')][_0xf638('0x46')]));_0xf62d7d['attributes']=_0xf62d7d[_0xf638('0x45')][_0xf638('0x47')]?_0xf62d7d[_0xf638('0x45')]:_0x22416b['model'];if(_0x518306[_0xf638('0x41')][_0xf638('0x51')]){_0xf62d7d['include']=[{'all':!![]}];}_0xf62d7d=_[_0xf638('0x4d')]({},_0xf62d7d,_0x518306['options']);return db[_0xf638('0x3a')][_0xf638('0x56')](_0xf62d7d)['then'](handleEntityNotFound(_0x89025d,null))[_0xf638('0x35')](respondWithResult(_0x89025d,null))[_0xf638('0x29')](handleError(_0x89025d,null));};exports[_0xf638('0x57')]=function(_0x2917ed,_0x4cf69e){return db[_0xf638('0x3a')]['create'](_0x2917ed[_0xf638('0x58')],{})[_0xf638('0x35')](respondWithResult(_0x4cf69e,0xc9))[_0xf638('0x29')](handleError(_0x4cf69e,null));};exports[_0xf638('0x59')]=function(_0x379cfa,_0x5b8f89){if(_0x379cfa[_0xf638('0x58')]['id']){delete _0x379cfa[_0xf638('0x58')]['id'];}return db[_0xf638('0x3a')][_0xf638('0x56')]({'where':{'id':_0x379cfa[_0xf638('0x55')]['id']}})[_0xf638('0x35')](handleEntityNotFound(_0x5b8f89,null))['then'](saveUpdates(_0x379cfa['body'],null))[_0xf638('0x35')](respondWithResult(_0x5b8f89,null))[_0xf638('0x29')](handleError(_0x5b8f89,null));};exports['destroy']=function(_0x1bca61,_0x553680){return db['ChatMessage'][_0xf638('0x56')]({'where':{'id':_0x1bca61[_0xf638('0x55')]['id']}})['then'](handleEntityNotFound(_0x553680,null))[_0xf638('0x35')](removeEntity(_0x553680,null))['catch'](handleError(_0x553680,null));};exports[_0xf638('0x5a')]=function(_0x19027e,_0x421640){return db[_0xf638('0x3a')][_0xf638('0x5a')]()['then'](respondWithResult(_0x421640,null))['catch'](handleError(_0x421640,null));};var interaction_log=require(_0xf638('0x15'))('chat-interactions');exports[_0xf638('0x5b')]=function(_0x19d956,_0x5d282f,_0x5a7dda){var _0x52b79c={'agent':{},'channel':'chat'};if(_0x19d956[_0xf638('0x58')]['id']){delete _0x19d956[_0xf638('0x58')]['id'];}_0x19d956[_0xf638('0x58')][_0xf638('0x5c')]=!![];_0x19d956['body'][_0xf638('0x5d')]=moment()[_0xf638('0x5e')](_0xf638('0x5f'));_0x19d956[_0xf638('0x58')]['UserId']=_0x19d956[_0xf638('0x58')]['UserId']||_0x19d956[_0xf638('0x60')]['id'];_0x52b79c[_0xf638('0x61')]['id']=_0x19d956[_0xf638('0x58')]['UserId'];return db[_0xf638('0x3a')][_0xf638('0x56')]({'where':{'id':_0x19d956[_0xf638('0x55')]['id'],'UserId':null},'include':[{'model':db[_0xf638('0x62')],'as':'Contact'}]})['then'](handleEntityNotFound(_0x5d282f,null))[_0xf638('0x35')](saveUpdates(_0x19d956[_0xf638('0x58')],null))[_0xf638('0x35')](function(_0x305e92){if(_0x305e92){_0x52b79c[_0xf638('0x26')]=_0x305e92[_0xf638('0x63')]({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x305e92[_0xf638('0x64')]}});}return null;})[_0xf638('0x35')](handleEntityNotFound(_0x5d282f,null))[_0xf638('0x35')](function(_0x1934de){if(_0x1934de){return _0x1934de[_0xf638('0x59')]({'UserId':_0x19d956[_0xf638('0x58')][_0xf638('0x65')],'read1stAt':_['isNil'](_0x1934de[_0xf638('0x66')])?moment()[_0xf638('0x5e')](_0xf638('0x5f')):undefined});}return null;})[_0xf638('0x35')](function(_0x1da7eb){if(_0x1da7eb){_0x52b79c[_0xf638('0x67')]=_0x1da7eb[_0xf638('0x63')]({'plain':!![]});interaction_log['info']('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x19d956['user']['id'],_0x19d956[_0xf638('0x60')]['name'],_0x19d956[_0xf638('0x60')]['role'],_0x52b79c['interaction']['id'],_0x19d956[_0xf638('0x58')]?JSON[_0xf638('0x68')](_0x19d956[_0xf638('0x58')]):_0xf638('0x69'));return respondWithRpcPromise('AcceptMessage',_0xf638('0x6a'),_0x52b79c);}return null;})[_0xf638('0x35')](function(_0x320e7b){if(_0x320e7b){if(_0x19d956['body'][_0xf638('0x6b')]){_0x52b79c[_0xf638('0x26')][_0xf638('0x6c')]=util['format'](_0xf638('0x6d'),_0x19d956[_0xf638('0x60')][_0xf638('0x37')]);_0x52b79c[_0xf638('0x26')][_0xf638('0x6e')]=_0x52b79c[_0xf638('0x6e')];_0x52b79c[_0xf638('0x26')][_0xf638('0x6f')]='accept';return respondWithRpcPromise(_0xf638('0x70'),'EventManager',{'event':_0xf638('0x71'),'message':_['merge'](_0x52b79c['message'],JSON[_0xf638('0x72')](_0x52b79c[_0xf638('0x67')][_0xf638('0x73')]))},client9002)[_0xf638('0x35')](function(){return _0x52b79c;});}return _0x52b79c;}return null;})[_0xf638('0x35')](respondWithResult(_0x5d282f,null))['catch'](handleError(_0x5d282f,null));};var interaction_log=require(_0xf638('0x15'))(_0xf638('0x74'));exports[_0xf638('0x32')]=function(_0xc413a3,_0x2d681a,_0x2bcd54){var _0x5c4402={'agent':{},'channel':_0xf638('0x75')};if(_0xc413a3[_0xf638('0x58')]['id']){delete _0xc413a3[_0xf638('0x58')]['id'];}_0xc413a3[_0xf638('0x58')][_0xf638('0x65')]=_0xc413a3[_0xf638('0x58')][_0xf638('0x65')]||_0xc413a3[_0xf638('0x60')]['id'];_0x5c4402[_0xf638('0x61')]['id']=_0xc413a3[_0xf638('0x58')][_0xf638('0x65')];return db[_0xf638('0x3a')]['find']({'where':{'id':_0xc413a3['params']['id'],'UserId':null}})[_0xf638('0x35')](handleEntityNotFound(_0x2d681a,null))[_0xf638('0x35')](function(_0x3d759a){if(_0x3d759a){_0x5c4402[_0xf638('0x26')]=_0x3d759a[_0xf638('0x63')]({'plain':!![]});return db[_0xf638('0x76')][_0xf638('0x56')]({'where':{'id':_0x3d759a['ChatInteractionId']}});}return null;})[_0xf638('0x35')](handleEntityNotFound(_0x2d681a,null))[_0xf638('0x35')](function(_0x11981a){if(_0x11981a){_0x5c4402[_0xf638('0x67')]=_0x11981a[_0xf638('0x63')]({'plain':!![]});interaction_log[_0xf638('0x27')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0xc413a3['user']['id'],_0xc413a3[_0xf638('0x60')][_0xf638('0x37')],_0xc413a3['user']['role'],_0x5c4402[_0xf638('0x67')]['id'],_0xc413a3[_0xf638('0x58')]?JSON['stringify'](_0xc413a3['body']):_0xf638('0x69'));return respondWithRpcPromise('RejectMessage','rejectMessage',_0x5c4402);}return null;})[_0xf638('0x35')](function(_0x3ebe35){if(_0x3ebe35){_0x3ebe35[_0xf638('0x26')][_0xf638('0x6c')]=util[_0xf638('0x5e')]('SIP/%s',_0xc413a3[_0xf638('0x60')][_0xf638('0x37')]);_0x3ebe35[_0xf638('0x26')]['channel']=_0x5c4402[_0xf638('0x6e')];_0x3ebe35[_0xf638('0x26')]['event']=_0xf638('0x32');respondWithRpcPromise(_0xf638('0x70'),'EventManager',{'event':'rejectmessage','message':_0x3ebe35[_0xf638('0x26')]},client9002);return _0x5c4402;}return null;})['then'](respondWithResult(_0x2d681a,null))[_0xf638('0x29')](handleError(_0x2d681a,null));};
\ No newline at end of file
+var _0xd2c5=['create','body','update','describe','../../config/logger','chat-interactions','accept','chat','format','YYYY-MM-DD\x20HH:mm:ss','UserId','agent','CmContact','Contact','get','isNil','interaction','user','role','null','AcceptMessage','acceptMessage','manual','interface','SIP/%s','channel','event','EventManager','acceptmessage','ChatInteraction','ChatInteractionId','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','rejectmessage','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','redis','localhost','./chatMessage.socket','register','jayson/promise','client','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','sendStatus','end','status','json','count','offset','limit','set','apply','reject','save','destroy','stack','name','send','index','map','rawAttributes','fieldName','type','query','intersection','model','attributes','fields','length','nolimit','order','sort','where','filters','filter','merge','options','includeAll','include','findAll','rows','catch','show','params','keys','ChatMessage','find'];(function(_0x495b3d,_0x4d3da4){var _0x4cb329=function(_0xdef9f0){while(--_0xdef9f0){_0x495b3d['push'](_0x495b3d['shift']());}};_0x4cb329(++_0x4d3da4);}(_0xd2c5,0x110));var _0x5d2c=function(_0x713836,_0x25f8e3){_0x713836=_0x713836-0x0;var _0x70ab36=_0xd2c5[_0x713836];return _0x70ab36;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x5d2c('0x0'));var jsonpatch=require(_0x5d2c('0x1'));var rp=require(_0x5d2c('0x2'));var moment=require(_0x5d2c('0x3'));var BPromise=require(_0x5d2c('0x4'));var Mustache=require(_0x5d2c('0x5'));var util=require('util');var path=require(_0x5d2c('0x6'));var sox=require(_0x5d2c('0x7'));var csv=require(_0x5d2c('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5d2c('0x9'));var _=require(_0x5d2c('0xa'));var squel=require(_0x5d2c('0xb'));var crypto=require(_0x5d2c('0xc'));var jsforce=require(_0x5d2c('0xd'));var deskjs=require(_0x5d2c('0xe'));var toCsv=require(_0x5d2c('0x8'));var querystring=require(_0x5d2c('0xf'));var Papa=require(_0x5d2c('0x10'));var Redis=require(_0x5d2c('0x11'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x5d2c('0x12'));var hardwareService=require(_0x5d2c('0x13'));var logger=require('../../config/logger')(_0x5d2c('0x14'));var utils=require(_0x5d2c('0x15'));var config=require(_0x5d2c('0x16'));var licenseUtil=require(_0x5d2c('0x17'));var db=require('../../mysqldb')['db'];config[_0x5d2c('0x18')]=_['defaults'](config[_0x5d2c('0x18')],{'host':_0x5d2c('0x19'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x5d2c('0x18')]));require(_0x5d2c('0x1a'))[_0x5d2c('0x1b')](socket);var jayson=require(_0x5d2c('0x1c'));var client=jayson[_0x5d2c('0x1d')]['http']({'port':0x232c});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x43e111,_0x5d2004,_0x249b24,_0x4740d0){return new BPromise(function(_0x4147f0,_0xf0a8a){var _0x55892d=_0x4740d0||client;return _0x55892d['request'](_0x43e111,_0x249b24)[_0x5d2c('0x1e')](function(_0x42c279){logger[_0x5d2c('0x1f')](_0x5d2c('0x20'),_0x5d2004,_0x5d2c('0x21'));logger[_0x5d2c('0x22')](_0x5d2c('0x23'),_0x5d2004,_0x5d2c('0x21'),JSON[_0x5d2c('0x24')](_0x42c279));if(_0x42c279['error']){if(_0x42c279[_0x5d2c('0x25')][_0x5d2c('0x26')]===0x1f4){logger[_0x5d2c('0x25')](_0x5d2c('0x20'),_0x5d2004,_0x42c279[_0x5d2c('0x25')]['message']);return _0xf0a8a(_0x42c279[_0x5d2c('0x25')]['message']);}logger[_0x5d2c('0x25')](_0x5d2c('0x20'),_0x5d2004,_0x42c279[_0x5d2c('0x25')]['message']);return _0x4147f0(_0x42c279[_0x5d2c('0x25')][_0x5d2c('0x27')]);}else{logger[_0x5d2c('0x1f')]('ChatMessage,\x20%s,\x20%s',_0x5d2004,_0x5d2c('0x21'));_0x4147f0(_0x42c279[_0x5d2c('0x28')]['message']);}})['catch'](function(_0x38c44b){logger['error']('ChatMessage,\x20%s,\x20%s',_0x5d2004,_0x38c44b);_0xf0a8a(_0x38c44b);});});}function respondWithStatusCode(_0x52f238,_0x4322c5){_0x4322c5=_0x4322c5||0xcc;return function(_0x2b9dad){if(_0x2b9dad){return _0x52f238[_0x5d2c('0x29')](_0x4322c5);}return _0x52f238['status'](_0x4322c5)[_0x5d2c('0x2a')]();};}function respondWithResult(_0x35e0e6,_0x35a135){_0x35a135=_0x35a135||0xc8;return function(_0x57e82e){if(_0x57e82e){return _0x35e0e6[_0x5d2c('0x2b')](_0x35a135)[_0x5d2c('0x2c')](_0x57e82e);}};}function respondWithFilteredResult(_0x2f20db,_0x3b4402){return function(_0x437233){if(_0x437233){var _0x304558=_0x437233[_0x5d2c('0x2d')],_0x21b3f0=_0x3b4402['offset'],_0x36a1bc=_0x3b4402[_0x5d2c('0x2e')]+_0x3b4402[_0x5d2c('0x2f')],_0x1bb538;if(_0x36a1bc>=_0x304558){_0x36a1bc=_0x304558;_0x1bb538=0xc8;}else{_0x1bb538=0xce;}_0x2f20db[_0x5d2c('0x2b')](_0x1bb538);return _0x2f20db[_0x5d2c('0x30')]('Content-Range',_0x21b3f0+'-'+_0x36a1bc+'/'+_0x304558)['json'](_0x437233);}return null;};}function patchUpdates(_0x4fc0bc){return function(_0x38da8a){try{jsonpatch[_0x5d2c('0x31')](_0x38da8a,_0x4fc0bc,!![]);}catch(_0x2300a6){return BPromise[_0x5d2c('0x32')](_0x2300a6);}return _0x38da8a[_0x5d2c('0x33')]();};}function saveUpdates(_0x71ba9c,_0x148a4e){return function(_0x2a6c44){if(_0x2a6c44){return _0x2a6c44['update'](_0x71ba9c)[_0x5d2c('0x1e')](function(_0x2f7360){return _0x2f7360;});}return null;};}function removeEntity(_0x5a1cef,_0x5dddc4){return function(_0x4ef0f2){if(_0x4ef0f2){return _0x4ef0f2[_0x5d2c('0x34')]()[_0x5d2c('0x1e')](function(){_0x5a1cef[_0x5d2c('0x2b')](0xcc)[_0x5d2c('0x2a')]();});}};}function handleEntityNotFound(_0x5aa76c,_0x4f2d03){return function(_0x5570b6){if(!_0x5570b6){_0x5aa76c[_0x5d2c('0x29')](0x194);}return _0x5570b6;};}function handleError(_0x7b960b,_0x4cd02a){_0x4cd02a=_0x4cd02a||0x1f4;return function(_0x3d8ff0){logger['error'](_0x3d8ff0[_0x5d2c('0x35')]);if(_0x3d8ff0[_0x5d2c('0x36')]){delete _0x3d8ff0['name'];}_0x7b960b[_0x5d2c('0x2b')](_0x4cd02a)[_0x5d2c('0x37')](_0x3d8ff0);};}exports[_0x5d2c('0x38')]=function(_0xc364b7,_0x3b291a){var _0x1213f0={},_0x4bb25c={},_0x4e6690={'count':0x0,'rows':[]};var _0x5412d5=_[_0x5d2c('0x39')](db['ChatMessage'][_0x5d2c('0x3a')],function(_0x38e781){return{'name':_0x38e781[_0x5d2c('0x3b')],'type':_0x38e781[_0x5d2c('0x3c')]['key']};});_0x4bb25c['model']=_['map'](_0x5412d5,'name');_0x4bb25c[_0x5d2c('0x3d')]=_['keys'](_0xc364b7['query']);_0x4bb25c['filters']=_[_0x5d2c('0x3e')](_0x4bb25c[_0x5d2c('0x3f')],_0x4bb25c['query']);_0x1213f0[_0x5d2c('0x40')]=_[_0x5d2c('0x3e')](_0x4bb25c[_0x5d2c('0x3f')],qs['fields'](_0xc364b7[_0x5d2c('0x3d')][_0x5d2c('0x41')]));_0x1213f0[_0x5d2c('0x40')]=_0x1213f0[_0x5d2c('0x40')][_0x5d2c('0x42')]?_0x1213f0[_0x5d2c('0x40')]:_0x4bb25c[_0x5d2c('0x3f')];if(!_0xc364b7['query']['hasOwnProperty'](_0x5d2c('0x43'))){_0x1213f0['limit']=qs[_0x5d2c('0x2f')](_0xc364b7['query'][_0x5d2c('0x2f')]);_0x1213f0[_0x5d2c('0x2e')]=qs['offset'](_0xc364b7[_0x5d2c('0x3d')]['offset']);}_0x1213f0[_0x5d2c('0x44')]=qs[_0x5d2c('0x45')](_0xc364b7[_0x5d2c('0x3d')]['sort']);_0x1213f0[_0x5d2c('0x46')]=qs[_0x5d2c('0x47')](_['pick'](_0xc364b7[_0x5d2c('0x3d')],_0x4bb25c[_0x5d2c('0x47')]),_0x5412d5);if(_0xc364b7[_0x5d2c('0x3d')][_0x5d2c('0x48')]){_0x1213f0[_0x5d2c('0x46')]=_[_0x5d2c('0x49')](_0x1213f0[_0x5d2c('0x46')],{'$or':_['map'](_0x5412d5,function(_0x5ad204){if(_0x5ad204['type']!=='VIRTUAL'){var _0x10d515={};_0x10d515[_0x5ad204[_0x5d2c('0x36')]]={'$like':'%'+_0xc364b7['query'][_0x5d2c('0x48')]+'%'};return _0x10d515;}})});}_0x1213f0=_[_0x5d2c('0x49')]({},_0x1213f0,_0xc364b7[_0x5d2c('0x4a')]);var _0x4132ea={'where':_0x1213f0[_0x5d2c('0x46')]};return db['ChatMessage'][_0x5d2c('0x2d')](_0x4132ea)['then'](function(_0x51b317){_0x4e6690[_0x5d2c('0x2d')]=_0x51b317;if(_0xc364b7[_0x5d2c('0x3d')][_0x5d2c('0x4b')]){_0x1213f0[_0x5d2c('0x4c')]=[{'all':!![]}];}return db['ChatMessage'][_0x5d2c('0x4d')](_0x1213f0);})[_0x5d2c('0x1e')](function(_0x5bda56){_0x4e6690[_0x5d2c('0x4e')]=_0x5bda56;return _0x4e6690;})[_0x5d2c('0x1e')](respondWithFilteredResult(_0x3b291a,_0x1213f0))[_0x5d2c('0x4f')](handleError(_0x3b291a,null));};exports[_0x5d2c('0x50')]=function(_0x1519f9,_0xd37362){var _0x8df485={'raw':!![],'where':{'id':_0x1519f9[_0x5d2c('0x51')]['id']}},_0x358f0d={};_0x358f0d['model']=_['keys'](db['ChatMessage'][_0x5d2c('0x3a')]);_0x358f0d[_0x5d2c('0x3d')]=_[_0x5d2c('0x52')](_0x1519f9['query']);_0x358f0d[_0x5d2c('0x47')]=_[_0x5d2c('0x3e')](_0x358f0d['model'],_0x358f0d['query']);_0x8df485['attributes']=_['intersection'](_0x358f0d['model'],qs['fields'](_0x1519f9[_0x5d2c('0x3d')][_0x5d2c('0x41')]));_0x8df485[_0x5d2c('0x40')]=_0x8df485[_0x5d2c('0x40')][_0x5d2c('0x42')]?_0x8df485[_0x5d2c('0x40')]:_0x358f0d['model'];if(_0x1519f9[_0x5d2c('0x3d')][_0x5d2c('0x4b')]){_0x8df485[_0x5d2c('0x4c')]=[{'all':!![]}];}_0x8df485=_['merge']({},_0x8df485,_0x1519f9['options']);return db[_0x5d2c('0x53')][_0x5d2c('0x54')](_0x8df485)['then'](handleEntityNotFound(_0xd37362,null))[_0x5d2c('0x1e')](respondWithResult(_0xd37362,null))[_0x5d2c('0x4f')](handleError(_0xd37362,null));};exports['create']=function(_0xd9586c,_0x9104d1){return db[_0x5d2c('0x53')][_0x5d2c('0x55')](_0xd9586c[_0x5d2c('0x56')],{})['then'](respondWithResult(_0x9104d1,0xc9))['catch'](handleError(_0x9104d1,null));};exports[_0x5d2c('0x57')]=function(_0x1a05ba,_0x244122){if(_0x1a05ba[_0x5d2c('0x56')]['id']){delete _0x1a05ba['body']['id'];}return db[_0x5d2c('0x53')][_0x5d2c('0x54')]({'where':{'id':_0x1a05ba[_0x5d2c('0x51')]['id']}})[_0x5d2c('0x1e')](handleEntityNotFound(_0x244122,null))['then'](saveUpdates(_0x1a05ba[_0x5d2c('0x56')],null))[_0x5d2c('0x1e')](respondWithResult(_0x244122,null))[_0x5d2c('0x4f')](handleError(_0x244122,null));};exports[_0x5d2c('0x34')]=function(_0x5a07f1,_0x5a466c){return db[_0x5d2c('0x53')][_0x5d2c('0x54')]({'where':{'id':_0x5a07f1[_0x5d2c('0x51')]['id']}})[_0x5d2c('0x1e')](handleEntityNotFound(_0x5a466c,null))['then'](removeEntity(_0x5a466c,null))['catch'](handleError(_0x5a466c,null));};exports[_0x5d2c('0x58')]=function(_0xe1e8c4,_0x389eff){return db['ChatMessage']['describe']()[_0x5d2c('0x1e')](respondWithResult(_0x389eff,null))[_0x5d2c('0x4f')](handleError(_0x389eff,null));};var interaction_log=require(_0x5d2c('0x59'))(_0x5d2c('0x5a'));exports[_0x5d2c('0x5b')]=function(_0x547389,_0x16f6fb,_0x474f85){var _0x4a06e1={'agent':{},'channel':_0x5d2c('0x5c')};if(_0x547389[_0x5d2c('0x56')]['id']){delete _0x547389[_0x5d2c('0x56')]['id'];}_0x547389[_0x5d2c('0x56')]['read']=!![];_0x547389[_0x5d2c('0x56')]['readAt']=moment()[_0x5d2c('0x5d')](_0x5d2c('0x5e'));_0x547389[_0x5d2c('0x56')][_0x5d2c('0x5f')]=_0x547389[_0x5d2c('0x56')][_0x5d2c('0x5f')]||_0x547389['user']['id'];_0x4a06e1[_0x5d2c('0x60')]['id']=_0x547389[_0x5d2c('0x56')][_0x5d2c('0x5f')];return db[_0x5d2c('0x53')][_0x5d2c('0x54')]({'where':{'id':_0x547389[_0x5d2c('0x51')]['id'],'UserId':null},'include':[{'model':db[_0x5d2c('0x61')],'as':_0x5d2c('0x62')}]})['then'](handleEntityNotFound(_0x16f6fb,null))['then'](saveUpdates(_0x547389[_0x5d2c('0x56')],null))['then'](function(_0x106bea){if(_0x106bea){_0x4a06e1[_0x5d2c('0x27')]=_0x106bea[_0x5d2c('0x63')]({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x106bea['ChatInteractionId']}});}return null;})[_0x5d2c('0x1e')](handleEntityNotFound(_0x16f6fb,null))[_0x5d2c('0x1e')](function(_0xb81cf9){if(_0xb81cf9){return _0xb81cf9[_0x5d2c('0x57')]({'UserId':_0x547389[_0x5d2c('0x56')][_0x5d2c('0x5f')],'read1stAt':_[_0x5d2c('0x64')](_0xb81cf9['read1stAt'])?moment()[_0x5d2c('0x5d')](_0x5d2c('0x5e')):undefined});}return null;})[_0x5d2c('0x1e')](function(_0x3763e4){if(_0x3763e4){_0x4a06e1[_0x5d2c('0x65')]=_0x3763e4['get']({'plain':!![]});interaction_log['info']('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x547389['user']['id'],_0x547389[_0x5d2c('0x66')][_0x5d2c('0x36')],_0x547389[_0x5d2c('0x66')][_0x5d2c('0x67')],_0x4a06e1[_0x5d2c('0x65')]['id'],_0x547389[_0x5d2c('0x56')]?JSON[_0x5d2c('0x24')](_0x547389[_0x5d2c('0x56')]):_0x5d2c('0x68'));return respondWithRpcPromise(_0x5d2c('0x69'),_0x5d2c('0x6a'),_0x4a06e1);}return null;})['then'](function(_0x340694){if(_0x340694){if(_0x547389[_0x5d2c('0x56')][_0x5d2c('0x6b')]){_0x4a06e1[_0x5d2c('0x27')][_0x5d2c('0x6c')]=util['format'](_0x5d2c('0x6d'),_0x547389[_0x5d2c('0x66')][_0x5d2c('0x36')]);_0x4a06e1['message'][_0x5d2c('0x6e')]=_0x4a06e1[_0x5d2c('0x6e')];_0x4a06e1[_0x5d2c('0x27')][_0x5d2c('0x6f')]='accept';return respondWithRpcPromise(_0x5d2c('0x70'),_0x5d2c('0x70'),{'event':_0x5d2c('0x71'),'message':_[_0x5d2c('0x49')](_0x4a06e1[_0x5d2c('0x27')],JSON['parse'](_0x4a06e1['interaction']['formData']))},client9002)[_0x5d2c('0x1e')](function(){return _0x4a06e1;});}return _0x4a06e1;}return null;})[_0x5d2c('0x1e')](respondWithResult(_0x16f6fb,null))[_0x5d2c('0x4f')](handleError(_0x16f6fb,null));};var interaction_log=require(_0x5d2c('0x59'))('chat-interactions');exports[_0x5d2c('0x32')]=function(_0x3d3e0b,_0x384ab8,_0x250e32){var _0x1f4476={'agent':{},'channel':'chat'};if(_0x3d3e0b[_0x5d2c('0x56')]['id']){delete _0x3d3e0b['body']['id'];}_0x3d3e0b[_0x5d2c('0x56')][_0x5d2c('0x5f')]=_0x3d3e0b['body'][_0x5d2c('0x5f')]||_0x3d3e0b['user']['id'];_0x1f4476[_0x5d2c('0x60')]['id']=_0x3d3e0b[_0x5d2c('0x56')][_0x5d2c('0x5f')];return db[_0x5d2c('0x53')][_0x5d2c('0x54')]({'where':{'id':_0x3d3e0b[_0x5d2c('0x51')]['id'],'UserId':null}})[_0x5d2c('0x1e')](handleEntityNotFound(_0x384ab8,null))[_0x5d2c('0x1e')](function(_0x2f01a1){if(_0x2f01a1){_0x1f4476[_0x5d2c('0x27')]=_0x2f01a1[_0x5d2c('0x63')]({'plain':!![]});return db[_0x5d2c('0x72')][_0x5d2c('0x54')]({'where':{'id':_0x2f01a1[_0x5d2c('0x73')]}});}return null;})[_0x5d2c('0x1e')](handleEntityNotFound(_0x384ab8,null))[_0x5d2c('0x1e')](function(_0x8a3f9){if(_0x8a3f9){_0x1f4476[_0x5d2c('0x65')]=_0x8a3f9[_0x5d2c('0x63')]({'plain':!![]});interaction_log['info'](_0x5d2c('0x74'),_0x3d3e0b[_0x5d2c('0x66')]['id'],_0x3d3e0b[_0x5d2c('0x66')][_0x5d2c('0x36')],_0x3d3e0b[_0x5d2c('0x66')]['role'],_0x1f4476[_0x5d2c('0x65')]['id'],_0x3d3e0b[_0x5d2c('0x56')]?JSON[_0x5d2c('0x24')](_0x3d3e0b[_0x5d2c('0x56')]):_0x5d2c('0x68'));return respondWithRpcPromise('RejectMessage',_0x5d2c('0x75'),_0x1f4476);}return null;})['then'](function(_0x35f369){if(_0x35f369){_0x35f369[_0x5d2c('0x27')][_0x5d2c('0x6c')]=util[_0x5d2c('0x5d')](_0x5d2c('0x6d'),_0x3d3e0b[_0x5d2c('0x66')][_0x5d2c('0x36')]);_0x35f369[_0x5d2c('0x27')]['channel']=_0x1f4476[_0x5d2c('0x6e')];_0x35f369['message'][_0x5d2c('0x6f')]=_0x5d2c('0x32');respondWithRpcPromise(_0x5d2c('0x70'),_0x5d2c('0x70'),{'event':_0x5d2c('0x76'),'message':_0x35f369[_0x5d2c('0x27')]},client9002);return _0x1f4476;}return null;})[_0x5d2c('0x1e')](respondWithResult(_0x384ab8,null))[_0x5d2c('0x4f')](handleError(_0x384ab8,null));};
\ No newline at end of file