Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index fa1fd28..8bca6a4 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xde92=['merge','includeAll','rows','show','keys','intersection','options','find','create','update','body','params','describe','chat-interactions','accept','readAt','format','UserId','user','agent','get','ChatInteraction','ChatInteractionId','isNil','interaction','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','acceptMessage','ContactId','sequelize','QueryTypes','contact','User','fullname','email','internal','manual','interface','SIP/%s','channel','event','EventManager','acceptmessage','formData','chat','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','Sequelize','SELECT','motionChannel','reject','parse','rimraf','zip-dir','moment','bluebird','mustache','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../mysqldb','redis','./chatMessage.socket','register','jayson/promise','client','http','request','then','info','ChatMessage,\x20%s,\x20%s','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','end','status','json','offset','undefined','count','limit','set','Content-Range','apply','destroy','stack','name','index','ChatMessage','fieldName','key','model','map','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','type','filter'];(function(_0x2d7f0e,_0x3e6fbd){var _0x110b07=function(_0x557b00){while(--_0x557b00){_0x2d7f0e['push'](_0x2d7f0e['shift']());}};_0x110b07(++_0x3e6fbd);}(_0xde92,0xb4));var _0x2de9=function(_0x97db75,_0x3abdb8){_0x97db75=_0x97db75-0x0;var _0x259a53=_0xde92[_0x97db75];return _0x259a53;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x2de9('0x0'));var zipdir=require(_0x2de9('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x2de9('0x2'));var BPromise=require(_0x2de9('0x3'));var Mustache=require(_0x2de9('0x4'));var util=require('util');var path=require('path');var sox=require(_0x2de9('0x5'));var csv=require(_0x2de9('0x6'));var ejs=require(_0x2de9('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x2de9('0x8'));var squel=require(_0x2de9('0x9'));var crypto=require(_0x2de9('0xa'));var jsforce=require('jsforce');var deskjs=require(_0x2de9('0xb'));var toCsv=require(_0x2de9('0x6'));var querystring=require(_0x2de9('0xc'));var Papa=require(_0x2de9('0xd'));var Redis=require(_0x2de9('0xe'));var authService=require(_0x2de9('0xf'));var qs=require(_0x2de9('0x10'));var as=require(_0x2de9('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x2de9('0x12'))('api');var utils=require(_0x2de9('0x13'));var config=require(_0x2de9('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x2de9('0x15'))['db'];config[_0x2de9('0x16')]=_['defaults'](config[_0x2de9('0x16')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x2de9('0x16')]));require(_0x2de9('0x17'))[_0x2de9('0x18')](socket);var jayson=require(_0x2de9('0x19'));var client=jayson[_0x2de9('0x1a')][_0x2de9('0x1b')]({'port':0x232c});var client9002=jayson['client'][_0x2de9('0x1b')]({'port':0x232a});function respondWithRpcPromise(_0x431934,_0x44b80d,_0x109857,_0x281aab){return new BPromise(function(_0x136dd1,_0x2993ab){var _0x41df3b=_0x281aab||client;return _0x41df3b[_0x2de9('0x1c')](_0x431934,_0x109857)[_0x2de9('0x1d')](function(_0x337b2d){logger[_0x2de9('0x1e')](_0x2de9('0x1f'),_0x44b80d,'request\x20sent');logger[_0x2de9('0x20')](_0x2de9('0x21'),_0x44b80d,'request\x20sent',JSON[_0x2de9('0x22')](_0x337b2d));if(_0x337b2d['error']){if(_0x337b2d[_0x2de9('0x23')][_0x2de9('0x24')]===0x1f4){logger['error']('ChatMessage,\x20%s,\x20%s',_0x44b80d,_0x337b2d['error'][_0x2de9('0x25')]);return _0x2993ab(_0x337b2d[_0x2de9('0x23')][_0x2de9('0x25')]);}logger[_0x2de9('0x23')](_0x2de9('0x1f'),_0x44b80d,_0x337b2d[_0x2de9('0x23')][_0x2de9('0x25')]);return _0x136dd1(_0x337b2d[_0x2de9('0x23')]['message']);}else{logger[_0x2de9('0x1e')](_0x2de9('0x1f'),_0x44b80d,'request\x20sent');_0x136dd1(_0x337b2d[_0x2de9('0x26')][_0x2de9('0x25')]);}})[_0x2de9('0x27')](function(_0x54c9ad){logger[_0x2de9('0x23')](_0x2de9('0x1f'),_0x44b80d,_0x54c9ad);_0x2993ab(_0x54c9ad);});});}function respondWithStatusCode(_0x5c2c20,_0x165a11){_0x165a11=_0x165a11||0xcc;return function(_0x179c94){if(_0x179c94){return _0x5c2c20[_0x2de9('0x28')](_0x165a11);}return _0x5c2c20['status'](_0x165a11)[_0x2de9('0x29')]();};}function respondWithResult(_0x59fd57,_0x17c4b1){_0x17c4b1=_0x17c4b1||0xc8;return function(_0x40caab){if(_0x40caab){return _0x59fd57[_0x2de9('0x2a')](_0x17c4b1)[_0x2de9('0x2b')](_0x40caab);}};}function respondWithFilteredResult(_0x19b0eb,_0x2f169a){return function(_0x231566){if(_0x231566){var _0x55d95c=typeof _0x2f169a[_0x2de9('0x2c')]===_0x2de9('0x2d')&&typeof _0x2f169a['limit']===_0x2de9('0x2d');var _0x475dee=_0x231566[_0x2de9('0x2e')];var _0x544459=_0x55d95c?0x0:_0x2f169a[_0x2de9('0x2c')];var _0x425e12=_0x55d95c?_0x231566[_0x2de9('0x2e')]:_0x2f169a[_0x2de9('0x2c')]+_0x2f169a[_0x2de9('0x2f')];var _0x2427d1;if(_0x425e12>=_0x475dee){_0x425e12=_0x475dee;_0x2427d1=0xc8;}else{_0x2427d1=0xce;}_0x19b0eb[_0x2de9('0x2a')](_0x2427d1);return _0x19b0eb[_0x2de9('0x30')](_0x2de9('0x31'),_0x544459+'-'+_0x425e12+'/'+_0x475dee)[_0x2de9('0x2b')](_0x231566);}return null;};}function patchUpdates(_0x8bcbe0){return function(_0x4a6cb5){try{jsonpatch[_0x2de9('0x32')](_0x4a6cb5,_0x8bcbe0,!![]);}catch(_0xfb549e){return BPromise['reject'](_0xfb549e);}return _0x4a6cb5['save']();};}function saveUpdates(_0x3db0e3,_0x121a03){return function(_0x1646b8){if(_0x1646b8){return _0x1646b8['update'](_0x3db0e3)[_0x2de9('0x1d')](function(_0x9afef5){return _0x9afef5;});}return null;};}function removeEntity(_0x42ceec,_0x4f6e3f){return function(_0x53ba1d){if(_0x53ba1d){return _0x53ba1d[_0x2de9('0x33')]()[_0x2de9('0x1d')](function(){_0x42ceec['status'](0xcc)[_0x2de9('0x29')]();});}};}function handleEntityNotFound(_0x251b13,_0x32157c){return function(_0x29e303){if(!_0x29e303){_0x251b13[_0x2de9('0x28')](0x194);}return _0x29e303;};}function handleError(_0x32bb0f,_0x220258){_0x220258=_0x220258||0x1f4;return function(_0x36c5cd){logger[_0x2de9('0x23')](_0x36c5cd[_0x2de9('0x34')]);if(_0x36c5cd[_0x2de9('0x35')]){delete _0x36c5cd[_0x2de9('0x35')];}_0x32bb0f['status'](_0x220258)['send'](_0x36c5cd);};}exports[_0x2de9('0x36')]=function(_0x371d26,_0x32bcff){var _0x125b4e={},_0x11e183={},_0x426c7e={'count':0x0,'rows':[]};var _0x4127a2=_['map'](db[_0x2de9('0x37')]['rawAttributes'],function(_0x5a067c){return{'name':_0x5a067c[_0x2de9('0x38')],'type':_0x5a067c['type'][_0x2de9('0x39')]};});_0x11e183[_0x2de9('0x3a')]=_[_0x2de9('0x3b')](_0x4127a2,'name');_0x11e183['query']=_['keys'](_0x371d26[_0x2de9('0x3c')]);_0x11e183['filters']=_['intersection'](_0x11e183[_0x2de9('0x3a')],_0x11e183[_0x2de9('0x3c')]);_0x125b4e[_0x2de9('0x3d')]=_['intersection'](_0x11e183[_0x2de9('0x3a')],qs[_0x2de9('0x3e')](_0x371d26[_0x2de9('0x3c')][_0x2de9('0x3e')]));_0x125b4e[_0x2de9('0x3d')]=_0x125b4e[_0x2de9('0x3d')][_0x2de9('0x3f')]?_0x125b4e['attributes']:_0x11e183['model'];if(!_0x371d26['query'][_0x2de9('0x40')](_0x2de9('0x41'))){_0x125b4e[_0x2de9('0x2f')]=qs[_0x2de9('0x2f')](_0x371d26['query']['limit']);_0x125b4e['offset']=qs[_0x2de9('0x2c')](_0x371d26[_0x2de9('0x3c')]['offset']);}_0x125b4e[_0x2de9('0x42')]=qs[_0x2de9('0x43')](_0x371d26[_0x2de9('0x3c')][_0x2de9('0x43')]);_0x125b4e[_0x2de9('0x44')]=qs[_0x2de9('0x45')](_['pick'](_0x371d26[_0x2de9('0x3c')],_0x11e183[_0x2de9('0x45')]),_0x4127a2);if(_0x371d26['query']['filter']){_0x125b4e[_0x2de9('0x44')]=_['merge'](_0x125b4e[_0x2de9('0x44')],{'$or':_[_0x2de9('0x3b')](_0x4127a2,function(_0x1ba3aa){if(_0x1ba3aa[_0x2de9('0x46')]!=='VIRTUAL'){var _0x251cf9={};_0x251cf9[_0x1ba3aa[_0x2de9('0x35')]]={'$like':'%'+_0x371d26[_0x2de9('0x3c')][_0x2de9('0x47')]+'%'};return _0x251cf9;}})});}_0x125b4e=_[_0x2de9('0x48')]({},_0x125b4e,_0x371d26['options']);var _0x12dec9={'where':_0x125b4e[_0x2de9('0x44')]};return db[_0x2de9('0x37')]['count'](_0x12dec9)[_0x2de9('0x1d')](function(_0x3ec708){_0x426c7e['count']=_0x3ec708;if(_0x371d26[_0x2de9('0x3c')][_0x2de9('0x49')]){_0x125b4e['include']=[{'all':!![]}];}return db['ChatMessage']['findAll'](_0x125b4e);})['then'](function(_0x938e03){_0x426c7e[_0x2de9('0x4a')]=_0x938e03;return _0x426c7e;})[_0x2de9('0x1d')](respondWithFilteredResult(_0x32bcff,_0x125b4e))[_0x2de9('0x27')](handleError(_0x32bcff,null));};exports[_0x2de9('0x4b')]=function(_0x148a8b,_0x43adef){var _0x1608bf={'raw':!![],'where':{'id':_0x148a8b['params']['id']}},_0x564cc4={};_0x564cc4[_0x2de9('0x3a')]=_['keys'](db['ChatMessage']['rawAttributes']);_0x564cc4[_0x2de9('0x3c')]=_[_0x2de9('0x4c')](_0x148a8b['query']);_0x564cc4['filters']=_[_0x2de9('0x4d')](_0x564cc4[_0x2de9('0x3a')],_0x564cc4['query']);_0x1608bf[_0x2de9('0x3d')]=_[_0x2de9('0x4d')](_0x564cc4[_0x2de9('0x3a')],qs[_0x2de9('0x3e')](_0x148a8b[_0x2de9('0x3c')][_0x2de9('0x3e')]));_0x1608bf['attributes']=_0x1608bf[_0x2de9('0x3d')][_0x2de9('0x3f')]?_0x1608bf[_0x2de9('0x3d')]:_0x564cc4[_0x2de9('0x3a')];if(_0x148a8b[_0x2de9('0x3c')][_0x2de9('0x49')]){_0x1608bf['include']=[{'all':!![]}];}_0x1608bf=_['merge']({},_0x1608bf,_0x148a8b[_0x2de9('0x4e')]);return db['ChatMessage'][_0x2de9('0x4f')](_0x1608bf)[_0x2de9('0x1d')](handleEntityNotFound(_0x43adef,null))[_0x2de9('0x1d')](respondWithResult(_0x43adef,null))[_0x2de9('0x27')](handleError(_0x43adef,null));};exports['create']=function(_0x41c373,_0x196189){return db[_0x2de9('0x37')][_0x2de9('0x50')](_0x41c373['body'],{})['then'](respondWithResult(_0x196189,0xc9))['catch'](handleError(_0x196189,null));};exports[_0x2de9('0x51')]=function(_0x22fa05,_0x1e058b){if(_0x22fa05[_0x2de9('0x52')]['id']){delete _0x22fa05[_0x2de9('0x52')]['id'];}return db[_0x2de9('0x37')][_0x2de9('0x4f')]({'where':{'id':_0x22fa05[_0x2de9('0x53')]['id']}})[_0x2de9('0x1d')](handleEntityNotFound(_0x1e058b,null))[_0x2de9('0x1d')](saveUpdates(_0x22fa05[_0x2de9('0x52')],null))[_0x2de9('0x1d')](respondWithResult(_0x1e058b,null))[_0x2de9('0x27')](handleError(_0x1e058b,null));};exports[_0x2de9('0x33')]=function(_0x52f0d5,_0x18e514){return db[_0x2de9('0x37')][_0x2de9('0x4f')]({'where':{'id':_0x52f0d5[_0x2de9('0x53')]['id']}})[_0x2de9('0x1d')](handleEntityNotFound(_0x18e514,null))[_0x2de9('0x1d')](removeEntity(_0x18e514,null))[_0x2de9('0x27')](handleError(_0x18e514,null));};exports[_0x2de9('0x54')]=function(_0x43b0af,_0x437efc){return db['ChatMessage'][_0x2de9('0x54')]()[_0x2de9('0x1d')](respondWithResult(_0x437efc,null))[_0x2de9('0x27')](handleError(_0x437efc,null));};var interaction_log=require(_0x2de9('0x12'))(_0x2de9('0x55'));exports[_0x2de9('0x56')]=function(_0x522a5c,_0x2149cc,_0x57a3eb){var _0x3aad24={'agent':{},'channel':'chat'};if(_0x522a5c[_0x2de9('0x52')]['id']){delete _0x522a5c[_0x2de9('0x52')]['id'];}_0x522a5c[_0x2de9('0x52')]['read']=!![];_0x522a5c[_0x2de9('0x52')][_0x2de9('0x57')]=moment()[_0x2de9('0x58')]('YYYY-MM-DD\x20HH:mm:ss');_0x522a5c[_0x2de9('0x52')][_0x2de9('0x59')]=_0x522a5c[_0x2de9('0x52')][_0x2de9('0x59')]||_0x522a5c[_0x2de9('0x5a')]['id'];_0x3aad24[_0x2de9('0x5b')]['id']=_0x522a5c['body'][_0x2de9('0x59')];return db[_0x2de9('0x37')][_0x2de9('0x4f')]({'where':{'id':_0x522a5c[_0x2de9('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x2149cc,null))[_0x2de9('0x1d')](saveUpdates(_0x522a5c['body'],null))['then'](function(_0x3173cb){if(_0x3173cb){_0x3aad24[_0x2de9('0x25')]=_0x3173cb[_0x2de9('0x5c')]({'plain':!![]});return db[_0x2de9('0x5d')]['find']({'where':{'id':_0x3173cb[_0x2de9('0x5e')]}});}return null;})[_0x2de9('0x1d')](handleEntityNotFound(_0x2149cc,null))['then'](function(_0x358870){if(_0x358870){return _0x358870[_0x2de9('0x51')]({'UserId':_0x522a5c[_0x2de9('0x52')][_0x2de9('0x59')],'read1stAt':_[_0x2de9('0x5f')](_0x358870['read1stAt'])?moment()[_0x2de9('0x58')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x2de9('0x1d')](function(_0xb340c5){if(_0xb340c5){_0x3aad24[_0x2de9('0x60')]=_0xb340c5[_0x2de9('0x5c')]({'plain':!![]});interaction_log[_0x2de9('0x1e')](_0x2de9('0x61'),_0x522a5c[_0x2de9('0x5a')]['id'],_0x522a5c[_0x2de9('0x5a')]['name'],_0x522a5c['user'][_0x2de9('0x62')],_0x3aad24[_0x2de9('0x60')]['id'],_0x522a5c['body']?JSON[_0x2de9('0x22')](_0x522a5c[_0x2de9('0x52')]):_0x2de9('0x63'));return respondWithRpcPromise('AcceptMessage',_0x2de9('0x64'),_0x3aad24);}return null;})[_0x2de9('0x1d')](function(_0x40fd3c){var _0xa9b038='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x40fd3c['message'][_0x2de9('0x65')];return db[_0x2de9('0x66')]['query'](_0xa9b038,{'type':db['Sequelize'][_0x2de9('0x67')]['SELECT'],'raw':!![]})[_0x2de9('0x1d')](function(_0x478076){return _0x478076;});})[_0x2de9('0x1d')](function(_0x26bce2){if(_0x26bce2){_0x3aad24['message'][_0x2de9('0x68')]=_0x26bce2[0x0];if(!_0x522a5c[_0x2de9('0x52')][_0x2de9('0x59')])return;return db[_0x2de9('0x69')][_0x2de9('0x4f')]({'where':{'id':_0x522a5c[_0x2de9('0x52')][_0x2de9('0x59')],'role':_0x2de9('0x5b')},'attributes':['id','name',_0x2de9('0x6a'),_0x2de9('0x6b'),_0x2de9('0x6c')],'raw':!![]});}return null;})[_0x2de9('0x1d')](function(_0x6126b3){if(!_0x6126b3)return null;_0x3aad24[_0x2de9('0x25')][_0x2de9('0x5b')]=_0x6126b3;return _0x3aad24;})['then'](function(_0x1c42df){if(_0x1c42df){if(_0x522a5c[_0x2de9('0x52')][_0x2de9('0x6d')]){_0x3aad24[_0x2de9('0x25')][_0x2de9('0x6e')]=util[_0x2de9('0x58')](_0x2de9('0x6f'),_0x522a5c['user'][_0x2de9('0x35')]);_0x3aad24[_0x2de9('0x25')]['channel']=_0x3aad24[_0x2de9('0x70')];_0x3aad24['message']['motionChannel']=_0x3aad24['channel'];_0x3aad24[_0x2de9('0x25')][_0x2de9('0x71')]=_0x2de9('0x56');return respondWithRpcPromise('EventManager',_0x2de9('0x72'),{'event':_0x2de9('0x73'),'message':_['merge'](_0x3aad24['message'],JSON['parse'](_0x3aad24['interaction'][_0x2de9('0x74')]))},client9002)[_0x2de9('0x1d')](function(){return _0x3aad24;});}return _0x3aad24;}return null;})['then'](respondWithResult(_0x2149cc,null))[_0x2de9('0x27')](handleError(_0x2149cc,null));};var interaction_log=require('../../config/logger')(_0x2de9('0x55'));exports['reject']=function(_0x47cdf6,_0x22826c,_0x2968ee){var _0x2b6d67={'agent':{},'channel':_0x2de9('0x75')};if(_0x47cdf6[_0x2de9('0x52')]['id']){delete _0x47cdf6[_0x2de9('0x52')]['id'];}_0x47cdf6[_0x2de9('0x52')][_0x2de9('0x59')]=_0x47cdf6['body'][_0x2de9('0x59')]||_0x47cdf6[_0x2de9('0x5a')]['id'];_0x2b6d67['agent']['id']=_0x47cdf6['body'][_0x2de9('0x59')];return db['ChatMessage'][_0x2de9('0x4f')]({'where':{'id':_0x47cdf6['params']['id'],'UserId':null}})[_0x2de9('0x1d')](handleEntityNotFound(_0x22826c,null))[_0x2de9('0x1d')](function(_0x5bcde3){if(_0x5bcde3){_0x2b6d67['message']=_0x5bcde3[_0x2de9('0x5c')]({'plain':!![]});return db[_0x2de9('0x5d')][_0x2de9('0x4f')]({'where':{'id':_0x5bcde3[_0x2de9('0x5e')]}});}return null;})['then'](handleEntityNotFound(_0x22826c,null))['then'](function(_0x500d48){if(_0x500d48){_0x2b6d67['interaction']=_0x500d48[_0x2de9('0x5c')]({'plain':!![]});interaction_log[_0x2de9('0x1e')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x47cdf6[_0x2de9('0x5a')]['id'],_0x47cdf6[_0x2de9('0x5a')][_0x2de9('0x35')],_0x47cdf6[_0x2de9('0x5a')][_0x2de9('0x62')],_0x2b6d67[_0x2de9('0x60')]['id'],_0x47cdf6[_0x2de9('0x52')]?JSON['stringify'](_0x47cdf6[_0x2de9('0x52')]):_0x2de9('0x63'));return respondWithRpcPromise(_0x2de9('0x76'),_0x2de9('0x77'),_0x2b6d67);}return null;})[_0x2de9('0x1d')](function(_0x12b861){var _0x3c4aae=_0x2de9('0x78')+_0x12b861[_0x2de9('0x25')][_0x2de9('0x65')];return db[_0x2de9('0x66')][_0x2de9('0x3c')](_0x3c4aae,{'type':db[_0x2de9('0x79')]['QueryTypes'][_0x2de9('0x7a')],'raw':!![]})[_0x2de9('0x1d')](function(_0x1e212a){return _0x1e212a;});})[_0x2de9('0x1d')](function(_0x238562){if(_0x238562){_0x2b6d67[_0x2de9('0x25')]['contact']=_0x238562[0x0];if(!_0x47cdf6['body'][_0x2de9('0x59')])return;return db['User'][_0x2de9('0x4f')]({'where':{'id':_0x47cdf6[_0x2de9('0x52')][_0x2de9('0x59')],'role':_0x2de9('0x5b')},'attributes':['id',_0x2de9('0x35'),_0x2de9('0x6a'),_0x2de9('0x6b'),'internal'],'raw':!![]});}return null;})['then'](function(_0x44756c){if(!_0x44756c)return null;_0x2b6d67[_0x2de9('0x25')][_0x2de9('0x5b')]=_0x44756c;return _0x2b6d67;})[_0x2de9('0x1d')](function(_0x549d73){if(_0x549d73){_0x549d73['message']['interface']=util[_0x2de9('0x58')](_0x2de9('0x6f'),_0x47cdf6['user'][_0x2de9('0x35')]);_0x549d73[_0x2de9('0x25')][_0x2de9('0x70')]=_0x2b6d67[_0x2de9('0x70')];_0x549d73[_0x2de9('0x25')][_0x2de9('0x7b')]=_0x2b6d67[_0x2de9('0x70')];_0x549d73['message'][_0x2de9('0x71')]=_0x2de9('0x7c');respondWithRpcPromise(_0x2de9('0x72'),_0x2de9('0x72'),{'event':'rejectmessage','message':_[_0x2de9('0x48')](_0x2b6d67[_0x2de9('0x25')],JSON[_0x2de9('0x7d')](_0x2b6d67['interaction'][_0x2de9('0x74')]))},client9002);return _0x2b6d67;}return null;})[_0x2de9('0x1d')](respondWithResult(_0x22826c,null))[_0x2de9('0x27')](handleError(_0x22826c,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