Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 6076999..8bca6a4 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 _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