Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 4f824f2..8bca6a4 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf92c=['destroy','stack','name','send','index','ChatMessage','rawAttributes','fieldName','type','key','map','query','keys','filters','intersection','attributes','model','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','merge','VIRTUAL','options','where','includeAll','include','findAll','rows','show','params','find','create','body','describe','accept','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','ChatInteraction','ChatInteractionId','read1stAt','interaction','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','Sequelize','QueryTypes','SELECT','contact','User','fullname','email','internal','manual','interface','channel','event','EventManager','parse','formData','null','RejectMessage','rejectMessage','ContactId','SIP/%s','motionChannel','reject','rejectmessage','eml-format','rimraf','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','crypto','desk.js','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./chatMessage.socket','jayson/promise','client','http','request','info','ChatMessage,\x20%s,\x20%s','debug','ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','sendStatus','status','end','offset','undefined','limit','count','json','save','update','then'];(function(_0x17effe,_0x19ece3){var _0x12ff05=function(_0x2c1231){while(--_0x2c1231){_0x17effe['push'](_0x17effe['shift']());}};_0x12ff05(++_0x19ece3);}(_0xf92c,0xd8));var _0xcf92=function(_0x2bf141,_0x31eac7){_0x2bf141=_0x2bf141-0x0;var _0x48277b=_0xf92c[_0x2bf141];return _0x48277b;};'use strict';var emlformat=require(_0xcf92('0x0'));var rimraf=require(_0xcf92('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xcf92('0x2'));var rp=require('request-promise');var moment=require(_0xcf92('0x3'));var BPromise=require(_0xcf92('0x4'));var Mustache=require(_0xcf92('0x5'));var util=require(_0xcf92('0x6'));var path=require(_0xcf92('0x7'));var sox=require(_0xcf92('0x8'));var csv=require(_0xcf92('0x9'));var ejs=require(_0xcf92('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require('squel');var crypto=require(_0xcf92('0xb'));var jsforce=require('jsforce');var deskjs=require(_0xcf92('0xc'));var toCsv=require(_0xcf92('0x9'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xcf92('0xd'));var authService=require(_0xcf92('0xe'));var qs=require(_0xcf92('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xcf92('0x10'));var logger=require(_0xcf92('0x11'))(_0xcf92('0x12'));var utils=require(_0xcf92('0x13'));var config=require(_0xcf92('0x14'));var licenseUtil=require(_0xcf92('0x15'));var db=require(_0xcf92('0x16'))['db'];config['redis']=_[_0xcf92('0x17')](config[_0xcf92('0x18')],{'host':_0xcf92('0x19'),'port':0x18eb});var socket=require(_0xcf92('0x1a'))(new Redis(config[_0xcf92('0x18')]));require(_0xcf92('0x1b'))['register'](socket);var jayson=require(_0xcf92('0x1c'));var client=jayson[_0xcf92('0x1d')][_0xcf92('0x1e')]({'port':0x232c});var client9002=jayson[_0xcf92('0x1d')][_0xcf92('0x1e')]({'port':0x232a});function respondWithRpcPromise(_0x239f49,_0x86d34e,_0x177751,_0x34b0fd){return new BPromise(function(_0x2819eb,_0x5312a3){var _0x1c7a28=_0x34b0fd||client;return _0x1c7a28[_0xcf92('0x1f')](_0x239f49,_0x177751)['then'](function(_0x51b954){logger[_0xcf92('0x20')](_0xcf92('0x21'),_0x86d34e,'request\x20sent');logger[_0xcf92('0x22')](_0xcf92('0x23'),_0x86d34e,_0xcf92('0x24'),JSON[_0xcf92('0x25')](_0x51b954));if(_0x51b954[_0xcf92('0x26')]){if(_0x51b954[_0xcf92('0x26')][_0xcf92('0x27')]===0x1f4){logger['error'](_0xcf92('0x21'),_0x86d34e,_0x51b954[_0xcf92('0x26')][_0xcf92('0x28')]);return _0x5312a3(_0x51b954['error'][_0xcf92('0x28')]);}logger[_0xcf92('0x26')](_0xcf92('0x21'),_0x86d34e,_0x51b954[_0xcf92('0x26')][_0xcf92('0x28')]);return _0x2819eb(_0x51b954[_0xcf92('0x26')][_0xcf92('0x28')]);}else{logger[_0xcf92('0x20')](_0xcf92('0x21'),_0x86d34e,_0xcf92('0x24'));_0x2819eb(_0x51b954[_0xcf92('0x29')]['message']);}})[_0xcf92('0x2a')](function(_0xb83ab2){logger['error'](_0xcf92('0x21'),_0x86d34e,_0xb83ab2);_0x5312a3(_0xb83ab2);});});}function respondWithStatusCode(_0x220698,_0x3b09ad){_0x3b09ad=_0x3b09ad||0xcc;return function(_0x27a79e){if(_0x27a79e){return _0x220698[_0xcf92('0x2b')](_0x3b09ad);}return _0x220698[_0xcf92('0x2c')](_0x3b09ad)[_0xcf92('0x2d')]();};}function respondWithResult(_0x3b36d3,_0x52fbfa){_0x52fbfa=_0x52fbfa||0xc8;return function(_0x161caf){if(_0x161caf){return _0x3b36d3['status'](_0x52fbfa)['json'](_0x161caf);}};}function respondWithFilteredResult(_0x4b7f8b,_0x3de2ec){return function(_0x5c2be4){if(_0x5c2be4){var _0x1b2731=typeof _0x3de2ec[_0xcf92('0x2e')]===_0xcf92('0x2f')&&typeof _0x3de2ec[_0xcf92('0x30')]===_0xcf92('0x2f');var _0x11e851=_0x5c2be4[_0xcf92('0x31')];var _0x398b2a=_0x1b2731?0x0:_0x3de2ec['offset'];var _0x43fb28=_0x1b2731?_0x5c2be4[_0xcf92('0x31')]:_0x3de2ec[_0xcf92('0x2e')]+_0x3de2ec[_0xcf92('0x30')];var _0x26e5fa;if(_0x43fb28>=_0x11e851){_0x43fb28=_0x11e851;_0x26e5fa=0xc8;}else{_0x26e5fa=0xce;}_0x4b7f8b['status'](_0x26e5fa);return _0x4b7f8b['set']('Content-Range',_0x398b2a+'-'+_0x43fb28+'/'+_0x11e851)[_0xcf92('0x32')](_0x5c2be4);}return null;};}function patchUpdates(_0x2caccc){return function(_0x3df8e7){try{jsonpatch['apply'](_0x3df8e7,_0x2caccc,!![]);}catch(_0x17f51e){return BPromise['reject'](_0x17f51e);}return _0x3df8e7[_0xcf92('0x33')]();};}function saveUpdates(_0x2ff39d,_0x23fb07){return function(_0x488f0e){if(_0x488f0e){return _0x488f0e[_0xcf92('0x34')](_0x2ff39d)[_0xcf92('0x35')](function(_0xb30017){return _0xb30017;});}return null;};}function removeEntity(_0x13ebe4,_0x28d568){return function(_0x2d1a70){if(_0x2d1a70){return _0x2d1a70[_0xcf92('0x36')]()[_0xcf92('0x35')](function(){_0x13ebe4['status'](0xcc)[_0xcf92('0x2d')]();});}};}function handleEntityNotFound(_0x43811d,_0x1d1550){return function(_0x5ce307){if(!_0x5ce307){_0x43811d[_0xcf92('0x2b')](0x194);}return _0x5ce307;};}function handleError(_0xde6585,_0x478a73){_0x478a73=_0x478a73||0x1f4;return function(_0x307d2d){logger[_0xcf92('0x26')](_0x307d2d[_0xcf92('0x37')]);if(_0x307d2d[_0xcf92('0x38')]){delete _0x307d2d[_0xcf92('0x38')];}_0xde6585[_0xcf92('0x2c')](_0x478a73)[_0xcf92('0x39')](_0x307d2d);};}exports[_0xcf92('0x3a')]=function(_0x1aa2bf,_0x575711){var _0x3e8fdc={},_0x1d112f={},_0xe31d96={'count':0x0,'rows':[]};var _0x11e3b4=_['map'](db[_0xcf92('0x3b')][_0xcf92('0x3c')],function(_0x4cc317){return{'name':_0x4cc317[_0xcf92('0x3d')],'type':_0x4cc317[_0xcf92('0x3e')][_0xcf92('0x3f')]};});_0x1d112f['model']=_[_0xcf92('0x40')](_0x11e3b4,_0xcf92('0x38'));_0x1d112f[_0xcf92('0x41')]=_[_0xcf92('0x42')](_0x1aa2bf[_0xcf92('0x41')]);_0x1d112f[_0xcf92('0x43')]=_[_0xcf92('0x44')](_0x1d112f['model'],_0x1d112f[_0xcf92('0x41')]);_0x3e8fdc[_0xcf92('0x45')]=_['intersection'](_0x1d112f[_0xcf92('0x46')],qs['fields'](_0x1aa2bf[_0xcf92('0x41')][_0xcf92('0x47')]));_0x3e8fdc[_0xcf92('0x45')]=_0x3e8fdc[_0xcf92('0x45')][_0xcf92('0x48')]?_0x3e8fdc[_0xcf92('0x45')]:_0x1d112f['model'];if(!_0x1aa2bf[_0xcf92('0x41')][_0xcf92('0x49')](_0xcf92('0x4a'))){_0x3e8fdc['limit']=qs[_0xcf92('0x30')](_0x1aa2bf[_0xcf92('0x41')][_0xcf92('0x30')]);_0x3e8fdc[_0xcf92('0x2e')]=qs[_0xcf92('0x2e')](_0x1aa2bf['query'][_0xcf92('0x2e')]);}_0x3e8fdc[_0xcf92('0x4b')]=qs[_0xcf92('0x4c')](_0x1aa2bf[_0xcf92('0x41')][_0xcf92('0x4c')]);_0x3e8fdc['where']=qs['filters'](_[_0xcf92('0x4d')](_0x1aa2bf[_0xcf92('0x41')],_0x1d112f[_0xcf92('0x43')]),_0x11e3b4);if(_0x1aa2bf['query'][_0xcf92('0x4e')]){_0x3e8fdc['where']=_[_0xcf92('0x4f')](_0x3e8fdc['where'],{'$or':_[_0xcf92('0x40')](_0x11e3b4,function(_0x1f543b){if(_0x1f543b[_0xcf92('0x3e')]!==_0xcf92('0x50')){var _0x3a2189={};_0x3a2189[_0x1f543b[_0xcf92('0x38')]]={'$like':'%'+_0x1aa2bf['query'][_0xcf92('0x4e')]+'%'};return _0x3a2189;}})});}_0x3e8fdc=_[_0xcf92('0x4f')]({},_0x3e8fdc,_0x1aa2bf[_0xcf92('0x51')]);var _0x4aad08={'where':_0x3e8fdc[_0xcf92('0x52')]};return db[_0xcf92('0x3b')][_0xcf92('0x31')](_0x4aad08)[_0xcf92('0x35')](function(_0x5ac9dc){_0xe31d96[_0xcf92('0x31')]=_0x5ac9dc;if(_0x1aa2bf['query'][_0xcf92('0x53')]){_0x3e8fdc[_0xcf92('0x54')]=[{'all':!![]}];}return db[_0xcf92('0x3b')][_0xcf92('0x55')](_0x3e8fdc);})[_0xcf92('0x35')](function(_0x4213f3){_0xe31d96[_0xcf92('0x56')]=_0x4213f3;return _0xe31d96;})[_0xcf92('0x35')](respondWithFilteredResult(_0x575711,_0x3e8fdc))[_0xcf92('0x2a')](handleError(_0x575711,null));};exports[_0xcf92('0x57')]=function(_0x4cf6f9,_0x183486){var _0x3f405f={'raw':!![],'where':{'id':_0x4cf6f9[_0xcf92('0x58')]['id']}},_0x799e86={};_0x799e86[_0xcf92('0x46')]=_[_0xcf92('0x42')](db[_0xcf92('0x3b')][_0xcf92('0x3c')]);_0x799e86[_0xcf92('0x41')]=_['keys'](_0x4cf6f9[_0xcf92('0x41')]);_0x799e86[_0xcf92('0x43')]=_['intersection'](_0x799e86[_0xcf92('0x46')],_0x799e86[_0xcf92('0x41')]);_0x3f405f[_0xcf92('0x45')]=_['intersection'](_0x799e86[_0xcf92('0x46')],qs[_0xcf92('0x47')](_0x4cf6f9[_0xcf92('0x41')][_0xcf92('0x47')]));_0x3f405f[_0xcf92('0x45')]=_0x3f405f['attributes'][_0xcf92('0x48')]?_0x3f405f[_0xcf92('0x45')]:_0x799e86[_0xcf92('0x46')];if(_0x4cf6f9['query'][_0xcf92('0x53')]){_0x3f405f['include']=[{'all':!![]}];}_0x3f405f=_[_0xcf92('0x4f')]({},_0x3f405f,_0x4cf6f9['options']);return db[_0xcf92('0x3b')][_0xcf92('0x59')](_0x3f405f)[_0xcf92('0x35')](handleEntityNotFound(_0x183486,null))[_0xcf92('0x35')](respondWithResult(_0x183486,null))['catch'](handleError(_0x183486,null));};exports[_0xcf92('0x5a')]=function(_0x47492d,_0x443a64){return db['ChatMessage']['create'](_0x47492d['body'],{})[_0xcf92('0x35')](respondWithResult(_0x443a64,0xc9))[_0xcf92('0x2a')](handleError(_0x443a64,null));};exports[_0xcf92('0x34')]=function(_0x3b7f20,_0x530e8b){if(_0x3b7f20[_0xcf92('0x5b')]['id']){delete _0x3b7f20[_0xcf92('0x5b')]['id'];}return db['ChatMessage'][_0xcf92('0x59')]({'where':{'id':_0x3b7f20[_0xcf92('0x58')]['id']}})[_0xcf92('0x35')](handleEntityNotFound(_0x530e8b,null))[_0xcf92('0x35')](saveUpdates(_0x3b7f20['body'],null))[_0xcf92('0x35')](respondWithResult(_0x530e8b,null))[_0xcf92('0x2a')](handleError(_0x530e8b,null));};exports[_0xcf92('0x36')]=function(_0x4e3168,_0x47ed4c){return db[_0xcf92('0x3b')][_0xcf92('0x59')]({'where':{'id':_0x4e3168[_0xcf92('0x58')]['id']}})['then'](handleEntityNotFound(_0x47ed4c,null))[_0xcf92('0x35')](removeEntity(_0x47ed4c,null))['catch'](handleError(_0x47ed4c,null));};exports[_0xcf92('0x5c')]=function(_0x285396,_0x575de0){return db['ChatMessage'][_0xcf92('0x5c')]()[_0xcf92('0x35')](respondWithResult(_0x575de0,null))[_0xcf92('0x2a')](handleError(_0x575de0,null));};var interaction_log=require('../../config/logger')('chat-interactions');exports[_0xcf92('0x5d')]=function(_0x164cfc,_0x27718d,_0x14b406){var _0x14873d={'agent':{},'channel':'chat'};if(_0x164cfc[_0xcf92('0x5b')]['id']){delete _0x164cfc[_0xcf92('0x5b')]['id'];}_0x164cfc[_0xcf92('0x5b')][_0xcf92('0x5e')]=!![];_0x164cfc[_0xcf92('0x5b')][_0xcf92('0x5f')]=moment()[_0xcf92('0x60')](_0xcf92('0x61'));_0x164cfc[_0xcf92('0x5b')][_0xcf92('0x62')]=_0x164cfc[_0xcf92('0x5b')][_0xcf92('0x62')]||_0x164cfc[_0xcf92('0x63')]['id'];_0x14873d[_0xcf92('0x64')]['id']=_0x164cfc[_0xcf92('0x5b')][_0xcf92('0x62')];return db['ChatMessage']['find']({'where':{'id':_0x164cfc[_0xcf92('0x58')]['id'],'UserId':null}})[_0xcf92('0x35')](handleEntityNotFound(_0x27718d,null))[_0xcf92('0x35')](saveUpdates(_0x164cfc[_0xcf92('0x5b')],null))['then'](function(_0x3ff512){if(_0x3ff512){_0x14873d[_0xcf92('0x28')]=_0x3ff512['get']({'plain':!![]});return db[_0xcf92('0x65')][_0xcf92('0x59')]({'where':{'id':_0x3ff512[_0xcf92('0x66')]}});}return null;})[_0xcf92('0x35')](handleEntityNotFound(_0x27718d,null))[_0xcf92('0x35')](function(_0x2fbd6d){if(_0x2fbd6d){return _0x2fbd6d['update']({'UserId':_0x164cfc['body']['UserId'],'read1stAt':_['isNil'](_0x2fbd6d[_0xcf92('0x67')])?moment()[_0xcf92('0x60')](_0xcf92('0x61')):undefined});}return null;})[_0xcf92('0x35')](function(_0x269038){if(_0x269038){_0x14873d[_0xcf92('0x68')]=_0x269038[_0xcf92('0x69')]({'plain':!![]});interaction_log[_0xcf92('0x20')](_0xcf92('0x6a'),_0x164cfc[_0xcf92('0x63')]['id'],_0x164cfc[_0xcf92('0x63')]['name'],_0x164cfc[_0xcf92('0x63')][_0xcf92('0x6b')],_0x14873d['interaction']['id'],_0x164cfc[_0xcf92('0x5b')]?JSON['stringify'](_0x164cfc[_0xcf92('0x5b')]):'null');return respondWithRpcPromise(_0xcf92('0x6c'),_0xcf92('0x6d'),_0x14873d);}return null;})[_0xcf92('0x35')](function(_0x46f0e8){var _0x4196e2=_0xcf92('0x6e')+_0x46f0e8['message']['ContactId'];return db[_0xcf92('0x6f')][_0xcf92('0x41')](_0x4196e2,{'type':db[_0xcf92('0x70')][_0xcf92('0x71')][_0xcf92('0x72')],'raw':!![]})['then'](function(_0x43dcc4){return _0x43dcc4;});})[_0xcf92('0x35')](function(_0xde28c4){if(_0xde28c4){_0x14873d[_0xcf92('0x28')][_0xcf92('0x73')]=_0xde28c4[0x0];if(!_0x164cfc[_0xcf92('0x5b')]['UserId'])return;return db[_0xcf92('0x74')][_0xcf92('0x59')]({'where':{'id':_0x164cfc[_0xcf92('0x5b')]['UserId'],'role':_0xcf92('0x64')},'attributes':['id',_0xcf92('0x38'),_0xcf92('0x75'),_0xcf92('0x76'),_0xcf92('0x77')],'raw':!![]});}return null;})[_0xcf92('0x35')](function(_0x282082){if(!_0x282082)return null;_0x14873d[_0xcf92('0x28')][_0xcf92('0x64')]=_0x282082;return _0x14873d;})['then'](function(_0x3fe557){if(_0x3fe557){if(_0x164cfc[_0xcf92('0x5b')][_0xcf92('0x78')]){_0x14873d[_0xcf92('0x28')][_0xcf92('0x79')]=util['format']('SIP/%s',_0x164cfc[_0xcf92('0x63')][_0xcf92('0x38')]);_0x14873d[_0xcf92('0x28')][_0xcf92('0x7a')]=_0x14873d[_0xcf92('0x7a')];_0x14873d['message']['motionChannel']=_0x14873d[_0xcf92('0x7a')];_0x14873d[_0xcf92('0x28')][_0xcf92('0x7b')]=_0xcf92('0x5d');return respondWithRpcPromise('EventManager',_0xcf92('0x7c'),{'event':'acceptmessage','message':_[_0xcf92('0x4f')](_0x14873d['message'],JSON[_0xcf92('0x7d')](_0x14873d[_0xcf92('0x68')][_0xcf92('0x7e')]))},client9002)[_0xcf92('0x35')](function(){return _0x14873d;});}return _0x14873d;}return null;})[_0xcf92('0x35')](respondWithResult(_0x27718d,null))[_0xcf92('0x2a')](handleError(_0x27718d,null));};var interaction_log=require(_0xcf92('0x11'))('chat-interactions');exports['reject']=function(_0x4cde9a,_0x4fd6cc,_0x18912d){var _0x1300b9={'agent':{},'channel':'chat'};if(_0x4cde9a[_0xcf92('0x5b')]['id']){delete _0x4cde9a[_0xcf92('0x5b')]['id'];}_0x4cde9a[_0xcf92('0x5b')]['UserId']=_0x4cde9a[_0xcf92('0x5b')]['UserId']||_0x4cde9a[_0xcf92('0x63')]['id'];_0x1300b9['agent']['id']=_0x4cde9a[_0xcf92('0x5b')]['UserId'];return db[_0xcf92('0x3b')]['find']({'where':{'id':_0x4cde9a[_0xcf92('0x58')]['id'],'UserId':null}})[_0xcf92('0x35')](handleEntityNotFound(_0x4fd6cc,null))[_0xcf92('0x35')](function(_0x37afcd){if(_0x37afcd){_0x1300b9[_0xcf92('0x28')]=_0x37afcd[_0xcf92('0x69')]({'plain':!![]});return db[_0xcf92('0x65')][_0xcf92('0x59')]({'where':{'id':_0x37afcd[_0xcf92('0x66')]}});}return null;})[_0xcf92('0x35')](handleEntityNotFound(_0x4fd6cc,null))[_0xcf92('0x35')](function(_0x136f7d){if(_0x136f7d){_0x1300b9[_0xcf92('0x68')]=_0x136f7d[_0xcf92('0x69')]({'plain':!![]});interaction_log[_0xcf92('0x20')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x4cde9a[_0xcf92('0x63')]['id'],_0x4cde9a[_0xcf92('0x63')][_0xcf92('0x38')],_0x4cde9a[_0xcf92('0x63')][_0xcf92('0x6b')],_0x1300b9[_0xcf92('0x68')]['id'],_0x4cde9a[_0xcf92('0x5b')]?JSON[_0xcf92('0x25')](_0x4cde9a[_0xcf92('0x5b')]):_0xcf92('0x7f'));return respondWithRpcPromise(_0xcf92('0x80'),_0xcf92('0x81'),_0x1300b9);}return null;})['then'](function(_0x5abe67){var _0x2e34e1=_0xcf92('0x6e')+_0x5abe67[_0xcf92('0x28')][_0xcf92('0x82')];return db[_0xcf92('0x6f')]['query'](_0x2e34e1,{'type':db[_0xcf92('0x70')][_0xcf92('0x71')][_0xcf92('0x72')],'raw':!![]})[_0xcf92('0x35')](function(_0x4a3711){return _0x4a3711;});})[_0xcf92('0x35')](function(_0x11d061){if(_0x11d061){_0x1300b9[_0xcf92('0x28')][_0xcf92('0x73')]=_0x11d061[0x0];if(!_0x4cde9a[_0xcf92('0x5b')]['UserId'])return;return db['User'][_0xcf92('0x59')]({'where':{'id':_0x4cde9a['body'][_0xcf92('0x62')],'role':'agent'},'attributes':['id','name','fullname',_0xcf92('0x76'),'internal'],'raw':!![]});}return null;})['then'](function(_0x4fff6a){if(!_0x4fff6a)return null;_0x1300b9[_0xcf92('0x28')][_0xcf92('0x64')]=_0x4fff6a;return _0x1300b9;})[_0xcf92('0x35')](function(_0x161da3){if(_0x161da3){_0x161da3['message'][_0xcf92('0x79')]=util[_0xcf92('0x60')](_0xcf92('0x83'),_0x4cde9a[_0xcf92('0x63')][_0xcf92('0x38')]);_0x161da3[_0xcf92('0x28')][_0xcf92('0x7a')]=_0x1300b9[_0xcf92('0x7a')];_0x161da3[_0xcf92('0x28')][_0xcf92('0x84')]=_0x1300b9[_0xcf92('0x7a')];_0x161da3['message']['event']=_0xcf92('0x85');respondWithRpcPromise(_0xcf92('0x7c'),_0xcf92('0x7c'),{'event':_0xcf92('0x86'),'message':_['merge'](_0x1300b9[_0xcf92('0x28')],JSON[_0xcf92('0x7d')](_0x1300b9[_0xcf92('0x68')][_0xcf92('0x7e')]))},client9002);return _0x1300b9;}return null;})[_0xcf92('0x35')](respondWithResult(_0x4fd6cc,null))[_0xcf92('0x2a')](handleError(_0x4fd6cc,null));};
\ No newline at end of file
+var _0x960a=['interface','SIP/%s','channel','event','EventManager','parse','formData','util','lodash','ioredis','../../components/interaction/service','../../config/environment','../../mysqldb','redis','defaults','localhost','jayson/promise','client','http','../../config/logger','chat-interactions','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','json','undefined','limit','count','offset','status','set','destroy','end','sendStatus','name','send','index','map','ChatMessage','rawAttributes','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','show','params','keys','find','create','body','update','describe','accept','chat','acceptMessage','reject','UserId','user','agent','ChatInteraction','ChatInteractionId','interaction','get','role','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','QueryTypes','SELECT','contact','User','email'];(function(_0x5ebec4,_0x474731){var _0x3b9d3b=function(_0x3aa9da){while(--_0x3aa9da){_0x5ebec4['push'](_0x5ebec4['shift']());}};_0x3b9d3b(++_0x474731);}(_0x960a,0x18f));var _0xa960=function(_0x1b2aea,_0x1c51ff){_0x1b2aea=_0x1b2aea-0x0;var _0x2ff88c=_0x960a[_0x1b2aea];return _0x2ff88c;};'use strict';var util=require(_0xa960('0x0'));var _=require(_0xa960('0x1'));var Redis=require(_0xa960('0x2'));var interactionService=require(_0xa960('0x3'));var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')('api');var config=require(_0xa960('0x4'));var db=require(_0xa960('0x5'))['db'];config[_0xa960('0x6')]=_[_0xa960('0x7')](config[_0xa960('0x6')],{'host':_0xa960('0x8'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./chatMessage.socket')['register'](socket);var jayson=require(_0xa960('0x9'));var client=jayson[_0xa960('0xa')][_0xa960('0xb')]({'port':0x232c});var client9002=jayson[_0xa960('0xa')][_0xa960('0xb')]({'port':0x232a});var interaction_log=require(_0xa960('0xc'))(_0xa960('0xd'));function respondWithRpcPromise(_0x5de2f6,_0x1b9980,_0x218d30,_0x18cb56){return new Promise(function(_0x3aeeae,_0xa6fc5f){var _0x36a988=_0x18cb56||client;return _0x36a988['request'](_0x5de2f6,_0x218d30)[_0xa960('0xe')](function(_0x4110dc){logger[_0xa960('0xf')](_0xa960('0x10'),_0x1b9980,_0xa960('0x11'));logger['debug'](_0xa960('0x12'),_0x1b9980,_0xa960('0x11'),JSON[_0xa960('0x13')](_0x4110dc));if(_0x4110dc[_0xa960('0x14')]){if(_0x4110dc[_0xa960('0x14')][_0xa960('0x15')]===0x1f4){logger[_0xa960('0x14')](_0xa960('0x10'),_0x1b9980,_0x4110dc[_0xa960('0x14')]['message']);return _0xa6fc5f(_0x4110dc[_0xa960('0x14')][_0xa960('0x16')]);}logger[_0xa960('0x14')]('ChatMessage,\x20%s,\x20%s',_0x1b9980,_0x4110dc['error'][_0xa960('0x16')]);return _0x3aeeae(_0x4110dc[_0xa960('0x14')][_0xa960('0x16')]);}else{logger[_0xa960('0xf')](_0xa960('0x10'),_0x1b9980,_0xa960('0x11'));_0x3aeeae(_0x4110dc['result'][_0xa960('0x16')]);}})[_0xa960('0x17')](function(_0x311c82){logger[_0xa960('0x14')](_0xa960('0x10'),_0x1b9980,_0x311c82);_0xa6fc5f(_0x311c82);});});}function respondWithResult(_0x307cf8,_0x5a408d){_0x5a408d=_0x5a408d||0xc8;return function(_0x1532a0){if(_0x1532a0){return _0x307cf8['status'](_0x5a408d)[_0xa960('0x18')](_0x1532a0);}};}function respondWithFilteredResult(_0x4ea051,_0x76ab41){return function(_0x57dfc4){if(_0x57dfc4){var _0x18d70a=typeof _0x76ab41['offset']===_0xa960('0x19')&&typeof _0x76ab41[_0xa960('0x1a')]===_0xa960('0x19');var _0x4b443a=_0x57dfc4[_0xa960('0x1b')];var _0xcdd616=_0x18d70a?0x0:_0x76ab41[_0xa960('0x1c')];var _0x458b27=_0x18d70a?_0x57dfc4[_0xa960('0x1b')]:_0x76ab41[_0xa960('0x1c')]+_0x76ab41[_0xa960('0x1a')];var _0x52e27d;if(_0x458b27>=_0x4b443a){_0x458b27=_0x4b443a;_0x52e27d=0xc8;}else{_0x52e27d=0xce;}_0x4ea051[_0xa960('0x1d')](_0x52e27d);return _0x4ea051[_0xa960('0x1e')]('Content-Range',_0xcdd616+'-'+_0x458b27+'/'+_0x4b443a)[_0xa960('0x18')](_0x57dfc4);}return null;};}function saveUpdates(_0x40b451){return function(_0x3e0647){if(_0x3e0647){return _0x3e0647['update'](_0x40b451)[_0xa960('0xe')](function(_0x2fb446){return _0x2fb446;});}return null;};}function removeEntity(_0x3ac980){return function(_0x2376d9){if(_0x2376d9){return _0x2376d9[_0xa960('0x1f')]()[_0xa960('0xe')](function(){_0x3ac980[_0xa960('0x1d')](0xcc)[_0xa960('0x20')]();});}};}function handleEntityNotFound(_0x14ce5d){return function(_0x4d6437){if(!_0x4d6437){_0x14ce5d[_0xa960('0x21')](0x194);}return _0x4d6437;};}function handleError(_0xd64cb9,_0x4aa39d){_0x4aa39d=_0x4aa39d||0x1f4;return function(_0x401af3){logger['error'](_0x401af3['stack']);if(_0x401af3[_0xa960('0x22')]){delete _0x401af3[_0xa960('0x22')];}_0xd64cb9['status'](_0x4aa39d)[_0xa960('0x23')](_0x401af3);};}exports[_0xa960('0x24')]=function(_0x36252c,_0x4e928d){var _0x47435f={},_0x5b066a={},_0x1c9e12={'count':0x0,'rows':[]};var _0x37467a=_[_0xa960('0x25')](db[_0xa960('0x26')][_0xa960('0x27')],function(_0x108be3){return{'name':_0x108be3['fieldName'],'type':_0x108be3[_0xa960('0x28')][_0xa960('0x29')]};});_0x5b066a[_0xa960('0x2a')]=_[_0xa960('0x25')](_0x37467a,_0xa960('0x22'));_0x5b066a[_0xa960('0x2b')]=_['keys'](_0x36252c[_0xa960('0x2b')]);_0x5b066a[_0xa960('0x2c')]=_[_0xa960('0x2d')](_0x5b066a['model'],_0x5b066a['query']);_0x47435f['attributes']=_[_0xa960('0x2d')](_0x5b066a[_0xa960('0x2a')],qs[_0xa960('0x2e')](_0x36252c[_0xa960('0x2b')][_0xa960('0x2e')]));_0x47435f[_0xa960('0x2f')]=_0x47435f[_0xa960('0x2f')][_0xa960('0x30')]?_0x47435f[_0xa960('0x2f')]:_0x5b066a[_0xa960('0x2a')];if(!_0x36252c['query'][_0xa960('0x31')](_0xa960('0x32'))){_0x47435f[_0xa960('0x1a')]=qs['limit'](_0x36252c['query']['limit']);_0x47435f[_0xa960('0x1c')]=qs['offset'](_0x36252c[_0xa960('0x2b')][_0xa960('0x1c')]);}_0x47435f[_0xa960('0x33')]=qs[_0xa960('0x34')](_0x36252c[_0xa960('0x2b')][_0xa960('0x34')]);_0x47435f[_0xa960('0x35')]=qs[_0xa960('0x2c')](_[_0xa960('0x36')](_0x36252c[_0xa960('0x2b')],_0x5b066a['filters']),_0x37467a);if(_0x36252c[_0xa960('0x2b')][_0xa960('0x37')]){_0x47435f['where']=_[_0xa960('0x38')](_0x47435f['where'],{'$or':_[_0xa960('0x25')](_0x37467a,function(_0x5b6c3f){if(_0x5b6c3f[_0xa960('0x28')]!==_0xa960('0x39')){var _0x21cddf={};_0x21cddf[_0x5b6c3f[_0xa960('0x22')]]={'$like':'%'+_0x36252c[_0xa960('0x2b')]['filter']+'%'};return _0x21cddf;}})});}_0x47435f=_['merge']({},_0x47435f,_0x36252c['options']);var _0x2473dc={'where':_0x47435f[_0xa960('0x35')]};return db['ChatMessage'][_0xa960('0x1b')](_0x2473dc)[_0xa960('0xe')](function(_0x540a9f){_0x1c9e12[_0xa960('0x1b')]=_0x540a9f;if(_0x36252c[_0xa960('0x2b')][_0xa960('0x3a')]){_0x47435f[_0xa960('0x3b')]=[{'all':!![]}];}return db['ChatMessage'][_0xa960('0x3c')](_0x47435f);})['then'](function(_0x26720e){_0x1c9e12['rows']=_0x26720e;return _0x1c9e12;})['then'](respondWithFilteredResult(_0x4e928d,_0x47435f))[_0xa960('0x17')](handleError(_0x4e928d,null));};exports[_0xa960('0x3d')]=function(_0x110c17,_0x2332fc){var _0x5f0d2d={'raw':!![],'where':{'id':_0x110c17[_0xa960('0x3e')]['id']}},_0x430c0b={};_0x430c0b['model']=_[_0xa960('0x3f')](db[_0xa960('0x26')]['rawAttributes']);_0x430c0b[_0xa960('0x2b')]=_['keys'](_0x110c17['query']);_0x430c0b[_0xa960('0x2c')]=_['intersection'](_0x430c0b[_0xa960('0x2a')],_0x430c0b[_0xa960('0x2b')]);_0x5f0d2d[_0xa960('0x2f')]=_[_0xa960('0x2d')](_0x430c0b[_0xa960('0x2a')],qs[_0xa960('0x2e')](_0x110c17['query'][_0xa960('0x2e')]));_0x5f0d2d[_0xa960('0x2f')]=_0x5f0d2d[_0xa960('0x2f')]['length']?_0x5f0d2d[_0xa960('0x2f')]:_0x430c0b[_0xa960('0x2a')];if(_0x110c17[_0xa960('0x2b')][_0xa960('0x3a')]){_0x5f0d2d[_0xa960('0x3b')]=[{'all':!![]}];}_0x5f0d2d=_[_0xa960('0x38')]({},_0x5f0d2d,_0x110c17['options']);return db[_0xa960('0x26')][_0xa960('0x40')](_0x5f0d2d)[_0xa960('0xe')](handleEntityNotFound(_0x2332fc,null))[_0xa960('0xe')](respondWithResult(_0x2332fc,null))[_0xa960('0x17')](handleError(_0x2332fc,null));};exports[_0xa960('0x41')]=function(_0x1dc2fa,_0x10f1c0){return db[_0xa960('0x26')][_0xa960('0x41')](_0x1dc2fa[_0xa960('0x42')],{})[_0xa960('0xe')](respondWithResult(_0x10f1c0,0xc9))[_0xa960('0x17')](handleError(_0x10f1c0,null));};exports[_0xa960('0x43')]=function(_0x5b6817,_0x280dcf){if(_0x5b6817[_0xa960('0x42')]['id']){delete _0x5b6817[_0xa960('0x42')]['id'];}return db[_0xa960('0x26')][_0xa960('0x40')]({'where':{'id':_0x5b6817[_0xa960('0x3e')]['id']}})[_0xa960('0xe')](handleEntityNotFound(_0x280dcf,null))[_0xa960('0xe')](saveUpdates(_0x5b6817[_0xa960('0x42')],null))['then'](respondWithResult(_0x280dcf,null))[_0xa960('0x17')](handleError(_0x280dcf,null));};exports[_0xa960('0x1f')]=function(_0x4a9d66,_0x12ad6f){return db[_0xa960('0x26')]['find']({'where':{'id':_0x4a9d66[_0xa960('0x3e')]['id']}})[_0xa960('0xe')](handleEntityNotFound(_0x12ad6f,null))[_0xa960('0xe')](removeEntity(_0x12ad6f,null))[_0xa960('0x17')](handleError(_0x12ad6f,null));};exports[_0xa960('0x44')]=function(_0x5f2ad1,_0x14f6e6){return db[_0xa960('0x26')]['describe']()['then'](respondWithResult(_0x14f6e6,null))[_0xa960('0x17')](handleError(_0x14f6e6,null));};exports[_0xa960('0x45')]=function(_0x4c1e6d,_0x30650f){var _0x5d87d8=_0xa960('0x46');return interactionService[_0xa960('0x47')](_0x4c1e6d,_0x5d87d8)[_0xa960('0xe')](respondWithResult(_0x30650f,null))[_0xa960('0x17')](handleError(_0x30650f,null));};exports[_0xa960('0x48')]=function(_0xdc17fa,_0x47f4e7){var _0x3fc48={'agent':{},'channel':_0xa960('0x46')};if(_0xdc17fa['body']['id']){delete _0xdc17fa[_0xa960('0x42')]['id'];}_0xdc17fa['body'][_0xa960('0x49')]=_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')]||_0xdc17fa[_0xa960('0x4a')]['id'];_0x3fc48[_0xa960('0x4b')]['id']=_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')];return db[_0xa960('0x26')][_0xa960('0x40')]({'where':{'id':_0xdc17fa[_0xa960('0x3e')]['id'],'UserId':null}})[_0xa960('0xe')](handleEntityNotFound(_0x47f4e7,null))[_0xa960('0xe')](function(_0x1224b4){if(_0x1224b4){_0x3fc48['message']=_0x1224b4['get']({'plain':!![]});return db[_0xa960('0x4c')][_0xa960('0x40')]({'where':{'id':_0x1224b4[_0xa960('0x4d')]}});}return null;})['then'](handleEntityNotFound(_0x47f4e7,null))[_0xa960('0xe')](function(_0x577b84){if(_0x577b84){_0x3fc48[_0xa960('0x4e')]=_0x577b84[_0xa960('0x4f')]({'plain':!![]});interaction_log[_0xa960('0xf')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0xdc17fa['user']['id'],_0xdc17fa['user']['name'],_0xdc17fa[_0xa960('0x4a')][_0xa960('0x50')],_0x3fc48[_0xa960('0x4e')]['id'],_0xdc17fa[_0xa960('0x42')]?JSON[_0xa960('0x13')](_0xdc17fa[_0xa960('0x42')]):'null');return respondWithRpcPromise(_0xa960('0x51'),_0xa960('0x52'),_0x3fc48);}return null;})[_0xa960('0xe')](function(_0x2ac80d){var _0x3705e2=_0xa960('0x53')+_0x2ac80d[_0xa960('0x16')][_0xa960('0x54')];return db[_0xa960('0x55')][_0xa960('0x2b')](_0x3705e2,{'type':db['Sequelize'][_0xa960('0x56')][_0xa960('0x57')],'raw':!![]})[_0xa960('0xe')](function(_0x8ecc5){return _0x8ecc5;});})[_0xa960('0xe')](function(_0x495cb9){if(_0x495cb9){_0x3fc48[_0xa960('0x16')][_0xa960('0x58')]=_0x495cb9[0x0];if(!_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')])return;return db[_0xa960('0x59')]['find']({'where':{'id':_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')],'role':_0xa960('0x4b')},'attributes':['id',_0xa960('0x22'),'fullname',_0xa960('0x5a'),'internal'],'raw':!![]});}return null;})[_0xa960('0xe')](function(_0x9ede29){if(!_0x9ede29)return null;_0x3fc48[_0xa960('0x16')][_0xa960('0x4b')]=_0x9ede29;return _0x3fc48;})[_0xa960('0xe')](function(_0x514e4e){if(_0x514e4e){_0x514e4e['message'][_0xa960('0x5b')]=util['format'](_0xa960('0x5c'),_0xdc17fa[_0xa960('0x4a')][_0xa960('0x22')]);_0x514e4e[_0xa960('0x16')][_0xa960('0x5d')]=_0x3fc48['channel'];_0x514e4e['message']['motionChannel']=_0x3fc48['channel'];_0x514e4e[_0xa960('0x16')][_0xa960('0x5e')]='reject';respondWithRpcPromise(_0xa960('0x5f'),_0xa960('0x5f'),{'event':'rejectmessage','message':_[_0xa960('0x38')](_0x3fc48[_0xa960('0x16')],JSON[_0xa960('0x60')](_0x3fc48[_0xa960('0x4e')][_0xa960('0x61')]))},client9002);return _0x3fc48;}return null;})[_0xa960('0xe')](respondWithResult(_0x47f4e7,null))[_0xa960('0x17')](handleError(_0x47f4e7,null));};
\ No newline at end of file