Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / api / rpc / rpc.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 _0xcece=['Channel\x20field\x20is\x20mandatory','chat','User','findOne','Agent\x20not\x20found','\x20Message\x20not\x20found','InteractionId','agentTransferTimeout','moment','lodash','util','../../config/logger','jayson/promise','client','http','request','then','error','code','message','result','catch','status','json','sendStatus','stack','name','send','isNil','rows','find','voiceChannels','VoiceChannels','query','voiceChannelMixMonitor','VoiceChannelMixMonitor','merge','params','voiceChannelStopMixMonitor','VoiceChannelStopMixMonitor','voiceQueues','showVoiceQueues','VoiceQueues','voiceQueuesPreview','VoiceQueuesPreview','voiceQueuesChannels','VoiceQueuesChannels','voiceQueuesChannel','VoiceQueuesChannelHangup','voiceQueuesChannelRedirect','VoiceQueuesChannelRedirect','outbound','Outbound','outboundChannels','OutboundChannels','Agents','body','interaction','user','hasOwnProperty','MemberReport','findAll','INTERACTION','length','format','YYYY-MM-DD\x20HH:mm:ss','updateAttributes','findOrCreate','interface','agent','internal','AgentCapacity','capacity','telephones','Telephones','Trunks','campaigns','chatQueues','ChatQueues','showChatQueues','showMailQueues','MailQueues','mailAccounts','MailAccounts','openchannelQueues','OpenchannelQueues','showOpenchannelQueues','smsQueues','SmsQueues','showSmsQueues','whatsappQueues','WhatsappQueues','showWhatsappQueues','faxQueues','FaxQueues','showFaxQueues','faxAccounts','FaxAccounts','MailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','OpenchannelQueuesWaitingInteractions','smsQueuesWaitingInteractions','SmsQueuesWaitingInteractions','faxQueuesWaitingInteractions','FaxQueuesWaitingInteractions','queueNotify','capitalize','Website','Queue','Message','Interaction','Account','update','queue','From','QueueId','TransferReport','create','Start','queueTransferTimeout','*,*,*,*','agentNotify','channel'];(function(_0x366846,_0x2fc1c7){var _0x4a1de0=function(_0x39afc8){while(--_0x39afc8){_0x366846['push'](_0x366846['shift']());}};_0x4a1de0(++_0x2fc1c7);}(_0xcece,0x1f4));var _0xecec=function(_0x54d5fd,_0x359049){_0x54d5fd=_0x54d5fd-0x0;var _0x4f0db1=_0xcece[_0x54d5fd];return _0x4f0db1;};'use strict';var BPromise=require('bluebird');var moment=require(_0xecec('0x0'));var _=require(_0xecec('0x1'));var util=require(_0xecec('0x2'));var db=require('../../mysqldb')['db'];var logger=require(_0xecec('0x3'))('api');var jayson=require(_0xecec('0x4'));var amiClient=jayson[_0xecec('0x5')][_0xecec('0x6')]({'port':0x232a});var mailClient=jayson[_0xecec('0x5')][_0xecec('0x6')]({'port':0x232b});var routingClient=jayson[_0xecec('0x5')][_0xecec('0x6')]({'port':0x232c});function respondWithRpcPromise(_0x3b22c1,_0xa2fea2,_0x212cbe){return new BPromise(function(_0x4133d1,_0x1f1835){var _0x348f1c=_0x212cbe?_0x212cbe:amiClient;return _0x348f1c[_0xecec('0x7')](_0x3b22c1,_0xa2fea2)[_0xecec('0x8')](function(_0x4e51b5){if(_0x4e51b5['error']){if(_0x4e51b5[_0xecec('0x9')][_0xecec('0xa')]===0x1f4){return _0x1f1835(_0x4e51b5[_0xecec('0x9')][_0xecec('0xb')]);}return _0x4133d1(_0x4e51b5['error'][_0xecec('0xb')]);}else{_0x4133d1(_0x4e51b5[_0xecec('0xc')]);}})[_0xecec('0xd')](function(_0x54de42){_0x1f1835(_0x54de42);});});}function respondWithResult(_0x33f626,_0x13efa6){_0x13efa6=_0x13efa6||0xc8;return function(_0x19ba3b){if(_0x19ba3b){return _0x33f626[_0xecec('0xe')](_0x13efa6)[_0xecec('0xf')](_0x19ba3b);}return _0x33f626[_0xecec('0x10')](0x194);};}function handleError(_0xa33227,_0x566a5a){_0x566a5a=_0x566a5a||0x1f4;return function(_0x2c2aa4){logger[_0xecec('0x9')](_0x2c2aa4[_0xecec('0x11')]);if(_0x2c2aa4[_0xecec('0x12')]){delete _0x2c2aa4[_0xecec('0x12')];}_0xa33227[_0xecec('0xe')](_0x566a5a)[_0xecec('0x13')](_0x2c2aa4);};}function findById(_0x33a6c3){return function(_0x4699d9){if(!_[_0xecec('0x14')](_0x33a6c3)&&!_[_0xecec('0x14')](_0x4699d9)&&!_[_0xecec('0x14')](_0x4699d9[_0xecec('0x15')])){return _[_0xecec('0x16')](_0x4699d9[_0xecec('0x15')],function(_0xe7c27b){return _0xe7c27b['id']==_0x33a6c3;});}return null;};}exports[_0xecec('0x17')]=function(_0x568f27,_0x4b9375){return respondWithRpcPromise(_0xecec('0x18'),_0x568f27[_0xecec('0x19')])['then'](respondWithResult(_0x4b9375,null))['catch'](handleError(_0x4b9375,null));};exports[_0xecec('0x1a')]=function(_0x9f2f6f,_0x3bbbd0){return respondWithRpcPromise(_0xecec('0x1b'),_[_0xecec('0x1c')](_0x9f2f6f[_0xecec('0x19')],_0x9f2f6f[_0xecec('0x1d')]))[_0xecec('0x8')](respondWithResult(_0x3bbbd0,null))[_0xecec('0xd')](handleError(_0x3bbbd0,null));};exports[_0xecec('0x1e')]=function(_0x2eee20,_0x5e736c){return respondWithRpcPromise(_0xecec('0x1f'),_[_0xecec('0x1c')](_0x2eee20[_0xecec('0x19')],_0x2eee20[_0xecec('0x1d')]))[_0xecec('0x8')](respondWithResult(_0x5e736c,null))[_0xecec('0xd')](handleError(_0x5e736c,null));};exports[_0xecec('0x20')]=function(_0x2cb59e,_0x383898){return respondWithRpcPromise('VoiceQueues',_0x2cb59e[_0xecec('0x19')])[_0xecec('0x8')](respondWithResult(_0x383898,null))[_0xecec('0xd')](handleError(_0x383898,null));};exports[_0xecec('0x21')]=function(_0x424497,_0x34efe6){return respondWithRpcPromise(_0xecec('0x22'),_0x424497[_0xecec('0x19')])[_0xecec('0x8')](findById(_0x424497['params']['id']))[_0xecec('0x8')](respondWithResult(_0x34efe6,null))[_0xecec('0xd')](handleError(_0x34efe6,null));};exports[_0xecec('0x23')]=function(_0xf1e7cd,_0x3e8933){return respondWithRpcPromise(_0xecec('0x24'),_['merge'](_0xf1e7cd['query'],_0xf1e7cd[_0xecec('0x1d')]))[_0xecec('0x8')](respondWithResult(_0x3e8933,null))[_0xecec('0xd')](handleError(_0x3e8933,null));};exports[_0xecec('0x25')]=function(_0x280c64,_0x307dd0){return respondWithRpcPromise(_0xecec('0x26'),_0x280c64['query'])[_0xecec('0x8')](respondWithResult(_0x307dd0,null))[_0xecec('0xd')](handleError(_0x307dd0,null));};exports[_0xecec('0x27')]=function(_0x3f02e6,_0x22a656){return respondWithRpcPromise('VoiceQueuesChannel',_['merge'](_0x3f02e6['query'],_0x3f02e6['params']))[_0xecec('0x8')](respondWithResult(_0x22a656,null))[_0xecec('0xd')](handleError(_0x22a656,null));};exports['voiceQueuesChannelHangup']=function(_0x1d3551,_0x5022c5){return respondWithRpcPromise(_0xecec('0x28'),_[_0xecec('0x1c')](_0x1d3551['query'],_0x1d3551[_0xecec('0x1d')]))[_0xecec('0x8')](respondWithResult(_0x5022c5,null))[_0xecec('0xd')](handleError(_0x5022c5,null));};exports[_0xecec('0x29')]=function(_0x37f105,_0x238a27){return respondWithRpcPromise(_0xecec('0x2a'),_[_0xecec('0x1c')](_0x37f105[_0xecec('0x19')],_0x37f105['params']))['then'](respondWithResult(_0x238a27,null))[_0xecec('0xd')](handleError(_0x238a27,null));};exports[_0xecec('0x2b')]=function(_0x37136f,_0x460e1a){return respondWithRpcPromise(_0xecec('0x2c'),_0x37136f[_0xecec('0x19')])[_0xecec('0x8')](respondWithResult(_0x460e1a,null))[_0xecec('0xd')](handleError(_0x460e1a,null));};exports[_0xecec('0x2d')]=function(_0x4d93ba,_0x4b9f0e){return respondWithRpcPromise(_0xecec('0x2e'),_0x4d93ba[_0xecec('0x19')])['then'](respondWithResult(_0x4b9f0e,null))[_0xecec('0xd')](handleError(_0x4b9f0e,null));};exports['agents']=function(_0x5434f6,_0x2f1843){var _0x86f839;return respondWithRpcPromise(_0xecec('0x2f'),_0x5434f6[_0xecec('0x19')])[_0xecec('0x8')](function(_0x4c05ba){_0x86f839=_0x4c05ba;return respondWithRpcPromise('Agents',_0x5434f6['query'],routingClient);})[_0xecec('0x8')](function(_0x16b742){return _['merge']({},_0x16b742,_0x86f839);})[_0xecec('0x8')](respondWithResult(_0x2f1843,null))['catch'](handleError(_0x2f1843,null));};exports['agentCapacity']=function(_0xb6f6de,_0x3a7877){if(_0xb6f6de[_0xecec('0x30')]&&_0xb6f6de['body'][_0xecec('0x31')]&&_0xb6f6de[_0xecec('0x32')]&&_0xb6f6de[_0xecec('0x32')][_0xecec('0x12')]){for(var _0x23c515 in _0xb6f6de[_0xecec('0x30')][_0xecec('0x31')]){if(_0xb6f6de[_0xecec('0x30')]['interaction'][_0xecec('0x33')](_0x23c515)){db[_0xecec('0x34')][_0xecec('0x35')]({'where':{'channel':_0x23c515,'membername':_0xb6f6de['user'][_0xecec('0x12')],'type':_0xecec('0x36'),'exitAt':null,'uniqueid':_0xb6f6de[_0xecec('0x30')]['interaction'][_0x23c515]&&_0xb6f6de[_0xecec('0x30')][_0xecec('0x31')][_0x23c515][_0xecec('0x37')]?{'$notIn':_0xb6f6de[_0xecec('0x30')][_0xecec('0x31')][_0x23c515]}:{'$ne':null}}})[_0xecec('0x8')](function(_0x4875bc){var _0x14973b=moment()[_0xecec('0x38')](_0xecec('0x39'));for(var _0x479067=0x0,_0x1b2d26=_0x4875bc['length'];_0x479067<_0x1b2d26;_0x479067+=0x1){_0x4875bc[_0x479067][_0xecec('0x3a')]({'exitAt':_0x14973b});}});for(var _0x224f07=0x0;_0x224f07<_0xb6f6de[_0xecec('0x30')]['interaction'][_0x23c515][_0xecec('0x37')];_0x224f07+=0x1){db[_0xecec('0x34')][_0xecec('0x3b')]({'where':{'channel':_0x23c515,'membername':_0xb6f6de[_0xecec('0x32')][_0xecec('0x12')],'type':_0xecec('0x36'),'uniqueid':_0xb6f6de['body'][_0xecec('0x31')][_0x23c515][_0x224f07],'exitAt':null},'defaults':{'channel':_0x23c515,'membername':_0xb6f6de[_0xecec('0x32')][_0xecec('0x12')],'interface':_['isNil'](_0xb6f6de[_0xecec('0x32')][_0xecec('0x3c')])?util[_0xecec('0x38')]('SIP/%s',_0xb6f6de[_0xecec('0x32')][_0xecec('0x12')]):_0xb6f6de['user'][_0xecec('0x3c')],'type':_0xecec('0x36'),'enterAt':moment()['format']('YYYY-MM-DD\x20HH:mm:ss'),'role':_0xecec('0x3d'),'internal':_0xb6f6de[_0xecec('0x32')][_0xecec('0x3e')],'uniqueid':_0xb6f6de['body'][_0xecec('0x31')][_0x23c515][_0x224f07]}});}}}}return respondWithRpcPromise(_0xecec('0x3f'),{'id':_0xb6f6de[_0xecec('0x1d')]['id'],'capacity':_0xb6f6de[_0xecec('0x30')][_0xecec('0x40')]},routingClient)['then'](respondWithResult(_0x3a7877,null))[_0xecec('0xd')](handleError(_0x3a7877,null));};exports[_0xecec('0x41')]=function(_0x189807,_0xd05c42){return respondWithRpcPromise(_0xecec('0x42'),_0x189807[_0xecec('0x19')])[_0xecec('0x8')](respondWithResult(_0xd05c42,null))[_0xecec('0xd')](handleError(_0xd05c42,null));};exports['trunks']=function(_0x2e55d5,_0x50ec38){return respondWithRpcPromise(_0xecec('0x43'),_0x2e55d5[_0xecec('0x19')])[_0xecec('0x8')](respondWithResult(_0x50ec38,null))['catch'](handleError(_0x50ec38,null));};exports[_0xecec('0x44')]=function(_0x15c7de,_0x77b471){return respondWithRpcPromise('Campaigns',_0x15c7de[_0xecec('0x19')])[_0xecec('0x8')](respondWithResult(_0x77b471,null))[_0xecec('0xd')](handleError(_0x77b471,null));};exports[_0xecec('0x45')]=function(_0x30f4b8,_0x192df3){return respondWithRpcPromise(_0xecec('0x46'),_0x30f4b8['query'],routingClient)[_0xecec('0x8')](respondWithResult(_0x192df3,null))[_0xecec('0xd')](handleError(_0x192df3,null));};exports[_0xecec('0x47')]=function(_0x4711af,_0xc58548){return respondWithRpcPromise(_0xecec('0x46'),_0x4711af[_0xecec('0x19')],routingClient)[_0xecec('0x8')](findById(_0x4711af[_0xecec('0x1d')]['id']))[_0xecec('0x8')](respondWithResult(_0xc58548,null))['catch'](handleError(_0xc58548,null));};exports['mailQueues']=function(_0x888f20,_0x164ea2){return respondWithRpcPromise('MailQueues',_0x888f20['query'],routingClient)['then'](respondWithResult(_0x164ea2,null))[_0xecec('0xd')](handleError(_0x164ea2,null));};exports[_0xecec('0x48')]=function(_0x1f2a66,_0x56e528){return respondWithRpcPromise(_0xecec('0x49'),_0x1f2a66[_0xecec('0x19')],routingClient)[_0xecec('0x8')](findById(_0x1f2a66[_0xecec('0x1d')]['id']))[_0xecec('0x8')](respondWithResult(_0x56e528,null))[_0xecec('0xd')](handleError(_0x56e528,null));};exports[_0xecec('0x4a')]=function(_0x1db8db,_0x5360d9){return respondWithRpcPromise(_0xecec('0x4b'),_0x1db8db['query'],mailClient)[_0xecec('0x8')](respondWithResult(_0x5360d9,null))['catch'](handleError(_0x5360d9,null));};exports[_0xecec('0x4c')]=function(_0x132b23,_0x36cd93){return respondWithRpcPromise(_0xecec('0x4d'),_0x132b23['query'],routingClient)[_0xecec('0x8')](respondWithResult(_0x36cd93,null))[_0xecec('0xd')](handleError(_0x36cd93,null));};exports[_0xecec('0x4e')]=function(_0x5b77a5,_0x492081){return respondWithRpcPromise(_0xecec('0x4d'),_0x5b77a5['query'],routingClient)['then'](findById(_0x5b77a5[_0xecec('0x1d')]['id']))['then'](respondWithResult(_0x492081,null))[_0xecec('0xd')](handleError(_0x492081,null));};exports[_0xecec('0x4f')]=function(_0x327203,_0x5c0f4c){return respondWithRpcPromise(_0xecec('0x50'),_0x327203[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x5c0f4c,null))['catch'](handleError(_0x5c0f4c,null));};exports[_0xecec('0x51')]=function(_0x4c8bf3,_0xc646b8){return respondWithRpcPromise(_0xecec('0x50'),_0x4c8bf3['query'],routingClient)[_0xecec('0x8')](findById(_0x4c8bf3[_0xecec('0x1d')]['id']))[_0xecec('0x8')](respondWithResult(_0xc646b8,null))[_0xecec('0xd')](handleError(_0xc646b8,null));};exports[_0xecec('0x52')]=function(_0x5990fd,_0x113d55){return respondWithRpcPromise(_0xecec('0x53'),_0x5990fd[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x113d55,null))[_0xecec('0xd')](handleError(_0x113d55,null));};exports[_0xecec('0x54')]=function(_0x2f9c53,_0x38bd76){return respondWithRpcPromise(_0xecec('0x53'),_0x2f9c53[_0xecec('0x19')],routingClient)[_0xecec('0x8')](findById(_0x2f9c53[_0xecec('0x1d')]['id']))['then'](respondWithResult(_0x38bd76,null))[_0xecec('0xd')](handleError(_0x38bd76,null));};exports[_0xecec('0x55')]=function(_0x44eafb,_0x912e38){return respondWithRpcPromise(_0xecec('0x56'),_0x44eafb[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x912e38,null))['catch'](handleError(_0x912e38,null));};exports[_0xecec('0x57')]=function(_0x48164a,_0x1d8dfe){return respondWithRpcPromise(_0xecec('0x56'),_0x48164a[_0xecec('0x19')],routingClient)[_0xecec('0x8')](findById(_0x48164a[_0xecec('0x1d')]['id']))[_0xecec('0x8')](respondWithResult(_0x1d8dfe,null))['catch'](handleError(_0x1d8dfe,null));};exports[_0xecec('0x58')]=function(_0x4bf56b,_0x306e12){return respondWithRpcPromise(_0xecec('0x59'),_0x4bf56b[_0xecec('0x19')])['then'](respondWithResult(_0x306e12,null))[_0xecec('0xd')](handleError(_0x306e12,null));};exports['chatQueuesWaitingInteractions']=function(_0x2e1921,_0x5c58ce){return respondWithRpcPromise('ChatQueuesWaitingInteractions',_0x2e1921[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x5c58ce,null))[_0xecec('0xd')](handleError(_0x5c58ce,null));};exports['mailQueuesWaitingInteractions']=function(_0x220be6,_0x2bd6d7){return respondWithRpcPromise(_0xecec('0x5a'),_0x220be6['query'],routingClient)[_0xecec('0x8')](respondWithResult(_0x2bd6d7,null))[_0xecec('0xd')](handleError(_0x2bd6d7,null));};exports[_0xecec('0x5b')]=function(_0x606460,_0x131967){return respondWithRpcPromise(_0xecec('0x5c'),_0x606460[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x131967,null))['catch'](handleError(_0x131967,null));};exports[_0xecec('0x5d')]=function(_0x354e4e,_0x3184a1){return respondWithRpcPromise(_0xecec('0x5e'),_0x354e4e[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x3184a1,null))[_0xecec('0xd')](handleError(_0x3184a1,null));};exports['whatsappQueuesWaitingInteractions']=function(_0x31f0f4,_0x5e971c){return respondWithRpcPromise('WhatsappQueuesWaitingInteractions',_0x31f0f4[_0xecec('0x19')],routingClient)[_0xecec('0x8')](respondWithResult(_0x5e971c,null))[_0xecec('0xd')](handleError(_0x5e971c,null));};exports[_0xecec('0x5f')]=function(_0x7fed69,_0x3acfca){return respondWithRpcPromise(_0xecec('0x60'),_0x7fed69[_0xecec('0x19')],routingClient)['then'](respondWithResult(_0x3acfca,null))['catch'](handleError(_0x3acfca,null));};exports[_0xecec('0x61')]=function(_0x229dd5){return function(_0x2acbdb,_0x165b58){var _0x39f9b1,_0x439307;var _0x264be9=_[_0xecec('0x62')](_0x229dd5);var _0x45d704=_0x229dd5==='chat'?_0xecec('0x63'):'Account';return db[_0x264be9+_0xecec('0x64')]['findOne']({'raw':!![],'where':{'id':_0x2acbdb[_0xecec('0x1d')]['id']}})[_0xecec('0x8')](function(_0x1c78a0){if(_[_0xecec('0x14')](_0x1c78a0)){throw new Error(_0x264be9+'\x20Queue\x20not\x20found');}_0x39f9b1=_0x1c78a0;return db[_0x264be9+_0xecec('0x65')]['findOne']({'where':{'id':_0x2acbdb[_0xecec('0x30')]['messageId']},'include':[{'model':db[_0x264be9+_0xecec('0x66')],'as':_0xecec('0x66')},{'model':db[_0x264be9+_0x45d704],'as':_0xecec('0x67')}]});})[_0xecec('0x8')](function(_0x14ece3){if(_[_0xecec('0x14')](_0x14ece3)){throw new Error(_0x264be9+'\x20Message\x20not\x20found');}_0x439307=_0x14ece3;return _0x14ece3[_0xecec('0x68')]({'read':0x0,'readAt':null,'UserId':null});})['then'](function(){var _0x3dbc84={'uniqueid':_0x229dd5+'.'+_0x439307['id']+'.'+_0x439307[_0xecec('0x66')]['id'],'FromUserId':_0x2acbdb[_0xecec('0x32')]['id'],'type':_0xecec('0x69')};_0x3dbc84[_0x264be9+'MessageId']=_0x439307['id'];_0x3dbc84[_0x264be9+'InteractionId']=_0x439307[_0xecec('0x66')]['id'];_0x3dbc84[_0xecec('0x6a')+_0x264be9+_0x45d704+'Id']=_0x439307['Account']['id'];_0x3dbc84['To'+_0x264be9+_0xecec('0x6b')]=_0x39f9b1['id'];return db[_0x264be9+_0xecec('0x6c')][_0xecec('0x6d')](_0x3dbc84);})['then'](function(){return respondWithRpcPromise(_0xecec('0x6e'),{'channel':_0x229dd5,'interaction':_0x439307['Interaction'],'message':_0x439307,'account':_0x439307[_0xecec('0x67')],'applications':[{'id':0x0,'priority':0x1,'app':_0xecec('0x69'),'appdata':_0x39f9b1[_0xecec('0x12')]+','+(_0x439307['Account'][_0xecec('0x6f')]||0x12c),'interval':_0xecec('0x70')}]},routingClient);})[_0xecec('0x8')](respondWithResult(_0x165b58,null))['catch'](handleError(_0x165b58,null));};};exports[_0xecec('0x71')]=function(_0x123c41,_0x43786b){var _0x30e89c,_0x53b504;if(_[_0xecec('0x14')](_0x123c41[_0xecec('0x30')][_0xecec('0x72')])){throw new Error(_0xecec('0x73'));}var _0x3aedf2=_0x123c41[_0xecec('0x30')][_0xecec('0x72')];var _0x1f3e8d=_[_0xecec('0x62')](_0x3aedf2);var _0x10b678=_0x3aedf2===_0xecec('0x74')?_0xecec('0x63'):_0xecec('0x67');return db[_0xecec('0x75')][_0xecec('0x76')]({'raw':!![],'where':{'id':_0x123c41[_0xecec('0x1d')]['id'],'role':_0xecec('0x3d')}})[_0xecec('0x8')](function(_0x3a301b){if(_[_0xecec('0x14')](_0x3a301b)){throw new Error(_0xecec('0x77'));}_0x30e89c=_0x3a301b;return db[_0x1f3e8d+_0xecec('0x65')]['findOne']({'where':{'id':_0x123c41[_0xecec('0x30')]['messageId']},'include':[{'model':db[_0x1f3e8d+_0xecec('0x66')],'as':_0xecec('0x66')},{'model':db[_0x1f3e8d+_0x10b678],'as':_0xecec('0x67')}]});})[_0xecec('0x8')](function(_0x3ace3d){if(_[_0xecec('0x14')](_0x3ace3d)){throw new Error(_0x1f3e8d+_0xecec('0x78'));}_0x53b504=_0x3ace3d;return _0x3ace3d[_0xecec('0x68')]({'read':0x0,'readAt':null,'UserId':null});})[_0xecec('0x8')](function(){var _0x5c5ce9={'uniqueid':_0x3aedf2+'.'+_0x53b504['id']+'.'+_0x53b504[_0xecec('0x66')]['id'],'FromUserId':_0x123c41[_0xecec('0x32')]['id'],'type':'queue','ToUserId':_0x30e89c['id']};_0x5c5ce9[_0x1f3e8d+'MessageId']=_0x53b504['id'];_0x5c5ce9[_0x1f3e8d+_0xecec('0x79')]=_0x53b504[_0xecec('0x66')]['id'];_0x5c5ce9['From'+_0x1f3e8d+_0x10b678+'Id']=_0x53b504[_0xecec('0x67')]['id'];return db[_0x1f3e8d+'TransferReport']['create'](_0x5c5ce9);})[_0xecec('0x8')](function(){return respondWithRpcPromise(_0xecec('0x6e'),{'channel':_0x3aedf2,'interaction':_0x53b504[_0xecec('0x66')],'message':_0x53b504,'account':_0x53b504[_0xecec('0x67')],'applications':[{'id':0x0,'priority':0x1,'app':_0xecec('0x3d'),'appdata':_0x30e89c[_0xecec('0x12')]+','+(_0x53b504[_0xecec('0x67')][_0xecec('0x7a')]||0x12c),'interval':_0xecec('0x70')}]},routingClient);})[_0xecec('0x8')](respondWithResult(_0x43786b,null))['catch'](handleError(_0x43786b,null));};