Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 9ffa07c..56c8188 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xa9e0=['interaction','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','null','AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','contact','email','internal','manual','interface','SIP/%s','channel','event','EventManager','acceptmessage','parse','formData','chat-interactions','chat','ChatInteraction','RejectMessage','rejectMessage','Sequelize','QueryTypes','SELECT','fullname','rejectmessage','eml-format','rimraf','zip-dir','moment','mustache','util','path','sox','to-csv','fs-extra','lodash','squel','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/license/util','../../mysqldb','redis','defaults','localhost','./chatMessage.socket','register','jayson/promise','client','http','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','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','reject','save','update','destroy','stack','name','send','map','ChatMessage','fieldName','type','keys','query','filters','intersection','attributes','fields','length','model','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows','show','params','body','find','describe','../../config/logger','accept','read','readAt','YYYY-MM-DD\x20HH:mm:ss','UserId','agent','get','ChatInteractionId','isNil','read1stAt','format'];(function(_0xdca45c,_0x2ff047){var _0x1df681=function(_0x7032a9){while(--_0x7032a9){_0xdca45c['push'](_0xdca45c['shift']());}};_0x1df681(++_0x2ff047);}(_0xa9e0,0x123));var _0x0a9e=function(_0x24237f,_0x4cf32c){_0x24237f=_0x24237f-0x0;var _0x48298e=_0xa9e0[_0x24237f];return _0x48298e;};'use strict';var emlformat=require(_0x0a9e('0x0'));var rimraf=require(_0x0a9e('0x1'));var zipdir=require(_0x0a9e('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x0a9e('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x0a9e('0x4'));var util=require(_0x0a9e('0x5'));var path=require(_0x0a9e('0x6'));var sox=require(_0x0a9e('0x7'));var csv=require(_0x0a9e('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x0a9e('0x9'));var _=require(_0x0a9e('0xa'));var squel=require(_0x0a9e('0xb'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x0a9e('0xc'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x0a9e('0xd'));var Redis=require(_0x0a9e('0xe'));var authService=require(_0x0a9e('0xf'));var qs=require(_0x0a9e('0x10'));var as=require(_0x0a9e('0x11'));var hardwareService=require(_0x0a9e('0x12'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x0a9e('0x13'));var db=require(_0x0a9e('0x14'))['db'];config[_0x0a9e('0x15')]=_[_0x0a9e('0x16')](config[_0x0a9e('0x15')],{'host':_0x0a9e('0x17'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x0a9e('0x15')]));require(_0x0a9e('0x18'))[_0x0a9e('0x19')](socket);var jayson=require(_0x0a9e('0x1a'));var client=jayson[_0x0a9e('0x1b')][_0x0a9e('0x1c')]({'port':0x232c});var client9002=jayson['client'][_0x0a9e('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0x5d0880,_0x1985b6,_0x519dfd,_0x16033c){return new BPromise(function(_0x12066b,_0x48f32d){var _0x225616=_0x16033c||client;return _0x225616['request'](_0x5d0880,_0x519dfd)[_0x0a9e('0x1d')](function(_0x478723){logger[_0x0a9e('0x1e')](_0x0a9e('0x1f'),_0x1985b6,_0x0a9e('0x20'));logger[_0x0a9e('0x21')](_0x0a9e('0x22'),_0x1985b6,_0x0a9e('0x20'),JSON[_0x0a9e('0x23')](_0x478723));if(_0x478723[_0x0a9e('0x24')]){if(_0x478723[_0x0a9e('0x24')][_0x0a9e('0x25')]===0x1f4){logger['error'](_0x0a9e('0x1f'),_0x1985b6,_0x478723[_0x0a9e('0x24')]['message']);return _0x48f32d(_0x478723[_0x0a9e('0x24')]['message']);}logger['error'](_0x0a9e('0x1f'),_0x1985b6,_0x478723[_0x0a9e('0x24')][_0x0a9e('0x26')]);return _0x12066b(_0x478723[_0x0a9e('0x24')]['message']);}else{logger[_0x0a9e('0x1e')](_0x0a9e('0x1f'),_0x1985b6,_0x0a9e('0x20'));_0x12066b(_0x478723[_0x0a9e('0x27')][_0x0a9e('0x26')]);}})[_0x0a9e('0x28')](function(_0x16b1ca){logger['error']('ChatMessage,\x20%s,\x20%s',_0x1985b6,_0x16b1ca);_0x48f32d(_0x16b1ca);});});}function respondWithStatusCode(_0x197ec0,_0x3a8e58){_0x3a8e58=_0x3a8e58||0xcc;return function(_0x40c424){if(_0x40c424){return _0x197ec0[_0x0a9e('0x29')](_0x3a8e58);}return _0x197ec0['status'](_0x3a8e58)[_0x0a9e('0x2a')]();};}function respondWithResult(_0x479bc4,_0x45a1e7){_0x45a1e7=_0x45a1e7||0xc8;return function(_0x5bfb33){if(_0x5bfb33){return _0x479bc4[_0x0a9e('0x2b')](_0x45a1e7)[_0x0a9e('0x2c')](_0x5bfb33);}};}function respondWithFilteredResult(_0x25fba9,_0x14433c){return function(_0x140511){if(_0x140511){var _0x1538a4=typeof _0x14433c[_0x0a9e('0x2d')]===_0x0a9e('0x2e')&&typeof _0x14433c['limit']===_0x0a9e('0x2e');var _0x468813=_0x140511[_0x0a9e('0x2f')];var _0x2ec755=_0x1538a4?0x0:_0x14433c['offset'];var _0x15b200=_0x1538a4?_0x140511[_0x0a9e('0x2f')]:_0x14433c[_0x0a9e('0x2d')]+_0x14433c[_0x0a9e('0x30')];var _0x58b06f;if(_0x15b200>=_0x468813){_0x15b200=_0x468813;_0x58b06f=0xc8;}else{_0x58b06f=0xce;}_0x25fba9[_0x0a9e('0x2b')](_0x58b06f);return _0x25fba9[_0x0a9e('0x31')](_0x0a9e('0x32'),_0x2ec755+'-'+_0x15b200+'/'+_0x468813)[_0x0a9e('0x2c')](_0x140511);}return null;};}function patchUpdates(_0x540530){return function(_0x426950){try{jsonpatch['apply'](_0x426950,_0x540530,!![]);}catch(_0x2407f9){return BPromise[_0x0a9e('0x33')](_0x2407f9);}return _0x426950[_0x0a9e('0x34')]();};}function saveUpdates(_0x33bdb7,_0x25ce3a){return function(_0x5180f1){if(_0x5180f1){return _0x5180f1[_0x0a9e('0x35')](_0x33bdb7)[_0x0a9e('0x1d')](function(_0x40cb85){return _0x40cb85;});}return null;};}function removeEntity(_0x2da5c0,_0x2b45ea){return function(_0x409319){if(_0x409319){return _0x409319[_0x0a9e('0x36')]()[_0x0a9e('0x1d')](function(){_0x2da5c0['status'](0xcc)[_0x0a9e('0x2a')]();});}};}function handleEntityNotFound(_0x5e7238,_0x2cc7a0){return function(_0x14b13f){if(!_0x14b13f){_0x5e7238[_0x0a9e('0x29')](0x194);}return _0x14b13f;};}function handleError(_0x3f3d41,_0x567193){_0x567193=_0x567193||0x1f4;return function(_0x191e91){logger[_0x0a9e('0x24')](_0x191e91[_0x0a9e('0x37')]);if(_0x191e91[_0x0a9e('0x38')]){delete _0x191e91['name'];}_0x3f3d41['status'](_0x567193)[_0x0a9e('0x39')](_0x191e91);};}exports['index']=function(_0x24936a,_0x3d9717){var _0x381c37={},_0x1ef87a={},_0x4f41ae={'count':0x0,'rows':[]};var _0x31916f=_[_0x0a9e('0x3a')](db[_0x0a9e('0x3b')]['rawAttributes'],function(_0x1dbf74){return{'name':_0x1dbf74[_0x0a9e('0x3c')],'type':_0x1dbf74[_0x0a9e('0x3d')]['key']};});_0x1ef87a['model']=_[_0x0a9e('0x3a')](_0x31916f,_0x0a9e('0x38'));_0x1ef87a['query']=_[_0x0a9e('0x3e')](_0x24936a[_0x0a9e('0x3f')]);_0x1ef87a[_0x0a9e('0x40')]=_[_0x0a9e('0x41')](_0x1ef87a['model'],_0x1ef87a['query']);_0x381c37[_0x0a9e('0x42')]=_[_0x0a9e('0x41')](_0x1ef87a['model'],qs[_0x0a9e('0x43')](_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x43')]));_0x381c37['attributes']=_0x381c37[_0x0a9e('0x42')][_0x0a9e('0x44')]?_0x381c37[_0x0a9e('0x42')]:_0x1ef87a[_0x0a9e('0x45')];if(!_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x46')](_0x0a9e('0x47'))){_0x381c37[_0x0a9e('0x30')]=qs[_0x0a9e('0x30')](_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x30')]);_0x381c37[_0x0a9e('0x2d')]=qs[_0x0a9e('0x2d')](_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x2d')]);}_0x381c37['order']=qs['sort'](_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x48')]);_0x381c37[_0x0a9e('0x49')]=qs[_0x0a9e('0x40')](_[_0x0a9e('0x4a')](_0x24936a[_0x0a9e('0x3f')],_0x1ef87a[_0x0a9e('0x40')]),_0x31916f);if(_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x4b')]){_0x381c37[_0x0a9e('0x49')]=_[_0x0a9e('0x4c')](_0x381c37[_0x0a9e('0x49')],{'$or':_['map'](_0x31916f,function(_0x117c99){if(_0x117c99[_0x0a9e('0x3d')]!==_0x0a9e('0x4d')){var _0xfbd5ad={};_0xfbd5ad[_0x117c99[_0x0a9e('0x38')]]={'$like':'%'+_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x4b')]+'%'};return _0xfbd5ad;}})});}_0x381c37=_[_0x0a9e('0x4c')]({},_0x381c37,_0x24936a['options']);var _0x2e9d90={'where':_0x381c37['where']};return db[_0x0a9e('0x3b')][_0x0a9e('0x2f')](_0x2e9d90)[_0x0a9e('0x1d')](function(_0x562fb4){_0x4f41ae[_0x0a9e('0x2f')]=_0x562fb4;if(_0x24936a[_0x0a9e('0x3f')][_0x0a9e('0x4e')]){_0x381c37[_0x0a9e('0x4f')]=[{'all':!![]}];}return db[_0x0a9e('0x3b')][_0x0a9e('0x50')](_0x381c37);})[_0x0a9e('0x1d')](function(_0x5bbcde){_0x4f41ae[_0x0a9e('0x51')]=_0x5bbcde;return _0x4f41ae;})[_0x0a9e('0x1d')](respondWithFilteredResult(_0x3d9717,_0x381c37))[_0x0a9e('0x28')](handleError(_0x3d9717,null));};exports[_0x0a9e('0x52')]=function(_0x409789,_0x992c77){var _0x6054ee={'raw':!![],'where':{'id':_0x409789[_0x0a9e('0x53')]['id']}},_0x19383e={};_0x19383e['model']=_[_0x0a9e('0x3e')](db[_0x0a9e('0x3b')]['rawAttributes']);_0x19383e['query']=_['keys'](_0x409789[_0x0a9e('0x3f')]);_0x19383e[_0x0a9e('0x40')]=_[_0x0a9e('0x41')](_0x19383e[_0x0a9e('0x45')],_0x19383e[_0x0a9e('0x3f')]);_0x6054ee[_0x0a9e('0x42')]=_[_0x0a9e('0x41')](_0x19383e[_0x0a9e('0x45')],qs['fields'](_0x409789['query']['fields']));_0x6054ee[_0x0a9e('0x42')]=_0x6054ee[_0x0a9e('0x42')][_0x0a9e('0x44')]?_0x6054ee['attributes']:_0x19383e[_0x0a9e('0x45')];if(_0x409789[_0x0a9e('0x3f')]['includeAll']){_0x6054ee['include']=[{'all':!![]}];}_0x6054ee=_[_0x0a9e('0x4c')]({},_0x6054ee,_0x409789['options']);return db[_0x0a9e('0x3b')]['find'](_0x6054ee)[_0x0a9e('0x1d')](handleEntityNotFound(_0x992c77,null))[_0x0a9e('0x1d')](respondWithResult(_0x992c77,null))[_0x0a9e('0x28')](handleError(_0x992c77,null));};exports['create']=function(_0x2f82da,_0x1bf38a){return db['ChatMessage']['create'](_0x2f82da[_0x0a9e('0x54')],{})[_0x0a9e('0x1d')](respondWithResult(_0x1bf38a,0xc9))['catch'](handleError(_0x1bf38a,null));};exports[_0x0a9e('0x35')]=function(_0x5ce9ac,_0x211ef9){if(_0x5ce9ac['body']['id']){delete _0x5ce9ac[_0x0a9e('0x54')]['id'];}return db['ChatMessage']['find']({'where':{'id':_0x5ce9ac['params']['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x211ef9,null))['then'](saveUpdates(_0x5ce9ac[_0x0a9e('0x54')],null))[_0x0a9e('0x1d')](respondWithResult(_0x211ef9,null))[_0x0a9e('0x28')](handleError(_0x211ef9,null));};exports[_0x0a9e('0x36')]=function(_0x232830,_0x272738){return db[_0x0a9e('0x3b')][_0x0a9e('0x55')]({'where':{'id':_0x232830['params']['id']}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x272738,null))[_0x0a9e('0x1d')](removeEntity(_0x272738,null))[_0x0a9e('0x28')](handleError(_0x272738,null));};exports[_0x0a9e('0x56')]=function(_0xb83dfd,_0x156662){return db['ChatMessage'][_0x0a9e('0x56')]()[_0x0a9e('0x1d')](respondWithResult(_0x156662,null))['catch'](handleError(_0x156662,null));};var interaction_log=require(_0x0a9e('0x57'))('chat-interactions');exports[_0x0a9e('0x58')]=function(_0x5ba1f9,_0x4b3c1a,_0x5674ee){var _0x273cb5={'agent':{},'channel':'chat'};if(_0x5ba1f9[_0x0a9e('0x54')]['id']){delete _0x5ba1f9[_0x0a9e('0x54')]['id'];}_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x59')]=!![];_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x5a')]=moment()['format'](_0x0a9e('0x5b'));_0x5ba1f9['body'][_0x0a9e('0x5c')]=_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x5c')]||_0x5ba1f9['user']['id'];_0x273cb5[_0x0a9e('0x5d')]['id']=_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x5c')];return db[_0x0a9e('0x3b')]['find']({'where':{'id':_0x5ba1f9[_0x0a9e('0x53')]['id'],'UserId':null}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x4b3c1a,null))['then'](saveUpdates(_0x5ba1f9[_0x0a9e('0x54')],null))[_0x0a9e('0x1d')](function(_0x88dcbf){if(_0x88dcbf){_0x273cb5[_0x0a9e('0x26')]=_0x88dcbf[_0x0a9e('0x5e')]({'plain':!![]});return db['ChatInteraction'][_0x0a9e('0x55')]({'where':{'id':_0x88dcbf[_0x0a9e('0x5f')]}});}return null;})[_0x0a9e('0x1d')](handleEntityNotFound(_0x4b3c1a,null))['then'](function(_0x3528b7){if(_0x3528b7){return _0x3528b7['update']({'UserId':_0x5ba1f9['body'][_0x0a9e('0x5c')],'read1stAt':_[_0x0a9e('0x60')](_0x3528b7[_0x0a9e('0x61')])?moment()[_0x0a9e('0x62')](_0x0a9e('0x5b')):undefined});}return null;})[_0x0a9e('0x1d')](function(_0x387489){if(_0x387489){_0x273cb5[_0x0a9e('0x63')]=_0x387489[_0x0a9e('0x5e')]({'plain':!![]});interaction_log[_0x0a9e('0x1e')](_0x0a9e('0x64'),_0x5ba1f9[_0x0a9e('0x65')]['id'],_0x5ba1f9[_0x0a9e('0x65')][_0x0a9e('0x38')],_0x5ba1f9[_0x0a9e('0x65')][_0x0a9e('0x66')],_0x273cb5[_0x0a9e('0x63')]['id'],_0x5ba1f9[_0x0a9e('0x54')]?JSON['stringify'](_0x5ba1f9[_0x0a9e('0x54')]):_0x0a9e('0x67'));return respondWithRpcPromise(_0x0a9e('0x68'),'acceptMessage',_0x273cb5);}return null;})[_0x0a9e('0x1d')](function(_0x30944e){var _0x4b341d=_0x0a9e('0x69')+_0x30944e[_0x0a9e('0x26')][_0x0a9e('0x6a')];return db[_0x0a9e('0x6b')][_0x0a9e('0x3f')](_0x4b341d,{'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]})[_0x0a9e('0x1d')](function(_0x18bf5d){return _0x18bf5d;});})[_0x0a9e('0x1d')](function(_0x23a7d3){if(_0x23a7d3){_0x273cb5[_0x0a9e('0x26')][_0x0a9e('0x6c')]=_0x23a7d3[0x0];if(!_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x5c')])return;return db['User'][_0x0a9e('0x55')]({'where':{'id':_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x5c')],'role':'agent'},'attributes':['id',_0x0a9e('0x38'),'fullname',_0x0a9e('0x6d'),_0x0a9e('0x6e')],'raw':!![]});}return null;})['then'](function(_0x2ed01e){if(!_0x2ed01e)return null;_0x273cb5[_0x0a9e('0x26')][_0x0a9e('0x5d')]=_0x2ed01e;return _0x273cb5;})[_0x0a9e('0x1d')](function(_0x542ece){if(_0x542ece){if(_0x5ba1f9[_0x0a9e('0x54')][_0x0a9e('0x6f')]){_0x273cb5[_0x0a9e('0x26')][_0x0a9e('0x70')]=util['format'](_0x0a9e('0x71'),_0x5ba1f9[_0x0a9e('0x65')][_0x0a9e('0x38')]);_0x273cb5[_0x0a9e('0x26')]['channel']=_0x273cb5[_0x0a9e('0x72')];_0x273cb5[_0x0a9e('0x26')][_0x0a9e('0x73')]=_0x0a9e('0x58');return respondWithRpcPromise(_0x0a9e('0x74'),_0x0a9e('0x74'),{'event':_0x0a9e('0x75'),'message':_[_0x0a9e('0x4c')](_0x273cb5[_0x0a9e('0x26')],JSON[_0x0a9e('0x76')](_0x273cb5[_0x0a9e('0x63')][_0x0a9e('0x77')]))},client9002)[_0x0a9e('0x1d')](function(){return _0x273cb5;});}return _0x273cb5;}return null;})[_0x0a9e('0x1d')](respondWithResult(_0x4b3c1a,null))['catch'](handleError(_0x4b3c1a,null));};var interaction_log=require(_0x0a9e('0x57'))(_0x0a9e('0x78'));exports[_0x0a9e('0x33')]=function(_0x563627,_0x3736e0,_0x33dda0){var _0x8cea96={'agent':{},'channel':_0x0a9e('0x79')};if(_0x563627['body']['id']){delete _0x563627['body']['id'];}_0x563627[_0x0a9e('0x54')][_0x0a9e('0x5c')]=_0x563627['body'][_0x0a9e('0x5c')]||_0x563627['user']['id'];_0x8cea96[_0x0a9e('0x5d')]['id']=_0x563627[_0x0a9e('0x54')]['UserId'];return db[_0x0a9e('0x3b')][_0x0a9e('0x55')]({'where':{'id':_0x563627[_0x0a9e('0x53')]['id'],'UserId':null}})[_0x0a9e('0x1d')](handleEntityNotFound(_0x3736e0,null))[_0x0a9e('0x1d')](function(_0x1f42a0){if(_0x1f42a0){_0x8cea96[_0x0a9e('0x26')]=_0x1f42a0['get']({'plain':!![]});return db[_0x0a9e('0x7a')][_0x0a9e('0x55')]({'where':{'id':_0x1f42a0[_0x0a9e('0x5f')]}});}return null;})[_0x0a9e('0x1d')](handleEntityNotFound(_0x3736e0,null))['then'](function(_0xf51744){if(_0xf51744){_0x8cea96[_0x0a9e('0x63')]=_0xf51744['get']({'plain':!![]});interaction_log[_0x0a9e('0x1e')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x563627[_0x0a9e('0x65')]['id'],_0x563627[_0x0a9e('0x65')][_0x0a9e('0x38')],_0x563627[_0x0a9e('0x65')]['role'],_0x8cea96['interaction']['id'],_0x563627[_0x0a9e('0x54')]?JSON[_0x0a9e('0x23')](_0x563627[_0x0a9e('0x54')]):'null');return respondWithRpcPromise(_0x0a9e('0x7b'),_0x0a9e('0x7c'),_0x8cea96);}return null;})['then'](function(_0x4e46b2){var _0xf0a802='SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20'+_0x4e46b2['message']['ContactId'];return db[_0x0a9e('0x6b')][_0x0a9e('0x3f')](_0xf0a802,{'type':db[_0x0a9e('0x7d')][_0x0a9e('0x7e')][_0x0a9e('0x7f')],'raw':!![]})[_0x0a9e('0x1d')](function(_0x5a8854){return _0x5a8854;});})[_0x0a9e('0x1d')](function(_0x5955f1){if(_0x5955f1){_0x8cea96[_0x0a9e('0x26')][_0x0a9e('0x6c')]=_0x5955f1[0x0];if(!_0x563627[_0x0a9e('0x54')][_0x0a9e('0x5c')])return;return db['User'][_0x0a9e('0x55')]({'where':{'id':_0x563627[_0x0a9e('0x54')][_0x0a9e('0x5c')],'role':'agent'},'attributes':['id',_0x0a9e('0x38'),_0x0a9e('0x80'),_0x0a9e('0x6d'),_0x0a9e('0x6e')],'raw':!![]});}return null;})[_0x0a9e('0x1d')](function(_0x1910bf){if(!_0x1910bf)return null;_0x8cea96[_0x0a9e('0x26')][_0x0a9e('0x5d')]=_0x1910bf;return _0x8cea96;})['then'](function(_0x2645d6){if(_0x2645d6){_0x2645d6[_0x0a9e('0x26')]['interface']=util[_0x0a9e('0x62')](_0x0a9e('0x71'),_0x563627[_0x0a9e('0x65')]['name']);_0x2645d6[_0x0a9e('0x26')]['channel']=_0x8cea96[_0x0a9e('0x72')];_0x2645d6[_0x0a9e('0x26')][_0x0a9e('0x73')]=_0x0a9e('0x33');respondWithRpcPromise(_0x0a9e('0x74'),_0x0a9e('0x74'),{'event':_0x0a9e('0x81'),'message':_[_0x0a9e('0x4c')](_0x8cea96['message'],JSON[_0x0a9e('0x76')](_0x8cea96[_0x0a9e('0x63')][_0x0a9e('0x77')]))},client9002);return _0x8cea96;}return null;})[_0x0a9e('0x1d')](respondWithResult(_0x3736e0,null))[_0x0a9e('0x28')](handleError(_0x3736e0,null));};
\ No newline at end of file
+var _0xa236=['ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','ChatMessage,\x20%s,\x20%s','message','catch','status','offset','undefined','limit','count','set','Content-Range','destroy','name','send','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','VIRTUAL','merge','options','include','rows','show','params','keys','includeAll','create','body','update','find','describe','accept','chat','acceptMessage','agent','UserId','get','ChatInteraction','interaction','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','stringify','null','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','Sequelize','SELECT','contact','User','fullname','internal','interface','format','SIP/%s','motionChannel','reject','EventManager','parse','formData','util','lodash','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','chat-interactions','request','then','info','debug'];(function(_0x2125f0,_0x2f23b9){var _0x12d6eb=function(_0x7a43ea){while(--_0x7a43ea){_0x2125f0['push'](_0x2125f0['shift']());}};_0x12d6eb(++_0x2f23b9);}(_0xa236,0x1e4));var _0x6a23=function(_0x5c6061,_0x5bb492){_0x5c6061=_0x5c6061-0x0;var _0x396143=_0xa236[_0x5c6061];return _0x396143;};'use strict';var util=require(_0x6a23('0x0'));var _=require(_0x6a23('0x1'));var Redis=require('ioredis');var interactionService=require(_0x6a23('0x2'));var qs=require(_0x6a23('0x3'));var logger=require(_0x6a23('0x4'))(_0x6a23('0x5'));var config=require(_0x6a23('0x6'));var db=require('../../mysqldb')['db'];config[_0x6a23('0x7')]=_[_0x6a23('0x8')](config[_0x6a23('0x7')],{'host':_0x6a23('0x9'),'port':0x18eb});var socket=require(_0x6a23('0xa'))(new Redis(config[_0x6a23('0x7')]));require(_0x6a23('0xb'))[_0x6a23('0xc')](socket);var jayson=require(_0x6a23('0xd'));var client=jayson[_0x6a23('0xe')][_0x6a23('0xf')]({'port':0x232c});var client9002=jayson[_0x6a23('0xe')][_0x6a23('0xf')]({'port':0x232a});var interaction_log=require(_0x6a23('0x4'))(_0x6a23('0x10'));function respondWithRpcPromise(_0xf30835,_0x6f10d1,_0x16d619,_0x2cdbc5){return new Promise(function(_0x129770,_0x2550c7){var _0x7be8ef=_0x2cdbc5||client;return _0x7be8ef[_0x6a23('0x11')](_0xf30835,_0x16d619)[_0x6a23('0x12')](function(_0x460c19){logger[_0x6a23('0x13')]('ChatMessage,\x20%s,\x20%s',_0x6f10d1,'request\x20sent');logger[_0x6a23('0x14')](_0x6a23('0x15'),_0x6f10d1,_0x6a23('0x16'),JSON['stringify'](_0x460c19));if(_0x460c19['error']){if(_0x460c19[_0x6a23('0x17')][_0x6a23('0x18')]===0x1f4){logger['error'](_0x6a23('0x19'),_0x6f10d1,_0x460c19['error'][_0x6a23('0x1a')]);return _0x2550c7(_0x460c19['error'][_0x6a23('0x1a')]);}logger[_0x6a23('0x17')](_0x6a23('0x19'),_0x6f10d1,_0x460c19[_0x6a23('0x17')]['message']);return _0x129770(_0x460c19['error']['message']);}else{logger['info'](_0x6a23('0x19'),_0x6f10d1,_0x6a23('0x16'));_0x129770(_0x460c19['result'][_0x6a23('0x1a')]);}})[_0x6a23('0x1b')](function(_0x1bd598){logger[_0x6a23('0x17')](_0x6a23('0x19'),_0x6f10d1,_0x1bd598);_0x2550c7(_0x1bd598);});});}function respondWithResult(_0x47a754,_0x2b90bf){_0x2b90bf=_0x2b90bf||0xc8;return function(_0x3c1332){if(_0x3c1332){return _0x47a754[_0x6a23('0x1c')](_0x2b90bf)['json'](_0x3c1332);}};}function respondWithFilteredResult(_0x4d0331,_0x2fccf3){return function(_0x37f403){if(_0x37f403){var _0x317f7e=typeof _0x2fccf3[_0x6a23('0x1d')]===_0x6a23('0x1e')&&typeof _0x2fccf3[_0x6a23('0x1f')]===_0x6a23('0x1e');var _0x48de6f=_0x37f403[_0x6a23('0x20')];var _0x128418=_0x317f7e?0x0:_0x2fccf3[_0x6a23('0x1d')];var _0x4cdcd7=_0x317f7e?_0x37f403['count']:_0x2fccf3['offset']+_0x2fccf3[_0x6a23('0x1f')];var _0x38ebd8;if(_0x4cdcd7>=_0x48de6f){_0x4cdcd7=_0x48de6f;_0x38ebd8=0xc8;}else{_0x38ebd8=0xce;}_0x4d0331[_0x6a23('0x1c')](_0x38ebd8);return _0x4d0331[_0x6a23('0x21')](_0x6a23('0x22'),_0x128418+'-'+_0x4cdcd7+'/'+_0x48de6f)['json'](_0x37f403);}return null;};}function saveUpdates(_0x5ab977){return function(_0x23a4f4){if(_0x23a4f4){return _0x23a4f4['update'](_0x5ab977)['then'](function(_0x2d9ab1){return _0x2d9ab1;});}return null;};}function removeEntity(_0x2dadc9){return function(_0x176853){if(_0x176853){return _0x176853[_0x6a23('0x23')]()[_0x6a23('0x12')](function(){_0x2dadc9['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0xef6300){return function(_0x1d6446){if(!_0x1d6446){_0xef6300['sendStatus'](0x194);}return _0x1d6446;};}function handleError(_0x212646,_0x45b81d){_0x45b81d=_0x45b81d||0x1f4;return function(_0x3f2735){logger[_0x6a23('0x17')](_0x3f2735['stack']);if(_0x3f2735[_0x6a23('0x24')]){delete _0x3f2735[_0x6a23('0x24')];}_0x212646['status'](_0x45b81d)[_0x6a23('0x25')](_0x3f2735);};}exports[_0x6a23('0x26')]=function(_0x4656f1,_0x48ffcb){var _0x1a3c12={},_0x2bcecd={},_0x50c71d={'count':0x0,'rows':[]};var _0x527cef=_[_0x6a23('0x27')](db[_0x6a23('0x28')][_0x6a23('0x29')],function(_0x58bef6){return{'name':_0x58bef6[_0x6a23('0x2a')],'type':_0x58bef6[_0x6a23('0x2b')][_0x6a23('0x2c')]};});_0x2bcecd[_0x6a23('0x2d')]=_['map'](_0x527cef,_0x6a23('0x24'));_0x2bcecd[_0x6a23('0x2e')]=_['keys'](_0x4656f1[_0x6a23('0x2e')]);_0x2bcecd[_0x6a23('0x2f')]=_['intersection'](_0x2bcecd['model'],_0x2bcecd[_0x6a23('0x2e')]);_0x1a3c12[_0x6a23('0x30')]=_[_0x6a23('0x31')](_0x2bcecd['model'],qs[_0x6a23('0x32')](_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x32')]));_0x1a3c12[_0x6a23('0x30')]=_0x1a3c12[_0x6a23('0x30')][_0x6a23('0x33')]?_0x1a3c12[_0x6a23('0x30')]:_0x2bcecd[_0x6a23('0x2d')];if(!_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x34')](_0x6a23('0x35'))){_0x1a3c12['limit']=qs[_0x6a23('0x1f')](_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x1f')]);_0x1a3c12[_0x6a23('0x1d')]=qs[_0x6a23('0x1d')](_0x4656f1['query'][_0x6a23('0x1d')]);}_0x1a3c12['order']=qs['sort'](_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x36')]);_0x1a3c12[_0x6a23('0x37')]=qs[_0x6a23('0x2f')](_[_0x6a23('0x38')](_0x4656f1[_0x6a23('0x2e')],_0x2bcecd[_0x6a23('0x2f')]),_0x527cef);if(_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x39')]){_0x1a3c12[_0x6a23('0x37')]=_['merge'](_0x1a3c12[_0x6a23('0x37')],{'$or':_[_0x6a23('0x27')](_0x527cef,function(_0x4ccfff){if(_0x4ccfff[_0x6a23('0x2b')]!==_0x6a23('0x3a')){var _0x274bf6={};_0x274bf6[_0x4ccfff[_0x6a23('0x24')]]={'$like':'%'+_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x39')]+'%'};return _0x274bf6;}})});}_0x1a3c12=_[_0x6a23('0x3b')]({},_0x1a3c12,_0x4656f1[_0x6a23('0x3c')]);var _0x57c68c={'where':_0x1a3c12[_0x6a23('0x37')]};return db[_0x6a23('0x28')][_0x6a23('0x20')](_0x57c68c)[_0x6a23('0x12')](function(_0x16e42f){_0x50c71d['count']=_0x16e42f;if(_0x4656f1[_0x6a23('0x2e')]['includeAll']){_0x1a3c12[_0x6a23('0x3d')]=[{'all':!![]}];}return db[_0x6a23('0x28')]['findAll'](_0x1a3c12);})[_0x6a23('0x12')](function(_0x2ff62f){_0x50c71d[_0x6a23('0x3e')]=_0x2ff62f;return _0x50c71d;})['then'](respondWithFilteredResult(_0x48ffcb,_0x1a3c12))[_0x6a23('0x1b')](handleError(_0x48ffcb,null));};exports[_0x6a23('0x3f')]=function(_0x22dfc5,_0x4acd1e){var _0xc0304={'raw':!![],'where':{'id':_0x22dfc5[_0x6a23('0x40')]['id']}},_0x82a9d1={};_0x82a9d1[_0x6a23('0x2d')]=_['keys'](db[_0x6a23('0x28')][_0x6a23('0x29')]);_0x82a9d1[_0x6a23('0x2e')]=_[_0x6a23('0x41')](_0x22dfc5['query']);_0x82a9d1[_0x6a23('0x2f')]=_[_0x6a23('0x31')](_0x82a9d1[_0x6a23('0x2d')],_0x82a9d1[_0x6a23('0x2e')]);_0xc0304['attributes']=_[_0x6a23('0x31')](_0x82a9d1[_0x6a23('0x2d')],qs[_0x6a23('0x32')](_0x22dfc5[_0x6a23('0x2e')][_0x6a23('0x32')]));_0xc0304['attributes']=_0xc0304['attributes'][_0x6a23('0x33')]?_0xc0304[_0x6a23('0x30')]:_0x82a9d1[_0x6a23('0x2d')];if(_0x22dfc5[_0x6a23('0x2e')][_0x6a23('0x42')]){_0xc0304['include']=[{'all':!![]}];}_0xc0304=_[_0x6a23('0x3b')]({},_0xc0304,_0x22dfc5[_0x6a23('0x3c')]);return db[_0x6a23('0x28')]['find'](_0xc0304)['then'](handleEntityNotFound(_0x4acd1e,null))[_0x6a23('0x12')](respondWithResult(_0x4acd1e,null))[_0x6a23('0x1b')](handleError(_0x4acd1e,null));};exports[_0x6a23('0x43')]=function(_0x1290a8,_0x538eea){return db[_0x6a23('0x28')][_0x6a23('0x43')](_0x1290a8[_0x6a23('0x44')],{})['then'](respondWithResult(_0x538eea,0xc9))[_0x6a23('0x1b')](handleError(_0x538eea,null));};exports[_0x6a23('0x45')]=function(_0x58781f,_0x1ac2ed){if(_0x58781f['body']['id']){delete _0x58781f['body']['id'];}return db['ChatMessage'][_0x6a23('0x46')]({'where':{'id':_0x58781f['params']['id']}})[_0x6a23('0x12')](handleEntityNotFound(_0x1ac2ed,null))['then'](saveUpdates(_0x58781f['body'],null))[_0x6a23('0x12')](respondWithResult(_0x1ac2ed,null))[_0x6a23('0x1b')](handleError(_0x1ac2ed,null));};exports[_0x6a23('0x23')]=function(_0x40bdce,_0x448910){return db[_0x6a23('0x28')]['find']({'where':{'id':_0x40bdce[_0x6a23('0x40')]['id']}})[_0x6a23('0x12')](handleEntityNotFound(_0x448910,null))[_0x6a23('0x12')](removeEntity(_0x448910,null))['catch'](handleError(_0x448910,null));};exports[_0x6a23('0x47')]=function(_0x13e574,_0x8dbadc){return db['ChatMessage'][_0x6a23('0x47')]()[_0x6a23('0x12')](respondWithResult(_0x8dbadc,null))[_0x6a23('0x1b')](handleError(_0x8dbadc,null));};exports[_0x6a23('0x48')]=function(_0x480dae,_0x5b5bbc){var _0x1aa4e6=_0x6a23('0x49');return interactionService[_0x6a23('0x4a')](_0x480dae,_0x1aa4e6)[_0x6a23('0x12')](respondWithResult(_0x5b5bbc,null))[_0x6a23('0x1b')](handleError(_0x5b5bbc,null));};exports['reject']=function(_0x1f97a2,_0x503099){var _0x305222={'agent':{},'channel':_0x6a23('0x49')};if(_0x1f97a2[_0x6a23('0x44')]['id']){delete _0x1f97a2['body']['id'];}_0x1f97a2['body']['UserId']=_0x1f97a2['body']['UserId']||_0x1f97a2['user']['id'];_0x305222[_0x6a23('0x4b')]['id']=_0x1f97a2['body'][_0x6a23('0x4c')];return db[_0x6a23('0x28')][_0x6a23('0x46')]({'where':{'id':_0x1f97a2[_0x6a23('0x40')]['id'],'UserId':null}})[_0x6a23('0x12')](handleEntityNotFound(_0x503099,null))[_0x6a23('0x12')](function(_0x4845e0){if(_0x4845e0){_0x305222[_0x6a23('0x1a')]=_0x4845e0[_0x6a23('0x4d')]({'plain':!![]});return db[_0x6a23('0x4e')][_0x6a23('0x46')]({'where':{'id':_0x4845e0['ChatInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x503099,null))[_0x6a23('0x12')](function(_0x4b8f2a){if(_0x4b8f2a){_0x305222[_0x6a23('0x4f')]=_0x4b8f2a[_0x6a23('0x4d')]({'plain':!![]});interaction_log[_0x6a23('0x13')](_0x6a23('0x50'),_0x1f97a2[_0x6a23('0x51')]['id'],_0x1f97a2['user'][_0x6a23('0x24')],_0x1f97a2[_0x6a23('0x51')][_0x6a23('0x52')],_0x305222[_0x6a23('0x4f')]['id'],_0x1f97a2['body']?JSON[_0x6a23('0x53')](_0x1f97a2['body']):_0x6a23('0x54'));return respondWithRpcPromise('RejectMessage','rejectMessage',_0x305222);}return null;})[_0x6a23('0x12')](function(_0x46b322){var _0x1671ad=_0x6a23('0x55')+_0x46b322['message'][_0x6a23('0x56')];return db['sequelize'][_0x6a23('0x2e')](_0x1671ad,{'type':db[_0x6a23('0x57')]['QueryTypes'][_0x6a23('0x58')],'raw':!![]})[_0x6a23('0x12')](function(_0x1dc9af){return _0x1dc9af;});})[_0x6a23('0x12')](function(_0x1b9b67){if(_0x1b9b67){_0x305222[_0x6a23('0x1a')][_0x6a23('0x59')]=_0x1b9b67[0x0];if(!_0x1f97a2[_0x6a23('0x44')][_0x6a23('0x4c')])return;return db[_0x6a23('0x5a')][_0x6a23('0x46')]({'where':{'id':_0x1f97a2['body'][_0x6a23('0x4c')],'role':_0x6a23('0x4b')},'attributes':['id',_0x6a23('0x24'),_0x6a23('0x5b'),'email',_0x6a23('0x5c')],'raw':!![]});}return null;})[_0x6a23('0x12')](function(_0x8a088c){if(!_0x8a088c)return null;_0x305222[_0x6a23('0x1a')]['agent']=_0x8a088c;return _0x305222;})[_0x6a23('0x12')](function(_0x3f892f){if(_0x3f892f){_0x3f892f[_0x6a23('0x1a')][_0x6a23('0x5d')]=util[_0x6a23('0x5e')](_0x6a23('0x5f'),_0x1f97a2[_0x6a23('0x51')][_0x6a23('0x24')]);_0x3f892f[_0x6a23('0x1a')]['channel']=_0x305222['channel'];_0x3f892f[_0x6a23('0x1a')][_0x6a23('0x60')]=_0x305222['channel'];_0x3f892f[_0x6a23('0x1a')]['event']=_0x6a23('0x61');respondWithRpcPromise(_0x6a23('0x62'),_0x6a23('0x62'),{'event':'rejectmessage','message':_[_0x6a23('0x3b')](_0x305222[_0x6a23('0x1a')],JSON[_0x6a23('0x63')](_0x305222[_0x6a23('0x4f')][_0x6a23('0x64')]))},client9002);return _0x305222;}return null;})[_0x6a23('0x12')](respondWithResult(_0x503099,null))[_0x6a23('0x1b')](handleError(_0x503099,null));};
\ No newline at end of file