3aee354439fb4ca2d104343241b6ad2e52488ef0
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xa0c5=['set','apply','reject','destroy','name','send','index','map','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','type','VIRTUAL','options','ChatMessage','include','findAll','rows','show','params','length','find','body','update','describe','chat-interactions','accept','chat','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','ChatInteraction','isNil','interaction','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','SELECT','contact','fullname','email','internal','manual','channel','event','EventManager','acceptmessage','parse','formData','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','QueryTypes','User','interface','rejectmessage','rimraf','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','squel','crypto','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','defaults','redis','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','then','request\x20sent','stringify','error','code','ChatMessage,\x20%s,\x20%s','message','info','result','catch','sendStatus','status','end','json','offset','limit','count'];(function(_0x45f951,_0x2750c8){var _0x24756c=function(_0x31c931){while(--_0x31c931){_0x45f951['push'](_0x45f951['shift']());}};_0x24756c(++_0x2750c8);}(_0xa0c5,0x158));var _0x5a0c=function(_0x1b9ec2,_0x39ae50){_0x1b9ec2=_0x1b9ec2-0x0;var _0x26c710=_0xa0c5[_0x1b9ec2];return _0x26c710;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x5a0c('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x5a0c('0x1'));var BPromise=require(_0x5a0c('0x2'));var Mustache=require(_0x5a0c('0x3'));var util=require(_0x5a0c('0x4'));var path=require(_0x5a0c('0x5'));var sox=require(_0x5a0c('0x6'));var csv=require(_0x5a0c('0x7'));var ejs=require(_0x5a0c('0x8'));var fs=require('fs');var fs_extra=require(_0x5a0c('0x9'));var _=require('lodash');var squel=require(_0x5a0c('0xa'));var crypto=require(_0x5a0c('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x5a0c('0xc'));var toCsv=require(_0x5a0c('0x7'));var querystring=require(_0x5a0c('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x5a0c('0xe'));var qs=require(_0x5a0c('0xf'));var as=require(_0x5a0c('0x10'));var hardwareService=require(_0x5a0c('0x11'));var logger=require(_0x5a0c('0x12'))(_0x5a0c('0x13'));var utils=require(_0x5a0c('0x14'));var config=require(_0x5a0c('0x15'));var licenseUtil=require(_0x5a0c('0x16'));var db=require('../../mysqldb')['db'];config['redis']=_[_0x5a0c('0x17')](config[_0x5a0c('0x18')],{'host':_0x5a0c('0x19'),'port':0x18eb});var socket=require(_0x5a0c('0x1a'))(new Redis(config[_0x5a0c('0x18')]));require(_0x5a0c('0x1b'))[_0x5a0c('0x1c')](socket);var jayson=require(_0x5a0c('0x1d'));var client=jayson[_0x5a0c('0x1e')][_0x5a0c('0x1f')]({'port':0x232c});var client9002=jayson[_0x5a0c('0x1e')][_0x5a0c('0x1f')]({'port':0x232a});function respondWithRpcPromise(_0x2dab14,_0x4243e1,_0x3b7334,_0x2432d8){return new BPromise(function(_0x139200,_0x30e0aa){var _0x595b7f=_0x2432d8||client;return _0x595b7f['request'](_0x2dab14,_0x3b7334)[_0x5a0c('0x20')](function(_0x2510db){logger['info']('ChatMessage,\x20%s,\x20%s',_0x4243e1,'request\x20sent');logger['debug']('ChatMessage,\x20%s,\x20%s,\x20%s',_0x4243e1,_0x5a0c('0x21'),JSON[_0x5a0c('0x22')](_0x2510db));if(_0x2510db[_0x5a0c('0x23')]){if(_0x2510db['error'][_0x5a0c('0x24')]===0x1f4){logger['error'](_0x5a0c('0x25'),_0x4243e1,_0x2510db[_0x5a0c('0x23')][_0x5a0c('0x26')]);return _0x30e0aa(_0x2510db['error'][_0x5a0c('0x26')]);}logger['error'](_0x5a0c('0x25'),_0x4243e1,_0x2510db[_0x5a0c('0x23')][_0x5a0c('0x26')]);return _0x139200(_0x2510db[_0x5a0c('0x23')][_0x5a0c('0x26')]);}else{logger[_0x5a0c('0x27')](_0x5a0c('0x25'),_0x4243e1,_0x5a0c('0x21'));_0x139200(_0x2510db[_0x5a0c('0x28')][_0x5a0c('0x26')]);}})[_0x5a0c('0x29')](function(_0x3e8604){logger[_0x5a0c('0x23')](_0x5a0c('0x25'),_0x4243e1,_0x3e8604);_0x30e0aa(_0x3e8604);});});}function respondWithStatusCode(_0x571d39,_0x123be1){_0x123be1=_0x123be1||0xcc;return function(_0x3049ca){if(_0x3049ca){return _0x571d39[_0x5a0c('0x2a')](_0x123be1);}return _0x571d39[_0x5a0c('0x2b')](_0x123be1)[_0x5a0c('0x2c')]();};}function respondWithResult(_0x2a1c01,_0x251f6d){_0x251f6d=_0x251f6d||0xc8;return function(_0x3e71b4){if(_0x3e71b4){return _0x2a1c01['status'](_0x251f6d)[_0x5a0c('0x2d')](_0x3e71b4);}};}function respondWithFilteredResult(_0x25b8c3,_0x181997){return function(_0x12b5ac){if(_0x12b5ac){var _0x38f3c6=typeof _0x181997[_0x5a0c('0x2e')]==='undefined'&&typeof _0x181997[_0x5a0c('0x2f')]==='undefined';var _0x3af1df=_0x12b5ac[_0x5a0c('0x30')];var _0x5358b6=_0x38f3c6?0x0:_0x181997[_0x5a0c('0x2e')];var _0x196f73=_0x38f3c6?_0x12b5ac[_0x5a0c('0x30')]:_0x181997[_0x5a0c('0x2e')]+_0x181997[_0x5a0c('0x2f')];var _0x543067;if(_0x196f73>=_0x3af1df){_0x196f73=_0x3af1df;_0x543067=0xc8;}else{_0x543067=0xce;}_0x25b8c3['status'](_0x543067);return _0x25b8c3[_0x5a0c('0x31')]('Content-Range',_0x5358b6+'-'+_0x196f73+'/'+_0x3af1df)[_0x5a0c('0x2d')](_0x12b5ac);}return null;};}function patchUpdates(_0x386608){return function(_0x39a741){try{jsonpatch[_0x5a0c('0x32')](_0x39a741,_0x386608,!![]);}catch(_0x4681de){return BPromise[_0x5a0c('0x33')](_0x4681de);}return _0x39a741['save']();};}function saveUpdates(_0x5df246,_0x5fe61d){return function(_0x3967e4){if(_0x3967e4){return _0x3967e4['update'](_0x5df246)[_0x5a0c('0x20')](function(_0x1decf7){return _0x1decf7;});}return null;};}function removeEntity(_0x2b4821,_0x1a2976){return function(_0x633c88){if(_0x633c88){return _0x633c88[_0x5a0c('0x34')]()[_0x5a0c('0x20')](function(){_0x2b4821[_0x5a0c('0x2b')](0xcc)[_0x5a0c('0x2c')]();});}};}function handleEntityNotFound(_0x26a4d5,_0x2d0ccf){return function(_0x24171a){if(!_0x24171a){_0x26a4d5[_0x5a0c('0x2a')](0x194);}return _0x24171a;};}function handleError(_0x781e0f,_0x3595a0){_0x3595a0=_0x3595a0||0x1f4;return function(_0x6f35a){logger[_0x5a0c('0x23')](_0x6f35a['stack']);if(_0x6f35a[_0x5a0c('0x35')]){delete _0x6f35a['name'];}_0x781e0f[_0x5a0c('0x2b')](_0x3595a0)[_0x5a0c('0x36')](_0x6f35a);};}exports[_0x5a0c('0x37')]=function(_0x18f8f0,_0x1a3902){var _0x2ce5e1={},_0xa4eb73={},_0x587b96={'count':0x0,'rows':[]};var _0x73c1d8=_[_0x5a0c('0x38')](db['ChatMessage'][_0x5a0c('0x39')],function(_0xa1d59f){return{'name':_0xa1d59f[_0x5a0c('0x3a')],'type':_0xa1d59f['type'][_0x5a0c('0x3b')]};});_0xa4eb73[_0x5a0c('0x3c')]=_[_0x5a0c('0x38')](_0x73c1d8,_0x5a0c('0x35'));_0xa4eb73[_0x5a0c('0x3d')]=_[_0x5a0c('0x3e')](_0x18f8f0['query']);_0xa4eb73[_0x5a0c('0x3f')]=_[_0x5a0c('0x40')](_0xa4eb73[_0x5a0c('0x3c')],_0xa4eb73[_0x5a0c('0x3d')]);_0x2ce5e1[_0x5a0c('0x41')]=_[_0x5a0c('0x40')](_0xa4eb73['model'],qs[_0x5a0c('0x42')](_0x18f8f0['query']['fields']));_0x2ce5e1['attributes']=_0x2ce5e1[_0x5a0c('0x41')]['length']?_0x2ce5e1[_0x5a0c('0x41')]:_0xa4eb73['model'];if(!_0x18f8f0[_0x5a0c('0x3d')][_0x5a0c('0x43')](_0x5a0c('0x44'))){_0x2ce5e1[_0x5a0c('0x2f')]=qs['limit'](_0x18f8f0[_0x5a0c('0x3d')]['limit']);_0x2ce5e1[_0x5a0c('0x2e')]=qs[_0x5a0c('0x2e')](_0x18f8f0[_0x5a0c('0x3d')][_0x5a0c('0x2e')]);}_0x2ce5e1[_0x5a0c('0x45')]=qs[_0x5a0c('0x46')](_0x18f8f0[_0x5a0c('0x3d')]['sort']);_0x2ce5e1[_0x5a0c('0x47')]=qs[_0x5a0c('0x3f')](_[_0x5a0c('0x48')](_0x18f8f0[_0x5a0c('0x3d')],_0xa4eb73[_0x5a0c('0x3f')]),_0x73c1d8);if(_0x18f8f0[_0x5a0c('0x3d')][_0x5a0c('0x49')]){_0x2ce5e1[_0x5a0c('0x47')]=_[_0x5a0c('0x4a')](_0x2ce5e1[_0x5a0c('0x47')],{'$or':_[_0x5a0c('0x38')](_0x73c1d8,function(_0x4d48cb){if(_0x4d48cb[_0x5a0c('0x4b')]!==_0x5a0c('0x4c')){var _0x347c7d={};_0x347c7d[_0x4d48cb[_0x5a0c('0x35')]]={'$like':'%'+_0x18f8f0[_0x5a0c('0x3d')]['filter']+'%'};return _0x347c7d;}})});}_0x2ce5e1=_[_0x5a0c('0x4a')]({},_0x2ce5e1,_0x18f8f0[_0x5a0c('0x4d')]);var _0x452783={'where':_0x2ce5e1[_0x5a0c('0x47')]};return db[_0x5a0c('0x4e')]['count'](_0x452783)[_0x5a0c('0x20')](function(_0x186342){_0x587b96[_0x5a0c('0x30')]=_0x186342;if(_0x18f8f0[_0x5a0c('0x3d')]['includeAll']){_0x2ce5e1[_0x5a0c('0x4f')]=[{'all':!![]}];}return db[_0x5a0c('0x4e')][_0x5a0c('0x50')](_0x2ce5e1);})[_0x5a0c('0x20')](function(_0x24f58a){_0x587b96[_0x5a0c('0x51')]=_0x24f58a;return _0x587b96;})[_0x5a0c('0x20')](respondWithFilteredResult(_0x1a3902,_0x2ce5e1))[_0x5a0c('0x29')](handleError(_0x1a3902,null));};exports[_0x5a0c('0x52')]=function(_0x745af4,_0x277969){var _0x1c8356={'raw':!![],'where':{'id':_0x745af4[_0x5a0c('0x53')]['id']}},_0x56839f={};_0x56839f[_0x5a0c('0x3c')]=_['keys'](db[_0x5a0c('0x4e')][_0x5a0c('0x39')]);_0x56839f['query']=_[_0x5a0c('0x3e')](_0x745af4[_0x5a0c('0x3d')]);_0x56839f['filters']=_[_0x5a0c('0x40')](_0x56839f[_0x5a0c('0x3c')],_0x56839f[_0x5a0c('0x3d')]);_0x1c8356[_0x5a0c('0x41')]=_[_0x5a0c('0x40')](_0x56839f[_0x5a0c('0x3c')],qs[_0x5a0c('0x42')](_0x745af4['query'][_0x5a0c('0x42')]));_0x1c8356[_0x5a0c('0x41')]=_0x1c8356[_0x5a0c('0x41')][_0x5a0c('0x54')]?_0x1c8356['attributes']:_0x56839f[_0x5a0c('0x3c')];if(_0x745af4['query']['includeAll']){_0x1c8356['include']=[{'all':!![]}];}_0x1c8356=_['merge']({},_0x1c8356,_0x745af4[_0x5a0c('0x4d')]);return db[_0x5a0c('0x4e')][_0x5a0c('0x55')](_0x1c8356)[_0x5a0c('0x20')](handleEntityNotFound(_0x277969,null))[_0x5a0c('0x20')](respondWithResult(_0x277969,null))[_0x5a0c('0x29')](handleError(_0x277969,null));};exports['create']=function(_0x5dcf61,_0x24a05b){return db['ChatMessage']['create'](_0x5dcf61[_0x5a0c('0x56')],{})[_0x5a0c('0x20')](respondWithResult(_0x24a05b,0xc9))['catch'](handleError(_0x24a05b,null));};exports[_0x5a0c('0x57')]=function(_0x14a75a,_0xe5304c){if(_0x14a75a[_0x5a0c('0x56')]['id']){delete _0x14a75a[_0x5a0c('0x56')]['id'];}return db[_0x5a0c('0x4e')][_0x5a0c('0x55')]({'where':{'id':_0x14a75a[_0x5a0c('0x53')]['id']}})[_0x5a0c('0x20')](handleEntityNotFound(_0xe5304c,null))[_0x5a0c('0x20')](saveUpdates(_0x14a75a[_0x5a0c('0x56')],null))['then'](respondWithResult(_0xe5304c,null))[_0x5a0c('0x29')](handleError(_0xe5304c,null));};exports['destroy']=function(_0xde38f,_0x4ce56e){return db[_0x5a0c('0x4e')][_0x5a0c('0x55')]({'where':{'id':_0xde38f[_0x5a0c('0x53')]['id']}})['then'](handleEntityNotFound(_0x4ce56e,null))[_0x5a0c('0x20')](removeEntity(_0x4ce56e,null))[_0x5a0c('0x29')](handleError(_0x4ce56e,null));};exports[_0x5a0c('0x58')]=function(_0xf57a0a,_0x121195){return db[_0x5a0c('0x4e')]['describe']()[_0x5a0c('0x20')](respondWithResult(_0x121195,null))['catch'](handleError(_0x121195,null));};var interaction_log=require(_0x5a0c('0x12'))(_0x5a0c('0x59'));exports[_0x5a0c('0x5a')]=function(_0x3d48e5,_0x11189c,_0xcce195){var _0x48a05c={'agent':{},'channel':_0x5a0c('0x5b')};if(_0x3d48e5[_0x5a0c('0x56')]['id']){delete _0x3d48e5[_0x5a0c('0x56')]['id'];}_0x3d48e5[_0x5a0c('0x56')][_0x5a0c('0x5c')]=!![];_0x3d48e5[_0x5a0c('0x56')][_0x5a0c('0x5d')]=moment()[_0x5a0c('0x5e')](_0x5a0c('0x5f'));_0x3d48e5[_0x5a0c('0x56')][_0x5a0c('0x60')]=_0x3d48e5['body'][_0x5a0c('0x60')]||_0x3d48e5[_0x5a0c('0x61')]['id'];_0x48a05c[_0x5a0c('0x62')]['id']=_0x3d48e5[_0x5a0c('0x56')]['UserId'];return db[_0x5a0c('0x4e')][_0x5a0c('0x55')]({'where':{'id':_0x3d48e5[_0x5a0c('0x53')]['id'],'UserId':null}})[_0x5a0c('0x20')](handleEntityNotFound(_0x11189c,null))[_0x5a0c('0x20')](saveUpdates(_0x3d48e5[_0x5a0c('0x56')],null))['then'](function(_0x120eb4){if(_0x120eb4){_0x48a05c[_0x5a0c('0x26')]=_0x120eb4['get']({'plain':!![]});return db[_0x5a0c('0x63')][_0x5a0c('0x55')]({'where':{'id':_0x120eb4['ChatInteractionId']}});}return null;})[_0x5a0c('0x20')](handleEntityNotFound(_0x11189c,null))['then'](function(_0x49c76a){if(_0x49c76a){return _0x49c76a['update']({'UserId':_0x3d48e5[_0x5a0c('0x56')][_0x5a0c('0x60')],'read1stAt':_[_0x5a0c('0x64')](_0x49c76a['read1stAt'])?moment()['format'](_0x5a0c('0x5f')):undefined});}return null;})['then'](function(_0x33088c){if(_0x33088c){_0x48a05c[_0x5a0c('0x65')]=_0x33088c[_0x5a0c('0x66')]({'plain':!![]});interaction_log['info'](_0x5a0c('0x67'),_0x3d48e5[_0x5a0c('0x61')]['id'],_0x3d48e5[_0x5a0c('0x61')][_0x5a0c('0x35')],_0x3d48e5[_0x5a0c('0x61')][_0x5a0c('0x68')],_0x48a05c[_0x5a0c('0x65')]['id'],_0x3d48e5[_0x5a0c('0x56')]?JSON[_0x5a0c('0x22')](_0x3d48e5[_0x5a0c('0x56')]):_0x5a0c('0x69'));return respondWithRpcPromise(_0x5a0c('0x6a'),_0x5a0c('0x6b'),_0x48a05c);}return null;})['then'](function(_0x1182e4){var _0x6a70de=_0x5a0c('0x6c')+_0x1182e4[_0x5a0c('0x26')][_0x5a0c('0x6d')];return db[_0x5a0c('0x6e')][_0x5a0c('0x3d')](_0x6a70de,{'type':db[_0x5a0c('0x6f')]['QueryTypes'][_0x5a0c('0x70')],'raw':!![]})['then'](function(_0x512eec){return _0x512eec;});})[_0x5a0c('0x20')](function(_0x46326d){if(_0x46326d){_0x48a05c[_0x5a0c('0x26')][_0x5a0c('0x71')]=_0x46326d[0x0];if(!_0x3d48e5[_0x5a0c('0x56')][_0x5a0c('0x60')])return;return db['User']['find']({'where':{'id':_0x3d48e5[_0x5a0c('0x56')]['UserId'],'role':_0x5a0c('0x62')},'attributes':['id',_0x5a0c('0x35'),_0x5a0c('0x72'),_0x5a0c('0x73'),_0x5a0c('0x74')],'raw':!![]});}return null;})[_0x5a0c('0x20')](function(_0x1913c8){if(!_0x1913c8)return null;_0x48a05c[_0x5a0c('0x26')][_0x5a0c('0x62')]=_0x1913c8;return _0x48a05c;})['then'](function(_0x574020){if(_0x574020){if(_0x3d48e5[_0x5a0c('0x56')][_0x5a0c('0x75')]){_0x48a05c[_0x5a0c('0x26')]['interface']=util[_0x5a0c('0x5e')]('SIP/%s',_0x3d48e5['user']['name']);_0x48a05c[_0x5a0c('0x26')][_0x5a0c('0x76')]=_0x48a05c[_0x5a0c('0x76')];_0x48a05c['message']['motionChannel']=_0x48a05c[_0x5a0c('0x76')];_0x48a05c[_0x5a0c('0x26')][_0x5a0c('0x77')]=_0x5a0c('0x5a');return respondWithRpcPromise('EventManager',_0x5a0c('0x78'),{'event':_0x5a0c('0x79'),'message':_['merge'](_0x48a05c[_0x5a0c('0x26')],JSON[_0x5a0c('0x7a')](_0x48a05c[_0x5a0c('0x65')][_0x5a0c('0x7b')]))},client9002)['then'](function(){return _0x48a05c;});}return _0x48a05c;}return null;})[_0x5a0c('0x20')](respondWithResult(_0x11189c,null))['catch'](handleError(_0x11189c,null));};var interaction_log=require(_0x5a0c('0x12'))(_0x5a0c('0x59'));exports[_0x5a0c('0x33')]=function(_0x3acf1e,_0x4e0801,_0x41513e){var _0x14be6a={'agent':{},'channel':'chat'};if(_0x3acf1e[_0x5a0c('0x56')]['id']){delete _0x3acf1e['body']['id'];}_0x3acf1e[_0x5a0c('0x56')][_0x5a0c('0x60')]=_0x3acf1e[_0x5a0c('0x56')]['UserId']||_0x3acf1e[_0x5a0c('0x61')]['id'];_0x14be6a['agent']['id']=_0x3acf1e[_0x5a0c('0x56')]['UserId'];return db[_0x5a0c('0x4e')]['find']({'where':{'id':_0x3acf1e[_0x5a0c('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x4e0801,null))[_0x5a0c('0x20')](function(_0x729b0a){if(_0x729b0a){_0x14be6a[_0x5a0c('0x26')]=_0x729b0a['get']({'plain':!![]});return db[_0x5a0c('0x63')]['find']({'where':{'id':_0x729b0a['ChatInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x4e0801,null))[_0x5a0c('0x20')](function(_0x281311){if(_0x281311){_0x14be6a['interaction']=_0x281311[_0x5a0c('0x66')]({'plain':!![]});interaction_log['info'](_0x5a0c('0x7c'),_0x3acf1e[_0x5a0c('0x61')]['id'],_0x3acf1e[_0x5a0c('0x61')][_0x5a0c('0x35')],_0x3acf1e['user'][_0x5a0c('0x68')],_0x14be6a[_0x5a0c('0x65')]['id'],_0x3acf1e[_0x5a0c('0x56')]?JSON[_0x5a0c('0x22')](_0x3acf1e[_0x5a0c('0x56')]):'null');return respondWithRpcPromise(_0x5a0c('0x7d'),_0x5a0c('0x7e'),_0x14be6a);}return null;})[_0x5a0c('0x20')](function(_0x5ad5d7){var _0x40b14c=_0x5a0c('0x6c')+_0x5ad5d7[_0x5a0c('0x26')][_0x5a0c('0x6d')];return db[_0x5a0c('0x6e')][_0x5a0c('0x3d')](_0x40b14c,{'type':db[_0x5a0c('0x6f')][_0x5a0c('0x7f')][_0x5a0c('0x70')],'raw':!![]})[_0x5a0c('0x20')](function(_0x344949){return _0x344949;});})[_0x5a0c('0x20')](function(_0x351bad){if(_0x351bad){_0x14be6a['message'][_0x5a0c('0x71')]=_0x351bad[0x0];if(!_0x3acf1e[_0x5a0c('0x56')][_0x5a0c('0x60')])return;return db[_0x5a0c('0x80')][_0x5a0c('0x55')]({'where':{'id':_0x3acf1e[_0x5a0c('0x56')][_0x5a0c('0x60')],'role':'agent'},'attributes':['id',_0x5a0c('0x35'),'fullname',_0x5a0c('0x73'),_0x5a0c('0x74')],'raw':!![]});}return null;})[_0x5a0c('0x20')](function(_0x5837dc){if(!_0x5837dc)return null;_0x14be6a[_0x5a0c('0x26')][_0x5a0c('0x62')]=_0x5837dc;return _0x14be6a;})[_0x5a0c('0x20')](function(_0x2e12eb){if(_0x2e12eb){_0x2e12eb[_0x5a0c('0x26')][_0x5a0c('0x81')]=util[_0x5a0c('0x5e')]('SIP/%s',_0x3acf1e['user'][_0x5a0c('0x35')]);_0x2e12eb[_0x5a0c('0x26')][_0x5a0c('0x76')]=_0x14be6a[_0x5a0c('0x76')];_0x2e12eb[_0x5a0c('0x26')]['motionChannel']=_0x14be6a[_0x5a0c('0x76')];_0x2e12eb[_0x5a0c('0x26')]['event']=_0x5a0c('0x33');respondWithRpcPromise(_0x5a0c('0x78'),_0x5a0c('0x78'),{'event':_0x5a0c('0x82'),'message':_[_0x5a0c('0x4a')](_0x14be6a['message'],JSON[_0x5a0c('0x7a')](_0x14be6a[_0x5a0c('0x65')][_0x5a0c('0x7b')]))},client9002);return _0x14be6a;}return null;})[_0x5a0c('0x20')](respondWithResult(_0x4e0801,null))['catch'](handleError(_0x4e0801,null));};