Built motion from commit 10af8726.|2.6.34
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 59b3cf8..32e22c8 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xc6e3=['includeAll','include','findAll','show','intersection','length','find','create','body','params','describe','chat-interactions','accept','read','readAt','format','UserId','CmContact','Contact','ChatInteractionId','read1stAt','YYYY-MM-DD\x20HH:mm:ss','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','interaction','stringify','acceptMessage','manual','channel','event','EventManager','acceptmessage','parse','chat','agent','ChatInteraction','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','RejectMessage','rejectMessage','interface','rejectmessage','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','path','sox','lodash','squel','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','register','jayson/promise','client','http','request','info','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','error','code','ChatMessage,\x20%s,\x20%s','message','catch','status','offset','limit','Content-Range','json','apply','reject','save','update','then','destroy','sendStatus','stack','name','send','index','map','ChatMessage','rawAttributes','fieldName','keys','query','filters','model','attributes','fields','hasOwnProperty','nolimit','order','where','pick','filter','merge','options','count'];(function(_0x490da9,_0x31214f){var _0x5b9821=function(_0x1423e0){while(--_0x1423e0){_0x490da9['push'](_0x490da9['shift']());}};_0x5b9821(++_0x31214f);}(_0xc6e3,0x11e));var _0x3c6e=function(_0x239e6d,_0x31be14){_0x239e6d=_0x239e6d-0x0;var _0x8d1bd5=_0xc6e3[_0x239e6d];return _0x8d1bd5;};'use strict';var pdf=require(_0x3c6e('0x0'));var emlformat=require(_0x3c6e('0x1'));var rimraf=require(_0x3c6e('0x2'));var zipdir=require(_0x3c6e('0x3'));var jsonpatch=require(_0x3c6e('0x4'));var rp=require(_0x3c6e('0x5'));var moment=require(_0x3c6e('0x6'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x3c6e('0x7'));var sox=require(_0x3c6e('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x3c6e('0x9'));var squel=require(_0x3c6e('0xa'));var crypto=require('crypto');var jsforce=require(_0x3c6e('0xb'));var deskjs=require(_0x3c6e('0xc'));var toCsv=require(_0x3c6e('0xd'));var querystring=require(_0x3c6e('0xe'));var Papa=require(_0x3c6e('0xf'));var Redis=require(_0x3c6e('0x10'));var authService=require(_0x3c6e('0x11'));var qs=require(_0x3c6e('0x12'));var as=require(_0x3c6e('0x13'));var hardwareService=require(_0x3c6e('0x14'));var logger=require(_0x3c6e('0x15'))('api');var utils=require('../../config/utils');var config=require(_0x3c6e('0x16'));var licenseUtil=require(_0x3c6e('0x17'));var db=require(_0x3c6e('0x18'))['db'];config[_0x3c6e('0x19')]=_['defaults'](config[_0x3c6e('0x19')],{'host':_0x3c6e('0x1a'),'port':0x18eb});var socket=require(_0x3c6e('0x1b'))(new Redis(config[_0x3c6e('0x19')]));require('./chatMessage.socket')[_0x3c6e('0x1c')](socket);var jayson=require(_0x3c6e('0x1d'));var client=jayson[_0x3c6e('0x1e')][_0x3c6e('0x1f')]({'port':0x232c});var client9002=jayson[_0x3c6e('0x1e')][_0x3c6e('0x1f')]({'port':0x232a});function respondWithRpcPromise(_0x4750af,_0x17f603,_0x27e192,_0x3643ba){return new BPromise(function(_0x3f48a9,_0x366e6e){var _0x4d8f10=_0x3643ba||client;return _0x4d8f10[_0x3c6e('0x20')](_0x4750af,_0x27e192)['then'](function(_0x5bad43){logger[_0x3c6e('0x21')]('ChatMessage,\x20%s,\x20%s',_0x17f603,_0x3c6e('0x22'));logger[_0x3c6e('0x23')](_0x3c6e('0x24'),_0x17f603,_0x3c6e('0x22'),JSON['stringify'](_0x5bad43));if(_0x5bad43['error']){if(_0x5bad43[_0x3c6e('0x25')][_0x3c6e('0x26')]===0x1f4){logger[_0x3c6e('0x25')](_0x3c6e('0x27'),_0x17f603,_0x5bad43[_0x3c6e('0x25')]['message']);return _0x366e6e(_0x5bad43[_0x3c6e('0x25')][_0x3c6e('0x28')]);}logger[_0x3c6e('0x25')](_0x3c6e('0x27'),_0x17f603,_0x5bad43[_0x3c6e('0x25')][_0x3c6e('0x28')]);return _0x3f48a9(_0x5bad43['error'][_0x3c6e('0x28')]);}else{logger[_0x3c6e('0x21')](_0x3c6e('0x27'),_0x17f603,_0x3c6e('0x22'));_0x3f48a9(_0x5bad43['result'][_0x3c6e('0x28')]);}})[_0x3c6e('0x29')](function(_0x1eb0d0){logger['error'](_0x3c6e('0x27'),_0x17f603,_0x1eb0d0);_0x366e6e(_0x1eb0d0);});});}function respondWithStatusCode(_0x33b540,_0x21a4d9){_0x21a4d9=_0x21a4d9||0xcc;return function(_0xf792c0){if(_0xf792c0){return _0x33b540['sendStatus'](_0x21a4d9);}return _0x33b540[_0x3c6e('0x2a')](_0x21a4d9)['end']();};}function respondWithResult(_0x53518f,_0x1108f1){_0x1108f1=_0x1108f1||0xc8;return function(_0x2aaef7){if(_0x2aaef7){return _0x53518f[_0x3c6e('0x2a')](_0x1108f1)['json'](_0x2aaef7);}};}function respondWithFilteredResult(_0x262f44,_0x1f145c){return function(_0x32acb8){if(_0x32acb8){var _0x355ccd=_0x32acb8['count'],_0x3c0c11=_0x1f145c[_0x3c6e('0x2b')],_0x247cfb=_0x1f145c[_0x3c6e('0x2b')]+_0x1f145c[_0x3c6e('0x2c')],_0x42952f;if(_0x247cfb>=_0x355ccd){_0x247cfb=_0x355ccd;_0x42952f=0xc8;}else{_0x42952f=0xce;}_0x262f44['status'](_0x42952f);return _0x262f44['set'](_0x3c6e('0x2d'),_0x3c0c11+'-'+_0x247cfb+'/'+_0x355ccd)[_0x3c6e('0x2e')](_0x32acb8);}return null;};}function patchUpdates(_0x36cac7){return function(_0x3e2a87){try{jsonpatch[_0x3c6e('0x2f')](_0x3e2a87,_0x36cac7,!![]);}catch(_0x455f6f){return BPromise[_0x3c6e('0x30')](_0x455f6f);}return _0x3e2a87[_0x3c6e('0x31')]();};}function saveUpdates(_0x33d6a6,_0x2feea4){return function(_0x1bb111){if(_0x1bb111){return _0x1bb111[_0x3c6e('0x32')](_0x33d6a6)[_0x3c6e('0x33')](function(_0x43d445){return _0x43d445;});}return null;};}function removeEntity(_0x2174d9,_0x21f2d3){return function(_0x47df04){if(_0x47df04){return _0x47df04[_0x3c6e('0x34')]()[_0x3c6e('0x33')](function(){_0x2174d9[_0x3c6e('0x2a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x4551eb,_0x2feb74){return function(_0x5bfbc0){if(!_0x5bfbc0){_0x4551eb[_0x3c6e('0x35')](0x194);}return _0x5bfbc0;};}function handleError(_0x3a7a3e,_0x2dfef7){_0x2dfef7=_0x2dfef7||0x1f4;return function(_0x8c726e){logger[_0x3c6e('0x25')](_0x8c726e[_0x3c6e('0x36')]);if(_0x8c726e[_0x3c6e('0x37')]){delete _0x8c726e[_0x3c6e('0x37')];}_0x3a7a3e[_0x3c6e('0x2a')](_0x2dfef7)[_0x3c6e('0x38')](_0x8c726e);};}exports[_0x3c6e('0x39')]=function(_0x49792a,_0x3a67b){var _0x5e582c={},_0x4dfb13={},_0x5ccd97={'count':0x0,'rows':[]};var _0x5c3ca3=_[_0x3c6e('0x3a')](db[_0x3c6e('0x3b')][_0x3c6e('0x3c')],function(_0x48ce6c){return{'name':_0x48ce6c[_0x3c6e('0x3d')],'type':_0x48ce6c['type']['key']};});_0x4dfb13['model']=_[_0x3c6e('0x3a')](_0x5c3ca3,_0x3c6e('0x37'));_0x4dfb13['query']=_[_0x3c6e('0x3e')](_0x49792a[_0x3c6e('0x3f')]);_0x4dfb13[_0x3c6e('0x40')]=_['intersection'](_0x4dfb13[_0x3c6e('0x41')],_0x4dfb13[_0x3c6e('0x3f')]);_0x5e582c[_0x3c6e('0x42')]=_['intersection'](_0x4dfb13[_0x3c6e('0x41')],qs[_0x3c6e('0x43')](_0x49792a[_0x3c6e('0x3f')][_0x3c6e('0x43')]));_0x5e582c[_0x3c6e('0x42')]=_0x5e582c[_0x3c6e('0x42')]['length']?_0x5e582c[_0x3c6e('0x42')]:_0x4dfb13[_0x3c6e('0x41')];if(!_0x49792a[_0x3c6e('0x3f')][_0x3c6e('0x44')](_0x3c6e('0x45'))){_0x5e582c[_0x3c6e('0x2c')]=qs[_0x3c6e('0x2c')](_0x49792a[_0x3c6e('0x3f')]['limit']);_0x5e582c[_0x3c6e('0x2b')]=qs['offset'](_0x49792a['query'][_0x3c6e('0x2b')]);}_0x5e582c[_0x3c6e('0x46')]=qs['sort'](_0x49792a[_0x3c6e('0x3f')]['sort']);_0x5e582c[_0x3c6e('0x47')]=qs[_0x3c6e('0x40')](_[_0x3c6e('0x48')](_0x49792a[_0x3c6e('0x3f')],_0x4dfb13[_0x3c6e('0x40')]),_0x5c3ca3);if(_0x49792a[_0x3c6e('0x3f')][_0x3c6e('0x49')]){_0x5e582c['where']=_[_0x3c6e('0x4a')](_0x5e582c[_0x3c6e('0x47')],{'$or':_[_0x3c6e('0x3a')](_0x5c3ca3,function(_0xa88f4a){if(_0xa88f4a['type']!=='VIRTUAL'){var _0x449b1={};_0x449b1[_0xa88f4a[_0x3c6e('0x37')]]={'$like':'%'+_0x49792a[_0x3c6e('0x3f')]['filter']+'%'};return _0x449b1;}})});}_0x5e582c=_['merge']({},_0x5e582c,_0x49792a[_0x3c6e('0x4b')]);var _0x1ecc06={'where':_0x5e582c[_0x3c6e('0x47')]};return db['ChatMessage']['count'](_0x1ecc06)[_0x3c6e('0x33')](function(_0x1c6129){_0x5ccd97[_0x3c6e('0x4c')]=_0x1c6129;if(_0x49792a[_0x3c6e('0x3f')][_0x3c6e('0x4d')]){_0x5e582c[_0x3c6e('0x4e')]=[{'all':!![]}];}return db[_0x3c6e('0x3b')][_0x3c6e('0x4f')](_0x5e582c);})[_0x3c6e('0x33')](function(_0x502938){_0x5ccd97['rows']=_0x502938;return _0x5ccd97;})[_0x3c6e('0x33')](respondWithFilteredResult(_0x3a67b,_0x5e582c))[_0x3c6e('0x29')](handleError(_0x3a67b,null));};exports[_0x3c6e('0x50')]=function(_0x437a96,_0x349916){var _0x17fc29={'raw':!![],'where':{'id':_0x437a96['params']['id']}},_0x3ce16f={};_0x3ce16f[_0x3c6e('0x41')]=_[_0x3c6e('0x3e')](db[_0x3c6e('0x3b')][_0x3c6e('0x3c')]);_0x3ce16f[_0x3c6e('0x3f')]=_[_0x3c6e('0x3e')](_0x437a96[_0x3c6e('0x3f')]);_0x3ce16f[_0x3c6e('0x40')]=_[_0x3c6e('0x51')](_0x3ce16f[_0x3c6e('0x41')],_0x3ce16f[_0x3c6e('0x3f')]);_0x17fc29[_0x3c6e('0x42')]=_['intersection'](_0x3ce16f[_0x3c6e('0x41')],qs[_0x3c6e('0x43')](_0x437a96[_0x3c6e('0x3f')]['fields']));_0x17fc29[_0x3c6e('0x42')]=_0x17fc29[_0x3c6e('0x42')][_0x3c6e('0x52')]?_0x17fc29[_0x3c6e('0x42')]:_0x3ce16f['model'];if(_0x437a96[_0x3c6e('0x3f')]['includeAll']){_0x17fc29[_0x3c6e('0x4e')]=[{'all':!![]}];}_0x17fc29=_[_0x3c6e('0x4a')]({},_0x17fc29,_0x437a96[_0x3c6e('0x4b')]);return db['ChatMessage'][_0x3c6e('0x53')](_0x17fc29)[_0x3c6e('0x33')](handleEntityNotFound(_0x349916,null))[_0x3c6e('0x33')](respondWithResult(_0x349916,null))[_0x3c6e('0x29')](handleError(_0x349916,null));};exports[_0x3c6e('0x54')]=function(_0x355736,_0x4773be){return db['ChatMessage'][_0x3c6e('0x54')](_0x355736[_0x3c6e('0x55')],{})[_0x3c6e('0x33')](respondWithResult(_0x4773be,0xc9))[_0x3c6e('0x29')](handleError(_0x4773be,null));};exports[_0x3c6e('0x32')]=function(_0x2c73bc,_0x14190a){if(_0x2c73bc['body']['id']){delete _0x2c73bc[_0x3c6e('0x55')]['id'];}return db[_0x3c6e('0x3b')][_0x3c6e('0x53')]({'where':{'id':_0x2c73bc[_0x3c6e('0x56')]['id']}})[_0x3c6e('0x33')](handleEntityNotFound(_0x14190a,null))[_0x3c6e('0x33')](saveUpdates(_0x2c73bc[_0x3c6e('0x55')],null))[_0x3c6e('0x33')](respondWithResult(_0x14190a,null))['catch'](handleError(_0x14190a,null));};exports[_0x3c6e('0x34')]=function(_0x462180,_0x1ae05){return db['ChatMessage']['find']({'where':{'id':_0x462180['params']['id']}})['then'](handleEntityNotFound(_0x1ae05,null))['then'](removeEntity(_0x1ae05,null))[_0x3c6e('0x29')](handleError(_0x1ae05,null));};exports[_0x3c6e('0x57')]=function(_0x1ac792,_0x211943){return db[_0x3c6e('0x3b')]['describe']()['then'](respondWithResult(_0x211943,null))[_0x3c6e('0x29')](handleError(_0x211943,null));};var interaction_log=require('../../config/logger')(_0x3c6e('0x58'));exports[_0x3c6e('0x59')]=function(_0x48a1c5,_0x9e2cf5,_0x4d029e){var _0x21de82={'channel':'chat'};if(_0x48a1c5['body']['id']){delete _0x48a1c5['body']['id'];}_0x48a1c5['body'][_0x3c6e('0x5a')]=!![];_0x48a1c5[_0x3c6e('0x55')][_0x3c6e('0x5b')]=moment()[_0x3c6e('0x5c')]('YYYY-MM-DD\x20HH:mm:ss');_0x48a1c5[_0x3c6e('0x55')][_0x3c6e('0x5d')]=_0x48a1c5['body'][_0x3c6e('0x5d')]||_0x48a1c5['user']['id'];return db[_0x3c6e('0x3b')]['find']({'where':{'id':_0x48a1c5[_0x3c6e('0x56')]['id'],'UserId':null},'include':[{'model':db[_0x3c6e('0x5e')],'as':_0x3c6e('0x5f')}]})[_0x3c6e('0x33')](handleEntityNotFound(_0x9e2cf5,null))[_0x3c6e('0x33')](saveUpdates(_0x48a1c5['body'],null))['then'](function(_0x5e0aa3){if(_0x5e0aa3){_0x21de82[_0x3c6e('0x28')]=_0x5e0aa3['get']({'plain':!![]});return db['ChatInteraction'][_0x3c6e('0x53')]({'where':{'id':_0x5e0aa3[_0x3c6e('0x60')]}});}return null;})[_0x3c6e('0x33')](handleEntityNotFound(_0x9e2cf5,null))[_0x3c6e('0x33')](function(_0x8d1702){if(_0x8d1702){return _0x8d1702['update']({'UserId':_0x48a1c5[_0x3c6e('0x55')][_0x3c6e('0x5d')],'read1stAt':_['isNil'](_0x8d1702[_0x3c6e('0x61')])?moment()[_0x3c6e('0x5c')](_0x3c6e('0x62')):undefined});}return null;})[_0x3c6e('0x33')](function(_0x434c3c){if(_0x434c3c){_0x21de82['interaction']=_0x434c3c[_0x3c6e('0x63')]({'plain':!![]});interaction_log[_0x3c6e('0x21')](_0x3c6e('0x64'),_0x48a1c5[_0x3c6e('0x65')]['id'],_0x48a1c5[_0x3c6e('0x65')][_0x3c6e('0x37')],_0x48a1c5['user'][_0x3c6e('0x66')],_0x21de82[_0x3c6e('0x67')]['id'],_0x48a1c5[_0x3c6e('0x55')]?JSON[_0x3c6e('0x68')](_0x48a1c5[_0x3c6e('0x55')]):'null');return respondWithRpcPromise('AcceptMessage',_0x3c6e('0x69'),_0x21de82);}return null;})[_0x3c6e('0x33')](function(_0x2371f0){if(_0x2371f0){if(_0x48a1c5[_0x3c6e('0x55')][_0x3c6e('0x6a')]){_0x21de82[_0x3c6e('0x28')]['interface']=util[_0x3c6e('0x5c')]('SIP/%s',_0x48a1c5[_0x3c6e('0x65')][_0x3c6e('0x37')]);_0x21de82[_0x3c6e('0x28')]['channel']=_0x21de82[_0x3c6e('0x6b')];_0x21de82[_0x3c6e('0x28')][_0x3c6e('0x6c')]=_0x3c6e('0x59');return respondWithRpcPromise('EventManager',_0x3c6e('0x6d'),{'event':_0x3c6e('0x6e'),'message':_['merge'](_0x21de82[_0x3c6e('0x28')],JSON[_0x3c6e('0x6f')](_0x21de82['interaction']['formData']))},client9002)[_0x3c6e('0x33')](function(){return _0x21de82;});}return _0x21de82;}return null;})['then'](respondWithResult(_0x9e2cf5,null))[_0x3c6e('0x29')](handleError(_0x9e2cf5,null));};var interaction_log=require(_0x3c6e('0x15'))(_0x3c6e('0x58'));exports[_0x3c6e('0x30')]=function(_0x49b848,_0x2b9433,_0x2d8b5f){var _0x16ef07={'agent':{},'channel':_0x3c6e('0x70')};if(_0x49b848[_0x3c6e('0x55')]['id']){delete _0x49b848[_0x3c6e('0x55')]['id'];}_0x49b848[_0x3c6e('0x55')][_0x3c6e('0x5d')]=_0x49b848['body'][_0x3c6e('0x5d')]||_0x49b848['user']['id'];_0x16ef07[_0x3c6e('0x71')]['id']=_0x49b848[_0x3c6e('0x55')][_0x3c6e('0x5d')];return db['ChatMessage'][_0x3c6e('0x53')]({'where':{'id':_0x49b848['params']['id'],'UserId':null}})['then'](handleEntityNotFound(_0x2b9433,null))[_0x3c6e('0x33')](function(_0x311f0a){if(_0x311f0a){_0x16ef07['message']=_0x311f0a[_0x3c6e('0x63')]({'plain':!![]});return db[_0x3c6e('0x72')]['find']({'where':{'id':_0x311f0a[_0x3c6e('0x60')]}});}return null;})[_0x3c6e('0x33')](handleEntityNotFound(_0x2b9433,null))['then'](function(_0xa6aaf6){if(_0xa6aaf6){_0x16ef07[_0x3c6e('0x67')]=_0xa6aaf6['get']({'plain':!![]});interaction_log[_0x3c6e('0x21')](_0x3c6e('0x73'),_0x49b848['user']['id'],_0x49b848[_0x3c6e('0x65')][_0x3c6e('0x37')],_0x49b848[_0x3c6e('0x65')]['role'],_0x16ef07[_0x3c6e('0x67')]['id'],_0x49b848[_0x3c6e('0x55')]?JSON[_0x3c6e('0x68')](_0x49b848['body']):_0x3c6e('0x74'));return respondWithRpcPromise(_0x3c6e('0x75'),_0x3c6e('0x76'),_0x16ef07);}return null;})['then'](function(_0x12ccda){if(_0x12ccda){_0x12ccda[_0x3c6e('0x28')][_0x3c6e('0x77')]=util['format']('SIP/%s',_0x49b848[_0x3c6e('0x65')][_0x3c6e('0x37')]);_0x12ccda['message'][_0x3c6e('0x6b')]=_0x16ef07[_0x3c6e('0x6b')];_0x12ccda[_0x3c6e('0x28')]['event']=_0x3c6e('0x30');respondWithRpcPromise(_0x3c6e('0x6d'),'EventManager',{'event':_0x3c6e('0x78'),'message':_0x12ccda[_0x3c6e('0x28')]},client9002);return _0x16ef07;}return null;})[_0x3c6e('0x33')](respondWithResult(_0x2b9433,null))['catch'](handleError(_0x2b9433,null));};
\ No newline at end of file
+var _0x4ed6=['sequelize','QueryTypes','SELECT','contact','fullname','interface','format','channel','EventManager','rejectmessage','parse','formData','util','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','then','info','ChatMessage,\x20%s,\x20%s','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','request\x20sent','result','catch','status','json','offset','undefined','count','Content-Range','destroy','end','sendStatus','stack','name','send','index','map','ChatMessage','fieldName','key','model','keys','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','sort','where','pick','filters','filter','merge','type','VIRTUAL','options','includeAll','include','findAll','params','rawAttributes','create','update','body','find','describe','accept','chat','acceptMessage','reject','UserId','user','agent','get','ChatInteractionId','interaction','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','RejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'];(function(_0x516132,_0x8ad071){var _0x10b198=function(_0x41dcd9){while(--_0x41dcd9){_0x516132['push'](_0x516132['shift']());}};_0x10b198(++_0x8ad071);}(_0x4ed6,0xd8));var _0x64ed=function(_0x4f832f,_0x511dff){_0x4f832f=_0x4f832f-0x0;var _0x1c68f9=_0x4ed6[_0x4f832f];return _0x1c68f9;};'use strict';var util=require(_0x64ed('0x0'));var _=require(_0x64ed('0x1'));var Redis=require(_0x64ed('0x2'));var interactionService=require(_0x64ed('0x3'));var qs=require(_0x64ed('0x4'));var logger=require(_0x64ed('0x5'))(_0x64ed('0x6'));var config=require(_0x64ed('0x7'));var db=require(_0x64ed('0x8'))['db'];config[_0x64ed('0x9')]=_[_0x64ed('0xa')](config[_0x64ed('0x9')],{'host':_0x64ed('0xb'),'port':0x18eb});var socket=require(_0x64ed('0xc'))(new Redis(config[_0x64ed('0x9')]));require(_0x64ed('0xd'))[_0x64ed('0xe')](socket);var jayson=require(_0x64ed('0xf'));var client=jayson[_0x64ed('0x10')][_0x64ed('0x11')]({'port':0x232c});var client9002=jayson[_0x64ed('0x10')][_0x64ed('0x11')]({'port':0x232a});var interaction_log=require(_0x64ed('0x5'))('chat-interactions');function respondWithRpcPromise(_0x4d372b,_0x5cc453,_0x439eb4,_0x1cce0c){return new Promise(function(_0x3ae23b,_0x452622){var _0xae883b=_0x1cce0c||client;return _0xae883b['request'](_0x4d372b,_0x439eb4)[_0x64ed('0x12')](function(_0x398e61){logger[_0x64ed('0x13')](_0x64ed('0x14'),_0x5cc453,'request\x20sent');logger[_0x64ed('0x15')](_0x64ed('0x16'),_0x5cc453,'request\x20sent',JSON[_0x64ed('0x17')](_0x398e61));if(_0x398e61[_0x64ed('0x18')]){if(_0x398e61['error'][_0x64ed('0x19')]===0x1f4){logger[_0x64ed('0x18')](_0x64ed('0x14'),_0x5cc453,_0x398e61[_0x64ed('0x18')]['message']);return _0x452622(_0x398e61[_0x64ed('0x18')][_0x64ed('0x1a')]);}logger[_0x64ed('0x18')]('ChatMessage,\x20%s,\x20%s',_0x5cc453,_0x398e61[_0x64ed('0x18')][_0x64ed('0x1a')]);return _0x3ae23b(_0x398e61[_0x64ed('0x18')]['message']);}else{logger[_0x64ed('0x13')]('ChatMessage,\x20%s,\x20%s',_0x5cc453,_0x64ed('0x1b'));_0x3ae23b(_0x398e61[_0x64ed('0x1c')][_0x64ed('0x1a')]);}})[_0x64ed('0x1d')](function(_0x5ab531){logger[_0x64ed('0x18')](_0x64ed('0x14'),_0x5cc453,_0x5ab531);_0x452622(_0x5ab531);});});}function respondWithResult(_0x3baeb4,_0x41a02b){_0x41a02b=_0x41a02b||0xc8;return function(_0xa8eac6){if(_0xa8eac6){return _0x3baeb4[_0x64ed('0x1e')](_0x41a02b)[_0x64ed('0x1f')](_0xa8eac6);}};}function respondWithFilteredResult(_0x83d90a,_0x3cd3df){return function(_0xb115c){if(_0xb115c){var _0x1ecd32=typeof _0x3cd3df[_0x64ed('0x20')]===_0x64ed('0x21')&&typeof _0x3cd3df['limit']===_0x64ed('0x21');var _0x55f942=_0xb115c[_0x64ed('0x22')];var _0x35757e=_0x1ecd32?0x0:_0x3cd3df[_0x64ed('0x20')];var _0x542c47=_0x1ecd32?_0xb115c[_0x64ed('0x22')]:_0x3cd3df[_0x64ed('0x20')]+_0x3cd3df['limit'];var _0x382367;if(_0x542c47>=_0x55f942){_0x542c47=_0x55f942;_0x382367=0xc8;}else{_0x382367=0xce;}_0x83d90a[_0x64ed('0x1e')](_0x382367);return _0x83d90a['set'](_0x64ed('0x23'),_0x35757e+'-'+_0x542c47+'/'+_0x55f942)['json'](_0xb115c);}return null;};}function saveUpdates(_0x47e54f){return function(_0x2bc47a){if(_0x2bc47a){return _0x2bc47a['update'](_0x47e54f)[_0x64ed('0x12')](function(_0x255185){return _0x255185;});}return null;};}function removeEntity(_0x19a680){return function(_0x42e91f){if(_0x42e91f){return _0x42e91f[_0x64ed('0x24')]()['then'](function(){_0x19a680[_0x64ed('0x1e')](0xcc)[_0x64ed('0x25')]();});}};}function handleEntityNotFound(_0x323b98){return function(_0x3e805c){if(!_0x3e805c){_0x323b98[_0x64ed('0x26')](0x194);}return _0x3e805c;};}function handleError(_0x31fe89,_0x22a268){_0x22a268=_0x22a268||0x1f4;return function(_0x54f712){logger[_0x64ed('0x18')](_0x54f712[_0x64ed('0x27')]);if(_0x54f712['name']){delete _0x54f712[_0x64ed('0x28')];}_0x31fe89[_0x64ed('0x1e')](_0x22a268)[_0x64ed('0x29')](_0x54f712);};}exports[_0x64ed('0x2a')]=function(_0x2af688,_0x184729){var _0x33ee9e={},_0x1aa4bc={},_0x210980={'count':0x0,'rows':[]};var _0x2d2c86=_[_0x64ed('0x2b')](db[_0x64ed('0x2c')]['rawAttributes'],function(_0x2b050f){return{'name':_0x2b050f[_0x64ed('0x2d')],'type':_0x2b050f['type'][_0x64ed('0x2e')]};});_0x1aa4bc[_0x64ed('0x2f')]=_['map'](_0x2d2c86,_0x64ed('0x28'));_0x1aa4bc['query']=_[_0x64ed('0x30')](_0x2af688[_0x64ed('0x31')]);_0x1aa4bc['filters']=_[_0x64ed('0x32')](_0x1aa4bc['model'],_0x1aa4bc[_0x64ed('0x31')]);_0x33ee9e['attributes']=_[_0x64ed('0x32')](_0x1aa4bc[_0x64ed('0x2f')],qs[_0x64ed('0x33')](_0x2af688['query']['fields']));_0x33ee9e['attributes']=_0x33ee9e[_0x64ed('0x34')][_0x64ed('0x35')]?_0x33ee9e[_0x64ed('0x34')]:_0x1aa4bc[_0x64ed('0x2f')];if(!_0x2af688[_0x64ed('0x31')][_0x64ed('0x36')](_0x64ed('0x37'))){_0x33ee9e['limit']=qs['limit'](_0x2af688[_0x64ed('0x31')][_0x64ed('0x38')]);_0x33ee9e[_0x64ed('0x20')]=qs[_0x64ed('0x20')](_0x2af688[_0x64ed('0x31')][_0x64ed('0x20')]);}_0x33ee9e['order']=qs[_0x64ed('0x39')](_0x2af688['query'][_0x64ed('0x39')]);_0x33ee9e[_0x64ed('0x3a')]=qs['filters'](_[_0x64ed('0x3b')](_0x2af688['query'],_0x1aa4bc[_0x64ed('0x3c')]),_0x2d2c86);if(_0x2af688[_0x64ed('0x31')][_0x64ed('0x3d')]){_0x33ee9e[_0x64ed('0x3a')]=_[_0x64ed('0x3e')](_0x33ee9e[_0x64ed('0x3a')],{'$or':_[_0x64ed('0x2b')](_0x2d2c86,function(_0x5187fd){if(_0x5187fd[_0x64ed('0x3f')]!==_0x64ed('0x40')){var _0x3b6334={};_0x3b6334[_0x5187fd[_0x64ed('0x28')]]={'$like':'%'+_0x2af688[_0x64ed('0x31')][_0x64ed('0x3d')]+'%'};return _0x3b6334;}})});}_0x33ee9e=_[_0x64ed('0x3e')]({},_0x33ee9e,_0x2af688[_0x64ed('0x41')]);var _0x2251e1={'where':_0x33ee9e[_0x64ed('0x3a')]};return db[_0x64ed('0x2c')][_0x64ed('0x22')](_0x2251e1)[_0x64ed('0x12')](function(_0x4e9f0d){_0x210980[_0x64ed('0x22')]=_0x4e9f0d;if(_0x2af688[_0x64ed('0x31')][_0x64ed('0x42')]){_0x33ee9e[_0x64ed('0x43')]=[{'all':!![]}];}return db['ChatMessage'][_0x64ed('0x44')](_0x33ee9e);})['then'](function(_0x2d51e5){_0x210980['rows']=_0x2d51e5;return _0x210980;})[_0x64ed('0x12')](respondWithFilteredResult(_0x184729,_0x33ee9e))[_0x64ed('0x1d')](handleError(_0x184729,null));};exports['show']=function(_0x288d95,_0x3e7fc8){var _0x541395={'raw':!![],'where':{'id':_0x288d95[_0x64ed('0x45')]['id']}},_0x203410={};_0x203410[_0x64ed('0x2f')]=_[_0x64ed('0x30')](db[_0x64ed('0x2c')][_0x64ed('0x46')]);_0x203410[_0x64ed('0x31')]=_[_0x64ed('0x30')](_0x288d95['query']);_0x203410['filters']=_[_0x64ed('0x32')](_0x203410['model'],_0x203410['query']);_0x541395[_0x64ed('0x34')]=_[_0x64ed('0x32')](_0x203410[_0x64ed('0x2f')],qs[_0x64ed('0x33')](_0x288d95[_0x64ed('0x31')][_0x64ed('0x33')]));_0x541395[_0x64ed('0x34')]=_0x541395[_0x64ed('0x34')]['length']?_0x541395[_0x64ed('0x34')]:_0x203410[_0x64ed('0x2f')];if(_0x288d95[_0x64ed('0x31')][_0x64ed('0x42')]){_0x541395[_0x64ed('0x43')]=[{'all':!![]}];}_0x541395=_['merge']({},_0x541395,_0x288d95[_0x64ed('0x41')]);return db['ChatMessage']['find'](_0x541395)[_0x64ed('0x12')](handleEntityNotFound(_0x3e7fc8,null))['then'](respondWithResult(_0x3e7fc8,null))[_0x64ed('0x1d')](handleError(_0x3e7fc8,null));};exports[_0x64ed('0x47')]=function(_0x570fe8,_0x5dea8a){return db[_0x64ed('0x2c')][_0x64ed('0x47')](_0x570fe8['body'],{})[_0x64ed('0x12')](respondWithResult(_0x5dea8a,0xc9))[_0x64ed('0x1d')](handleError(_0x5dea8a,null));};exports[_0x64ed('0x48')]=function(_0x5ac811,_0x2d8e07){if(_0x5ac811[_0x64ed('0x49')]['id']){delete _0x5ac811['body']['id'];}return db[_0x64ed('0x2c')][_0x64ed('0x4a')]({'where':{'id':_0x5ac811[_0x64ed('0x45')]['id']}})['then'](handleEntityNotFound(_0x2d8e07,null))['then'](saveUpdates(_0x5ac811[_0x64ed('0x49')],null))[_0x64ed('0x12')](respondWithResult(_0x2d8e07,null))[_0x64ed('0x1d')](handleError(_0x2d8e07,null));};exports[_0x64ed('0x24')]=function(_0x34c4bb,_0x3c3734){return db[_0x64ed('0x2c')][_0x64ed('0x4a')]({'where':{'id':_0x34c4bb[_0x64ed('0x45')]['id']}})[_0x64ed('0x12')](handleEntityNotFound(_0x3c3734,null))[_0x64ed('0x12')](removeEntity(_0x3c3734,null))[_0x64ed('0x1d')](handleError(_0x3c3734,null));};exports[_0x64ed('0x4b')]=function(_0x201dc6,_0x2cfadf){return db['ChatMessage'][_0x64ed('0x4b')]()[_0x64ed('0x12')](respondWithResult(_0x2cfadf,null))[_0x64ed('0x1d')](handleError(_0x2cfadf,null));};exports[_0x64ed('0x4c')]=function(_0x13a3f3,_0x360ae8){var _0x31bfd9=_0x64ed('0x4d');return interactionService[_0x64ed('0x4e')](_0x13a3f3,_0x31bfd9)[_0x64ed('0x12')](respondWithResult(_0x360ae8,null))['catch'](handleError(_0x360ae8,null));};exports[_0x64ed('0x4f')]=function(_0x233f08,_0x2942c9){var _0x59027c={'agent':{},'channel':'chat'};if(_0x233f08['body']['id']){delete _0x233f08[_0x64ed('0x49')]['id'];}_0x233f08[_0x64ed('0x49')][_0x64ed('0x50')]=_0x233f08[_0x64ed('0x49')]['UserId']||_0x233f08[_0x64ed('0x51')]['id'];_0x59027c[_0x64ed('0x52')]['id']=_0x233f08[_0x64ed('0x49')]['UserId'];return db[_0x64ed('0x2c')][_0x64ed('0x4a')]({'where':{'id':_0x233f08[_0x64ed('0x45')]['id'],'UserId':null}})[_0x64ed('0x12')](handleEntityNotFound(_0x2942c9,null))['then'](function(_0x402373){if(_0x402373){_0x59027c[_0x64ed('0x1a')]=_0x402373[_0x64ed('0x53')]({'plain':!![]});return db['ChatInteraction'][_0x64ed('0x4a')]({'where':{'id':_0x402373[_0x64ed('0x54')]}});}return null;})[_0x64ed('0x12')](handleEntityNotFound(_0x2942c9,null))['then'](function(_0xf3ad1f){if(_0xf3ad1f){_0x59027c[_0x64ed('0x55')]=_0xf3ad1f[_0x64ed('0x53')]({'plain':!![]});interaction_log['info'](_0x64ed('0x56'),_0x233f08[_0x64ed('0x51')]['id'],_0x233f08['user']['name'],_0x233f08[_0x64ed('0x51')]['role'],_0x59027c[_0x64ed('0x55')]['id'],_0x233f08[_0x64ed('0x49')]?JSON[_0x64ed('0x17')](_0x233f08[_0x64ed('0x49')]):_0x64ed('0x57'));return respondWithRpcPromise(_0x64ed('0x58'),'rejectMessage',_0x59027c);}return null;})[_0x64ed('0x12')](function(_0x229f84){var _0x50ba98=_0x64ed('0x59')+_0x229f84[_0x64ed('0x1a')]['ContactId'];return db[_0x64ed('0x5a')]['query'](_0x50ba98,{'type':db['Sequelize'][_0x64ed('0x5b')][_0x64ed('0x5c')],'raw':!![]})['then'](function(_0x481189){return _0x481189;});})['then'](function(_0x51b91a){if(_0x51b91a){_0x59027c[_0x64ed('0x1a')][_0x64ed('0x5d')]=_0x51b91a[0x0];if(!_0x233f08[_0x64ed('0x49')][_0x64ed('0x50')])return;return db['User'][_0x64ed('0x4a')]({'where':{'id':_0x233f08[_0x64ed('0x49')][_0x64ed('0x50')],'role':_0x64ed('0x52')},'attributes':['id',_0x64ed('0x28'),_0x64ed('0x5e'),'email','internal'],'raw':!![]});}return null;})[_0x64ed('0x12')](function(_0x5e7b88){if(!_0x5e7b88)return null;_0x59027c[_0x64ed('0x1a')][_0x64ed('0x52')]=_0x5e7b88;return _0x59027c;})['then'](function(_0x38d0ca){if(_0x38d0ca){_0x38d0ca[_0x64ed('0x1a')][_0x64ed('0x5f')]=util[_0x64ed('0x60')]('SIP/%s',_0x233f08[_0x64ed('0x51')][_0x64ed('0x28')]);_0x38d0ca[_0x64ed('0x1a')]['channel']=_0x59027c[_0x64ed('0x61')];_0x38d0ca[_0x64ed('0x1a')]['motionChannel']=_0x59027c['channel'];_0x38d0ca[_0x64ed('0x1a')]['event']='reject';respondWithRpcPromise('EventManager',_0x64ed('0x62'),{'event':_0x64ed('0x63'),'message':_['merge'](_0x59027c[_0x64ed('0x1a')],JSON[_0x64ed('0x64')](_0x59027c[_0x64ed('0x55')][_0x64ed('0x65')]))},client9002);return _0x59027c;}return null;})[_0x64ed('0x12')](respondWithResult(_0x2942c9,null))[_0x64ed('0x1d')](handleError(_0x2942c9,null));};
\ No newline at end of file