Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 6076999..56c8188 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x009e=['to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','jayson/promise','client','http','request','then','info','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','ChatMessage,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','json','offset','limit','count','set','Content-Range','apply','reject','save','update','destroy','name','send','index','map','ChatMessage','type','key','model','keys','filters','query','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','include','findAll','rows','show','params','rawAttributes','includeAll','find','create','body','describe','chat-interactions','chat','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','ChatInteraction','read1stAt','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','contact','User','email','manual','interface','SIP/%s','channel','event','accept','acceptmessage','parse','ChatInteractionId','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','interaction','RejectMessage','rejectMessage','Sequelize','QueryTypes','SELECT','fullname','internal','motionChannel','EventManager','rejectmessage','eml-format','rimraf','zip-dir','request-promise','moment','mustache','util','sox','fs-extra','lodash','squel','crypto'];(function(_0x311c35,_0x534915){var _0x5cc50c=function(_0x3ad680){while(--_0x3ad680){_0x311c35['push'](_0x311c35['shift']());}};_0x5cc50c(++_0x534915);}(_0x009e,0x100));var _0xe009=function(_0x374c1c,_0x522606){_0x374c1c=_0x374c1c-0x0;var _0x1c1c33=_0x009e[_0x374c1c];return _0x1c1c33;};'use strict';var emlformat=require(_0xe009('0x0'));var rimraf=require(_0xe009('0x1'));var zipdir=require(_0xe009('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xe009('0x3'));var moment=require(_0xe009('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xe009('0x5'));var util=require(_0xe009('0x6'));var path=require('path');var sox=require(_0xe009('0x7'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xe009('0x8'));var _=require(_0xe009('0x9'));var squel=require(_0xe009('0xa'));var crypto=require(_0xe009('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xe009('0xc'));var querystring=require('querystring');var Papa=require(_0xe009('0xd'));var Redis=require(_0xe009('0xe'));var authService=require(_0xe009('0xf'));var qs=require('../../components/parsers/qs');var as=require(_0xe009('0x10'));var hardwareService=require(_0xe009('0x11'));var logger=require(_0xe009('0x12'))('api');var utils=require(_0xe009('0x13'));var config=require(_0xe009('0x14'));var licenseUtil=require(_0xe009('0x15'));var db=require(_0xe009('0x16'))['db'];config[_0xe009('0x17')]=_[_0xe009('0x18')](config[_0xe009('0x17')],{'host':_0xe009('0x19'),'port':0x18eb});var socket=require(_0xe009('0x1a'))(new Redis(config[_0xe009('0x17')]));require('./chatMessage.socket')[_0xe009('0x1b')](socket);var jayson=require(_0xe009('0x1c'));var client=jayson[_0xe009('0x1d')][_0xe009('0x1e')]({'port':0x232c});var client9002=jayson[_0xe009('0x1d')][_0xe009('0x1e')]({'port':0x232a});function respondWithRpcPromise(_0xc196a1,_0x376b50,_0x2d6eef,_0x1bb718){return new BPromise(function(_0x5608e2,_0x5c6e16){var _0x1be21f=_0x1bb718||client;return _0x1be21f[_0xe009('0x1f')](_0xc196a1,_0x2d6eef)[_0xe009('0x20')](function(_0x17a24d){logger[_0xe009('0x21')]('ChatMessage,\x20%s,\x20%s',_0x376b50,_0xe009('0x22'));logger[_0xe009('0x23')](_0xe009('0x24'),_0x376b50,_0xe009('0x22'),JSON[_0xe009('0x25')](_0x17a24d));if(_0x17a24d['error']){if(_0x17a24d[_0xe009('0x26')][_0xe009('0x27')]===0x1f4){logger['error'](_0xe009('0x28'),_0x376b50,_0x17a24d[_0xe009('0x26')][_0xe009('0x29')]);return _0x5c6e16(_0x17a24d[_0xe009('0x26')][_0xe009('0x29')]);}logger[_0xe009('0x26')](_0xe009('0x28'),_0x376b50,_0x17a24d[_0xe009('0x26')][_0xe009('0x29')]);return _0x5608e2(_0x17a24d[_0xe009('0x26')][_0xe009('0x29')]);}else{logger[_0xe009('0x21')](_0xe009('0x28'),_0x376b50,_0xe009('0x22'));_0x5608e2(_0x17a24d[_0xe009('0x2a')][_0xe009('0x29')]);}})[_0xe009('0x2b')](function(_0x20cb17){logger[_0xe009('0x26')]('ChatMessage,\x20%s,\x20%s',_0x376b50,_0x20cb17);_0x5c6e16(_0x20cb17);});});}function respondWithStatusCode(_0x144ba6,_0x8d7c8a){_0x8d7c8a=_0x8d7c8a||0xcc;return function(_0x27645f){if(_0x27645f){return _0x144ba6[_0xe009('0x2c')](_0x8d7c8a);}return _0x144ba6[_0xe009('0x2d')](_0x8d7c8a)[_0xe009('0x2e')]();};}function respondWithResult(_0x20a0b3,_0x1b5057){_0x1b5057=_0x1b5057||0xc8;return function(_0x4aff80){if(_0x4aff80){return _0x20a0b3[_0xe009('0x2d')](_0x1b5057)[_0xe009('0x2f')](_0x4aff80);}};}function respondWithFilteredResult(_0x29af6d,_0x9e7158){return function(_0x226102){if(_0x226102){var _0x64f245=typeof _0x9e7158[_0xe009('0x30')]==='undefined'&&typeof _0x9e7158[_0xe009('0x31')]==='undefined';var _0x310c83=_0x226102[_0xe009('0x32')];var _0x36a4d2=_0x64f245?0x0:_0x9e7158[_0xe009('0x30')];var _0x47a759=_0x64f245?_0x226102[_0xe009('0x32')]:_0x9e7158['offset']+_0x9e7158[_0xe009('0x31')];var _0xa1619b;if(_0x47a759>=_0x310c83){_0x47a759=_0x310c83;_0xa1619b=0xc8;}else{_0xa1619b=0xce;}_0x29af6d['status'](_0xa1619b);return _0x29af6d[_0xe009('0x33')](_0xe009('0x34'),_0x36a4d2+'-'+_0x47a759+'/'+_0x310c83)[_0xe009('0x2f')](_0x226102);}return null;};}function patchUpdates(_0x107bc6){return function(_0x30860c){try{jsonpatch[_0xe009('0x35')](_0x30860c,_0x107bc6,!![]);}catch(_0x44cdd6){return BPromise[_0xe009('0x36')](_0x44cdd6);}return _0x30860c[_0xe009('0x37')]();};}function saveUpdates(_0xc1873e,_0x43265d){return function(_0x240912){if(_0x240912){return _0x240912[_0xe009('0x38')](_0xc1873e)[_0xe009('0x20')](function(_0x2a1030){return _0x2a1030;});}return null;};}function removeEntity(_0x2a40d5,_0x2d3af4){return function(_0x57cff8){if(_0x57cff8){return _0x57cff8[_0xe009('0x39')]()[_0xe009('0x20')](function(){_0x2a40d5['status'](0xcc)[_0xe009('0x2e')]();});}};}function handleEntityNotFound(_0x3836e6,_0x213ee9){return function(_0xdcea0e){if(!_0xdcea0e){_0x3836e6[_0xe009('0x2c')](0x194);}return _0xdcea0e;};}function handleError(_0x3bd0ed,_0x95f08c){_0x95f08c=_0x95f08c||0x1f4;return function(_0x49c1d4){logger['error'](_0x49c1d4['stack']);if(_0x49c1d4[_0xe009('0x3a')]){delete _0x49c1d4['name'];}_0x3bd0ed[_0xe009('0x2d')](_0x95f08c)[_0xe009('0x3b')](_0x49c1d4);};}exports[_0xe009('0x3c')]=function(_0x48d2af,_0x83152){var _0xa637a2={},_0x5d9ddb={},_0x513008={'count':0x0,'rows':[]};var _0x3a220b=_[_0xe009('0x3d')](db[_0xe009('0x3e')]['rawAttributes'],function(_0x108453){return{'name':_0x108453['fieldName'],'type':_0x108453[_0xe009('0x3f')][_0xe009('0x40')]};});_0x5d9ddb[_0xe009('0x41')]=_['map'](_0x3a220b,_0xe009('0x3a'));_0x5d9ddb['query']=_[_0xe009('0x42')](_0x48d2af['query']);_0x5d9ddb[_0xe009('0x43')]=_['intersection'](_0x5d9ddb[_0xe009('0x41')],_0x5d9ddb[_0xe009('0x44')]);_0xa637a2[_0xe009('0x45')]=_[_0xe009('0x46')](_0x5d9ddb[_0xe009('0x41')],qs[_0xe009('0x47')](_0x48d2af['query']['fields']));_0xa637a2[_0xe009('0x45')]=_0xa637a2[_0xe009('0x45')][_0xe009('0x48')]?_0xa637a2['attributes']:_0x5d9ddb['model'];if(!_0x48d2af['query'][_0xe009('0x49')](_0xe009('0x4a'))){_0xa637a2['limit']=qs[_0xe009('0x31')](_0x48d2af[_0xe009('0x44')]['limit']);_0xa637a2[_0xe009('0x30')]=qs[_0xe009('0x30')](_0x48d2af[_0xe009('0x44')][_0xe009('0x30')]);}_0xa637a2[_0xe009('0x4b')]=qs[_0xe009('0x4c')](_0x48d2af[_0xe009('0x44')]['sort']);_0xa637a2[_0xe009('0x4d')]=qs[_0xe009('0x43')](_[_0xe009('0x4e')](_0x48d2af[_0xe009('0x44')],_0x5d9ddb['filters']),_0x3a220b);if(_0x48d2af['query'][_0xe009('0x4f')]){_0xa637a2['where']=_[_0xe009('0x50')](_0xa637a2[_0xe009('0x4d')],{'$or':_['map'](_0x3a220b,function(_0x3e563d){if(_0x3e563d['type']!==_0xe009('0x51')){var _0x5babb8={};_0x5babb8[_0x3e563d[_0xe009('0x3a')]]={'$like':'%'+_0x48d2af[_0xe009('0x44')]['filter']+'%'};return _0x5babb8;}})});}_0xa637a2=_[_0xe009('0x50')]({},_0xa637a2,_0x48d2af[_0xe009('0x52')]);var _0x35737c={'where':_0xa637a2[_0xe009('0x4d')]};return db['ChatMessage']['count'](_0x35737c)[_0xe009('0x20')](function(_0x578aa3){_0x513008['count']=_0x578aa3;if(_0x48d2af[_0xe009('0x44')]['includeAll']){_0xa637a2[_0xe009('0x53')]=[{'all':!![]}];}return db[_0xe009('0x3e')][_0xe009('0x54')](_0xa637a2);})[_0xe009('0x20')](function(_0x4f153a){_0x513008[_0xe009('0x55')]=_0x4f153a;return _0x513008;})[_0xe009('0x20')](respondWithFilteredResult(_0x83152,_0xa637a2))[_0xe009('0x2b')](handleError(_0x83152,null));};exports[_0xe009('0x56')]=function(_0x25a9ca,_0x409340){var _0xba677d={'raw':!![],'where':{'id':_0x25a9ca[_0xe009('0x57')]['id']}},_0xc3ed02={};_0xc3ed02[_0xe009('0x41')]=_['keys'](db[_0xe009('0x3e')][_0xe009('0x58')]);_0xc3ed02[_0xe009('0x44')]=_['keys'](_0x25a9ca[_0xe009('0x44')]);_0xc3ed02['filters']=_[_0xe009('0x46')](_0xc3ed02[_0xe009('0x41')],_0xc3ed02['query']);_0xba677d[_0xe009('0x45')]=_[_0xe009('0x46')](_0xc3ed02[_0xe009('0x41')],qs[_0xe009('0x47')](_0x25a9ca['query']['fields']));_0xba677d[_0xe009('0x45')]=_0xba677d[_0xe009('0x45')][_0xe009('0x48')]?_0xba677d[_0xe009('0x45')]:_0xc3ed02[_0xe009('0x41')];if(_0x25a9ca[_0xe009('0x44')][_0xe009('0x59')]){_0xba677d['include']=[{'all':!![]}];}_0xba677d=_[_0xe009('0x50')]({},_0xba677d,_0x25a9ca[_0xe009('0x52')]);return db['ChatMessage'][_0xe009('0x5a')](_0xba677d)['then'](handleEntityNotFound(_0x409340,null))['then'](respondWithResult(_0x409340,null))[_0xe009('0x2b')](handleError(_0x409340,null));};exports[_0xe009('0x5b')]=function(_0x4228d5,_0x43555d){return db[_0xe009('0x3e')]['create'](_0x4228d5[_0xe009('0x5c')],{})[_0xe009('0x20')](respondWithResult(_0x43555d,0xc9))['catch'](handleError(_0x43555d,null));};exports[_0xe009('0x38')]=function(_0x396fa3,_0x52f454){if(_0x396fa3['body']['id']){delete _0x396fa3['body']['id'];}return db[_0xe009('0x3e')][_0xe009('0x5a')]({'where':{'id':_0x396fa3[_0xe009('0x57')]['id']}})[_0xe009('0x20')](handleEntityNotFound(_0x52f454,null))['then'](saveUpdates(_0x396fa3['body'],null))[_0xe009('0x20')](respondWithResult(_0x52f454,null))['catch'](handleError(_0x52f454,null));};exports[_0xe009('0x39')]=function(_0x4fe9ed,_0x2ed100){return db[_0xe009('0x3e')][_0xe009('0x5a')]({'where':{'id':_0x4fe9ed['params']['id']}})[_0xe009('0x20')](handleEntityNotFound(_0x2ed100,null))[_0xe009('0x20')](removeEntity(_0x2ed100,null))[_0xe009('0x2b')](handleError(_0x2ed100,null));};exports[_0xe009('0x5d')]=function(_0x2d1531,_0x50c29b){return db[_0xe009('0x3e')][_0xe009('0x5d')]()['then'](respondWithResult(_0x50c29b,null))['catch'](handleError(_0x50c29b,null));};var interaction_log=require('../../config/logger')(_0xe009('0x5e'));exports['accept']=function(_0x1ec3a0,_0x274353,_0x5ae96d){var _0x5eb828={'agent':{},'channel':_0xe009('0x5f')};if(_0x1ec3a0[_0xe009('0x5c')]['id']){delete _0x1ec3a0[_0xe009('0x5c')]['id'];}_0x1ec3a0['body'][_0xe009('0x60')]=!![];_0x1ec3a0[_0xe009('0x5c')][_0xe009('0x61')]=moment()[_0xe009('0x62')](_0xe009('0x63'));_0x1ec3a0[_0xe009('0x5c')][_0xe009('0x64')]=_0x1ec3a0[_0xe009('0x5c')][_0xe009('0x64')]||_0x1ec3a0[_0xe009('0x65')]['id'];_0x5eb828[_0xe009('0x66')]['id']=_0x1ec3a0[_0xe009('0x5c')]['UserId'];return db[_0xe009('0x3e')]['find']({'where':{'id':_0x1ec3a0[_0xe009('0x57')]['id'],'UserId':null}})[_0xe009('0x20')](handleEntityNotFound(_0x274353,null))['then'](saveUpdates(_0x1ec3a0[_0xe009('0x5c')],null))['then'](function(_0x5e5d8a){if(_0x5e5d8a){_0x5eb828[_0xe009('0x29')]=_0x5e5d8a[_0xe009('0x67')]({'plain':!![]});return db[_0xe009('0x68')][_0xe009('0x5a')]({'where':{'id':_0x5e5d8a['ChatInteractionId']}});}return null;})[_0xe009('0x20')](handleEntityNotFound(_0x274353,null))[_0xe009('0x20')](function(_0x268a58){if(_0x268a58){return _0x268a58[_0xe009('0x38')]({'UserId':_0x1ec3a0[_0xe009('0x5c')][_0xe009('0x64')],'read1stAt':_['isNil'](_0x268a58[_0xe009('0x69')])?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0xe009('0x20')](function(_0x2480d1){if(_0x2480d1){_0x5eb828['interaction']=_0x2480d1[_0xe009('0x67')]({'plain':!![]});interaction_log['info'](_0xe009('0x6a'),_0x1ec3a0[_0xe009('0x65')]['id'],_0x1ec3a0[_0xe009('0x65')][_0xe009('0x3a')],_0x1ec3a0[_0xe009('0x65')][_0xe009('0x6b')],_0x5eb828['interaction']['id'],_0x1ec3a0['body']?JSON['stringify'](_0x1ec3a0[_0xe009('0x5c')]):_0xe009('0x6c'));return respondWithRpcPromise('AcceptMessage','acceptMessage',_0x5eb828);}return null;})[_0xe009('0x20')](function(_0x5008e6){var _0x320a3b=_0xe009('0x6d')+_0x5008e6[_0xe009('0x29')]['ContactId'];return db['sequelize'][_0xe009('0x44')](_0x320a3b,{'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]})[_0xe009('0x20')](function(_0x19f8b8){return _0x19f8b8;});})[_0xe009('0x20')](function(_0x5194d9){if(_0x5194d9){_0x5eb828[_0xe009('0x29')][_0xe009('0x6e')]=_0x5194d9[0x0];if(!_0x1ec3a0[_0xe009('0x5c')]['UserId'])return;return db[_0xe009('0x6f')][_0xe009('0x5a')]({'where':{'id':_0x1ec3a0[_0xe009('0x5c')][_0xe009('0x64')],'role':_0xe009('0x66')},'attributes':['id',_0xe009('0x3a'),'fullname',_0xe009('0x70'),'internal'],'raw':!![]});}return null;})[_0xe009('0x20')](function(_0x5b1cfd){if(!_0x5b1cfd)return null;_0x5eb828['message'][_0xe009('0x66')]=_0x5b1cfd;return _0x5eb828;})[_0xe009('0x20')](function(_0x393728){if(_0x393728){if(_0x1ec3a0[_0xe009('0x5c')][_0xe009('0x71')]){_0x5eb828[_0xe009('0x29')][_0xe009('0x72')]=util[_0xe009('0x62')](_0xe009('0x73'),_0x1ec3a0[_0xe009('0x65')][_0xe009('0x3a')]);_0x5eb828[_0xe009('0x29')][_0xe009('0x74')]=_0x5eb828[_0xe009('0x74')];_0x5eb828[_0xe009('0x29')]['motionChannel']=_0x5eb828[_0xe009('0x74')];_0x5eb828[_0xe009('0x29')][_0xe009('0x75')]=_0xe009('0x76');return respondWithRpcPromise('EventManager','EventManager',{'event':_0xe009('0x77'),'message':_[_0xe009('0x50')](_0x5eb828['message'],JSON[_0xe009('0x78')](_0x5eb828['interaction']['formData']))},client9002)['then'](function(){return _0x5eb828;});}return _0x5eb828;}return null;})[_0xe009('0x20')](respondWithResult(_0x274353,null))[_0xe009('0x2b')](handleError(_0x274353,null));};var interaction_log=require(_0xe009('0x12'))(_0xe009('0x5e'));exports[_0xe009('0x36')]=function(_0x485913,_0xbc1f52,_0x3f9980){var _0x1f3806={'agent':{},'channel':_0xe009('0x5f')};if(_0x485913[_0xe009('0x5c')]['id']){delete _0x485913[_0xe009('0x5c')]['id'];}_0x485913['body'][_0xe009('0x64')]=_0x485913['body'][_0xe009('0x64')]||_0x485913[_0xe009('0x65')]['id'];_0x1f3806[_0xe009('0x66')]['id']=_0x485913[_0xe009('0x5c')][_0xe009('0x64')];return db['ChatMessage']['find']({'where':{'id':_0x485913[_0xe009('0x57')]['id'],'UserId':null}})[_0xe009('0x20')](handleEntityNotFound(_0xbc1f52,null))[_0xe009('0x20')](function(_0x54c962){if(_0x54c962){_0x1f3806[_0xe009('0x29')]=_0x54c962['get']({'plain':!![]});return db[_0xe009('0x68')][_0xe009('0x5a')]({'where':{'id':_0x54c962[_0xe009('0x79')]}});}return null;})[_0xe009('0x20')](handleEntityNotFound(_0xbc1f52,null))['then'](function(_0x3b34f3){if(_0x3b34f3){_0x1f3806['interaction']=_0x3b34f3[_0xe009('0x67')]({'plain':!![]});interaction_log[_0xe009('0x21')](_0xe009('0x7a'),_0x485913[_0xe009('0x65')]['id'],_0x485913['user'][_0xe009('0x3a')],_0x485913[_0xe009('0x65')]['role'],_0x1f3806[_0xe009('0x7b')]['id'],_0x485913[_0xe009('0x5c')]?JSON[_0xe009('0x25')](_0x485913[_0xe009('0x5c')]):_0xe009('0x6c'));return respondWithRpcPromise(_0xe009('0x7c'),_0xe009('0x7d'),_0x1f3806);}return null;})[_0xe009('0x20')](function(_0x239596){var _0x73b9b0=_0xe009('0x6d')+_0x239596[_0xe009('0x29')]['ContactId'];return db['sequelize'][_0xe009('0x44')](_0x73b9b0,{'type':db[_0xe009('0x7e')][_0xe009('0x7f')][_0xe009('0x80')],'raw':!![]})['then'](function(_0xb27ecf){return _0xb27ecf;});})[_0xe009('0x20')](function(_0x164c01){if(_0x164c01){_0x1f3806[_0xe009('0x29')]['contact']=_0x164c01[0x0];if(!_0x485913[_0xe009('0x5c')][_0xe009('0x64')])return;return db[_0xe009('0x6f')][_0xe009('0x5a')]({'where':{'id':_0x485913['body'][_0xe009('0x64')],'role':_0xe009('0x66')},'attributes':['id','name',_0xe009('0x81'),_0xe009('0x70'),_0xe009('0x82')],'raw':!![]});}return null;})[_0xe009('0x20')](function(_0x3bbb7a){if(!_0x3bbb7a)return null;_0x1f3806[_0xe009('0x29')][_0xe009('0x66')]=_0x3bbb7a;return _0x1f3806;})['then'](function(_0x31cbfd){if(_0x31cbfd){_0x31cbfd[_0xe009('0x29')][_0xe009('0x72')]=util[_0xe009('0x62')](_0xe009('0x73'),_0x485913[_0xe009('0x65')][_0xe009('0x3a')]);_0x31cbfd[_0xe009('0x29')][_0xe009('0x74')]=_0x1f3806[_0xe009('0x74')];_0x31cbfd[_0xe009('0x29')][_0xe009('0x83')]=_0x1f3806[_0xe009('0x74')];_0x31cbfd[_0xe009('0x29')][_0xe009('0x75')]='reject';respondWithRpcPromise(_0xe009('0x84'),'EventManager',{'event':_0xe009('0x85'),'message':_[_0xe009('0x50')](_0x1f3806[_0xe009('0x29')],JSON[_0xe009('0x78')](_0x1f3806[_0xe009('0x7b')]['formData']))},client9002);return _0x1f3806;}return null;})[_0xe009('0x20')](respondWithResult(_0xbc1f52,null))[_0xe009('0x2b')](handleError(_0xbc1f52,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