90a3febdfc1a8a041d4ef86da7d996034536f859
[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 _0x9957=['queueNotify','capitalize','chat','Website','Account','findOne','Message','messageId','Interaction','\x20Message\x20not\x20found','MessageId','InteractionId','QueueId','TransferReport','Start','queue','*,*,*,*','agentNotify','channel','Channel\x20field\x20is\x20mandatory','User','agent','Agent\x20not\x20found','From','create','bluebird','moment','lodash','util','../../config/logger','api','jayson/promise','client','http','request','then','error','code','message','catch','status','json','stack','name','send','isNil','rows','find','merge','query','params','voiceChannelStopMixMonitor','VoiceChannelStopMixMonitor','voiceQueues','VoiceQueues','showVoiceQueues','UpdateVoiceQueue','body','voiceQueuesPreview','VoiceQueuesPreview','VoiceQueuesChannels','voiceQueuesChannel','VoiceQueuesChannelHangup','voiceQueuesChannelRedirect','VoiceQueuesChannelRedirect','outbound','Outbound','outboundChannels','OutboundChannels','agents','Agents','interaction','user','hasOwnProperty','MemberReport','findAll','INTERACTION','YYYY-MM-DD\x20HH:mm:ss','length','updateAttributes','findOrCreate','format','interface','internal','AgentCapacity','telephones','Telephones','trunks','chatQueues','ChatQueues','showChatQueues','MailQueues','showMailQueues','MailAccounts','openchannelQueues','OpenchannelQueues','showOpenchannelQueues','smsQueues','showSmsQueues','SmsQueues','whatsappQueues','WhatsappQueues','showWhatsappQueues','FaxQueues','showFaxQueues','FaxAccounts','chatQueuesWaitingInteractions','ChatQueuesWaitingInteractions','mailQueuesWaitingInteractions','MailQueuesWaitingInteractions','OpenchannelQueuesWaitingInteractions','openchannelQueuesIdWaitingInteractions','type','filter','map','queue_id','uniq','value','indexOf','smsQueuesWaitingInteractions','WhatsappQueuesWaitingInteractions','FaxQueuesWaitingInteractions'];(function(_0x4c6cf1,_0x453d0d){var _0x56e813=function(_0x3e8319){while(--_0x3e8319){_0x4c6cf1['push'](_0x4c6cf1['shift']());}};_0x56e813(++_0x453d0d);}(_0x9957,0x93));var _0x7995=function(_0x5ddb1c,_0x5ea4df){_0x5ddb1c=_0x5ddb1c-0x0;var _0x354adc=_0x9957[_0x5ddb1c];return _0x354adc;};'use strict';var BPromise=require(_0x7995('0x0'));var moment=require(_0x7995('0x1'));var _=require(_0x7995('0x2'));var util=require(_0x7995('0x3'));var db=require('../../mysqldb')['db'];var logger=require(_0x7995('0x4'))(_0x7995('0x5'));var jayson=require(_0x7995('0x6'));var amiClient=jayson[_0x7995('0x7')]['http']({'port':0x232a});var mailClient=jayson[_0x7995('0x7')][_0x7995('0x8')]({'port':0x232b});var routingClient=jayson[_0x7995('0x7')][_0x7995('0x8')]({'port':0x232c});function respondWithRpcPromise(_0xbda126,_0x326741,_0x4996ca){return new BPromise(function(_0x465276,_0x1cad37){var _0x4a64f7=_0x4996ca?_0x4996ca:amiClient;return _0x4a64f7[_0x7995('0x9')](_0xbda126,_0x326741)[_0x7995('0xa')](function(_0x18c8a3){if(_0x18c8a3[_0x7995('0xb')]){if(_0x18c8a3[_0x7995('0xb')][_0x7995('0xc')]===0x1f4){return _0x1cad37(_0x18c8a3[_0x7995('0xb')]['message']);}return _0x465276(_0x18c8a3[_0x7995('0xb')][_0x7995('0xd')]);}else{_0x465276(_0x18c8a3['result']);}})[_0x7995('0xe')](function(_0x2cb37a){_0x1cad37(_0x2cb37a);});});}function respondWithResult(_0x19a27e,_0x385f00){_0x385f00=_0x385f00||0xc8;return function(_0x281576){if(_0x281576){return _0x19a27e[_0x7995('0xf')](_0x385f00)[_0x7995('0x10')](_0x281576);}return _0x19a27e['sendStatus'](0x194);};}function handleError(_0x58f5ad,_0x2b4e94){_0x2b4e94=_0x2b4e94||0x1f4;return function(_0x2233dd){logger[_0x7995('0xb')](_0x2233dd[_0x7995('0x11')]);if(_0x2233dd[_0x7995('0x12')]){delete _0x2233dd[_0x7995('0x12')];}_0x58f5ad[_0x7995('0xf')](_0x2b4e94)[_0x7995('0x13')](_0x2233dd);};}function findById(_0x5377e5){return function(_0x2eeacc){if(!_['isNil'](_0x5377e5)&&!_[_0x7995('0x14')](_0x2eeacc)&&!_[_0x7995('0x14')](_0x2eeacc[_0x7995('0x15')])){return _[_0x7995('0x16')](_0x2eeacc[_0x7995('0x15')],function(_0x37a7d4){return _0x37a7d4['id']==_0x5377e5;});}return null;};}exports['voiceChannels']=function(_0x54c9ae,_0x2536c8){return respondWithRpcPromise('VoiceChannels',_0x54c9ae['query'])[_0x7995('0xa')](respondWithResult(_0x2536c8,null))[_0x7995('0xe')](handleError(_0x2536c8,null));};exports['voiceChannelMixMonitor']=function(_0x3a9b54,_0x51f276){return respondWithRpcPromise('VoiceChannelMixMonitor',_[_0x7995('0x17')](_0x3a9b54[_0x7995('0x18')],_0x3a9b54[_0x7995('0x19')]))[_0x7995('0xa')](respondWithResult(_0x51f276,null))[_0x7995('0xe')](handleError(_0x51f276,null));};exports[_0x7995('0x1a')]=function(_0x5d40ae,_0x32a09a){return respondWithRpcPromise(_0x7995('0x1b'),_[_0x7995('0x17')](_0x5d40ae[_0x7995('0x18')],_0x5d40ae[_0x7995('0x19')]))[_0x7995('0xa')](respondWithResult(_0x32a09a,null))[_0x7995('0xe')](handleError(_0x32a09a,null));};exports[_0x7995('0x1c')]=function(_0x59405a,_0x39df42){return respondWithRpcPromise(_0x7995('0x1d'),_0x59405a[_0x7995('0x18')])[_0x7995('0xa')](respondWithResult(_0x39df42,null))[_0x7995('0xe')](handleError(_0x39df42,null));};exports[_0x7995('0x1e')]=function(_0x56691a,_0x47625f){return respondWithRpcPromise('VoiceQueues',_0x56691a[_0x7995('0x18')])[_0x7995('0xa')](findById(_0x56691a[_0x7995('0x19')]['id']))[_0x7995('0xa')](respondWithResult(_0x47625f,null))[_0x7995('0xe')](handleError(_0x47625f,null));};exports['updateVoiceQueue']=function(_0x9b2a15,_0x514445){return respondWithRpcPromise(_0x7995('0x1f'),_[_0x7995('0x17')](_0x9b2a15[_0x7995('0x20')],_0x9b2a15['params']))['then'](respondWithResult(_0x514445,null))['catch'](handleError(_0x514445,null));};exports[_0x7995('0x21')]=function(_0xe6b0b3,_0x327a81){return respondWithRpcPromise(_0x7995('0x22'),_[_0x7995('0x17')](_0xe6b0b3[_0x7995('0x18')],_0xe6b0b3['params']))['then'](respondWithResult(_0x327a81,null))[_0x7995('0xe')](handleError(_0x327a81,null));};exports['voiceQueuesChannels']=function(_0x553671,_0x3eb566){return respondWithRpcPromise(_0x7995('0x23'),_0x553671[_0x7995('0x18')])[_0x7995('0xa')](respondWithResult(_0x3eb566,null))['catch'](handleError(_0x3eb566,null));};exports[_0x7995('0x24')]=function(_0x33e24e,_0x5dd802){return respondWithRpcPromise('VoiceQueuesChannel',_['merge'](_0x33e24e[_0x7995('0x18')],_0x33e24e[_0x7995('0x19')]))['then'](respondWithResult(_0x5dd802,null))[_0x7995('0xe')](handleError(_0x5dd802,null));};exports['voiceQueuesChannelHangup']=function(_0x37917b,_0x1cb058){return respondWithRpcPromise(_0x7995('0x25'),_['merge'](_0x37917b['query'],_0x37917b[_0x7995('0x19')]))['then'](respondWithResult(_0x1cb058,null))['catch'](handleError(_0x1cb058,null));};exports[_0x7995('0x26')]=function(_0xe328b1,_0x5212ff){return respondWithRpcPromise(_0x7995('0x27'),_[_0x7995('0x17')](_0xe328b1[_0x7995('0x18')],_0xe328b1[_0x7995('0x19')]))[_0x7995('0xa')](respondWithResult(_0x5212ff,null))['catch'](handleError(_0x5212ff,null));};exports[_0x7995('0x28')]=function(_0x242713,_0xf612e6){return respondWithRpcPromise(_0x7995('0x29'),_0x242713['query'])[_0x7995('0xa')](respondWithResult(_0xf612e6,null))[_0x7995('0xe')](handleError(_0xf612e6,null));};exports[_0x7995('0x2a')]=function(_0xe5ea43,_0x1f5bee){return respondWithRpcPromise(_0x7995('0x2b'),_0xe5ea43['query'])[_0x7995('0xa')](respondWithResult(_0x1f5bee,null))[_0x7995('0xe')](handleError(_0x1f5bee,null));};exports[_0x7995('0x2c')]=function(_0x2ea47f,_0x2e04cd){var _0x298fc2;return respondWithRpcPromise(_0x7995('0x2d'),_0x2ea47f[_0x7995('0x18')])[_0x7995('0xa')](function(_0x447981){_0x298fc2=_0x447981;return respondWithRpcPromise(_0x7995('0x2d'),_0x2ea47f[_0x7995('0x18')],routingClient);})[_0x7995('0xa')](function(_0x53cda2){return _['merge']({},_0x53cda2,_0x298fc2);})[_0x7995('0xa')](respondWithResult(_0x2e04cd,null))[_0x7995('0xe')](handleError(_0x2e04cd,null));};exports['agentCapacity']=function(_0x4b0855,_0x3f8522){if(_0x4b0855['body']&&_0x4b0855['body'][_0x7995('0x2e')]&&_0x4b0855[_0x7995('0x2f')]&&_0x4b0855[_0x7995('0x2f')]['name']){for(var _0x46ac4f in _0x4b0855['body'][_0x7995('0x2e')]){if(_0x4b0855['body']['interaction'][_0x7995('0x30')](_0x46ac4f)){db[_0x7995('0x31')][_0x7995('0x32')]({'where':{'channel':_0x46ac4f,'membername':_0x4b0855[_0x7995('0x2f')]['name'],'type':_0x7995('0x33'),'exitAt':null,'uniqueid':_0x4b0855[_0x7995('0x20')][_0x7995('0x2e')][_0x46ac4f]&&_0x4b0855[_0x7995('0x20')]['interaction'][_0x46ac4f]['length']?{'$notIn':_0x4b0855[_0x7995('0x20')]['interaction'][_0x46ac4f]}:{'$ne':null}}})[_0x7995('0xa')](function(_0x59c153){var _0x2f435e=moment()['format'](_0x7995('0x34'));for(var _0x1b0373=0x0,_0x4d9245=_0x59c153[_0x7995('0x35')];_0x1b0373<_0x4d9245;_0x1b0373+=0x1){_0x59c153[_0x1b0373][_0x7995('0x36')]({'exitAt':_0x2f435e});}});for(var _0x314145=0x0;_0x314145<_0x4b0855[_0x7995('0x20')]['interaction'][_0x46ac4f][_0x7995('0x35')];_0x314145+=0x1){db[_0x7995('0x31')][_0x7995('0x37')]({'where':{'channel':_0x46ac4f,'membername':_0x4b0855['user'][_0x7995('0x12')],'type':_0x7995('0x33'),'uniqueid':_0x4b0855[_0x7995('0x20')][_0x7995('0x2e')][_0x46ac4f][_0x314145],'exitAt':null},'defaults':{'channel':_0x46ac4f,'membername':_0x4b0855[_0x7995('0x2f')]['name'],'interface':_[_0x7995('0x14')](_0x4b0855[_0x7995('0x2f')]['interface'])?util[_0x7995('0x38')]('SIP/%s',_0x4b0855[_0x7995('0x2f')][_0x7995('0x12')]):_0x4b0855[_0x7995('0x2f')][_0x7995('0x39')],'type':_0x7995('0x33'),'enterAt':moment()[_0x7995('0x38')](_0x7995('0x34')),'role':'agent','internal':_0x4b0855[_0x7995('0x2f')][_0x7995('0x3a')],'uniqueid':_0x4b0855[_0x7995('0x20')]['interaction'][_0x46ac4f][_0x314145]}});}}}}return respondWithRpcPromise(_0x7995('0x3b'),{'id':_0x4b0855[_0x7995('0x19')]['id'],'capacity':_0x4b0855[_0x7995('0x20')]['capacity']},routingClient)['then'](respondWithResult(_0x3f8522,null))['catch'](handleError(_0x3f8522,null));};exports[_0x7995('0x3c')]=function(_0x1fd1ca,_0x4cf5db){return respondWithRpcPromise(_0x7995('0x3d'),_0x1fd1ca[_0x7995('0x18')])[_0x7995('0xa')](respondWithResult(_0x4cf5db,null))[_0x7995('0xe')](handleError(_0x4cf5db,null));};exports[_0x7995('0x3e')]=function(_0x528c8e,_0x29ee32){return respondWithRpcPromise('Trunks',_0x528c8e[_0x7995('0x18')])[_0x7995('0xa')](respondWithResult(_0x29ee32,null))[_0x7995('0xe')](handleError(_0x29ee32,null));};exports['campaigns']=function(_0x5e1f34,_0x54e2b1){return respondWithRpcPromise('Campaigns',_0x5e1f34[_0x7995('0x18')])[_0x7995('0xa')](respondWithResult(_0x54e2b1,null))[_0x7995('0xe')](handleError(_0x54e2b1,null));};exports[_0x7995('0x3f')]=function(_0x1d957e,_0x357e60){return respondWithRpcPromise(_0x7995('0x40'),_0x1d957e[_0x7995('0x18')],routingClient)[_0x7995('0xa')](respondWithResult(_0x357e60,null))[_0x7995('0xe')](handleError(_0x357e60,null));};exports[_0x7995('0x41')]=function(_0x133c63,_0x3da72b){return respondWithRpcPromise(_0x7995('0x40'),_0x133c63[_0x7995('0x18')],routingClient)[_0x7995('0xa')](findById(_0x133c63[_0x7995('0x19')]['id']))[_0x7995('0xa')](respondWithResult(_0x3da72b,null))[_0x7995('0xe')](handleError(_0x3da72b,null));};exports['mailQueues']=function(_0x56a374,_0x630737){return respondWithRpcPromise(_0x7995('0x42'),_0x56a374[_0x7995('0x18')],routingClient)['then'](respondWithResult(_0x630737,null))['catch'](handleError(_0x630737,null));};exports[_0x7995('0x43')]=function(_0x197b52,_0x5b9467){return respondWithRpcPromise(_0x7995('0x42'),_0x197b52['query'],routingClient)[_0x7995('0xa')](findById(_0x197b52[_0x7995('0x19')]['id']))[_0x7995('0xa')](respondWithResult(_0x5b9467,null))[_0x7995('0xe')](handleError(_0x5b9467,null));};exports['mailAccounts']=function(_0x5e2d97,_0x40e5fc){return respondWithRpcPromise(_0x7995('0x44'),_0x5e2d97[_0x7995('0x18')],mailClient)[_0x7995('0xa')](respondWithResult(_0x40e5fc,null))[_0x7995('0xe')](handleError(_0x40e5fc,null));};exports[_0x7995('0x45')]=function(_0x1d4689,_0x1e2206){return respondWithRpcPromise(_0x7995('0x46'),_0x1d4689['query'],routingClient)[_0x7995('0xa')](respondWithResult(_0x1e2206,null))[_0x7995('0xe')](handleError(_0x1e2206,null));};exports[_0x7995('0x47')]=function(_0x1ecfdb,_0x59c5aa){return respondWithRpcPromise('OpenchannelQueues',_0x1ecfdb[_0x7995('0x18')],routingClient)[_0x7995('0xa')](findById(_0x1ecfdb['params']['id']))[_0x7995('0xa')](respondWithResult(_0x59c5aa,null))[_0x7995('0xe')](handleError(_0x59c5aa,null));};exports[_0x7995('0x48')]=function(_0x57727e,_0x32cb04){return respondWithRpcPromise('SmsQueues',_0x57727e[_0x7995('0x18')],routingClient)['then'](respondWithResult(_0x32cb04,null))[_0x7995('0xe')](handleError(_0x32cb04,null));};exports[_0x7995('0x49')]=function(_0x1722e2,_0x25b534){return respondWithRpcPromise(_0x7995('0x4a'),_0x1722e2[_0x7995('0x18')],routingClient)[_0x7995('0xa')](findById(_0x1722e2[_0x7995('0x19')]['id']))[_0x7995('0xa')](respondWithResult(_0x25b534,null))[_0x7995('0xe')](handleError(_0x25b534,null));};exports[_0x7995('0x4b')]=function(_0x234d8d,_0x56eb85){return respondWithRpcPromise(_0x7995('0x4c'),_0x234d8d[_0x7995('0x18')],routingClient)[_0x7995('0xa')](respondWithResult(_0x56eb85,null))[_0x7995('0xe')](handleError(_0x56eb85,null));};exports[_0x7995('0x4d')]=function(_0x54a2e0,_0x4b54f2){return respondWithRpcPromise(_0x7995('0x4c'),_0x54a2e0[_0x7995('0x18')],routingClient)[_0x7995('0xa')](findById(_0x54a2e0[_0x7995('0x19')]['id']))['then'](respondWithResult(_0x4b54f2,null))[_0x7995('0xe')](handleError(_0x4b54f2,null));};exports['faxQueues']=function(_0x5df621,_0xca8238){return respondWithRpcPromise(_0x7995('0x4e'),_0x5df621[_0x7995('0x18')],routingClient)[_0x7995('0xa')](respondWithResult(_0xca8238,null))[_0x7995('0xe')](handleError(_0xca8238,null));};exports[_0x7995('0x4f')]=function(_0x32a52f,_0x13dc73){return respondWithRpcPromise(_0x7995('0x4e'),_0x32a52f[_0x7995('0x18')],routingClient)['then'](findById(_0x32a52f[_0x7995('0x19')]['id']))[_0x7995('0xa')](respondWithResult(_0x13dc73,null))[_0x7995('0xe')](handleError(_0x13dc73,null));};exports['faxAccounts']=function(_0x1fe1cb,_0x1d2f9d){return respondWithRpcPromise(_0x7995('0x50'),_0x1fe1cb[_0x7995('0x18')])[_0x7995('0xa')](respondWithResult(_0x1d2f9d,null))[_0x7995('0xe')](handleError(_0x1d2f9d,null));};exports[_0x7995('0x51')]=function(_0x3adfd2,_0x2f94c4){return respondWithRpcPromise(_0x7995('0x52'),_0x3adfd2[_0x7995('0x18')],routingClient)['then'](respondWithResult(_0x2f94c4,null))['catch'](handleError(_0x2f94c4,null));};exports[_0x7995('0x53')]=function(_0xfe1105,_0x39ebb6){return respondWithRpcPromise(_0x7995('0x54'),_0xfe1105['query'],routingClient)[_0x7995('0xa')](respondWithResult(_0x39ebb6,null))[_0x7995('0xe')](handleError(_0x39ebb6,null));};exports['openchannelQueuesWaitingInteractions']=function(_0x480fdb,_0x3253b5){return respondWithRpcPromise(_0x7995('0x55'),_0x480fdb['query'],routingClient)[_0x7995('0xa')](respondWithResult(_0x3253b5,null))['catch'](handleError(_0x3253b5,null));};exports[_0x7995('0x56')]=function(_0xea9aba,_0x4ff9ff){return respondWithRpcPromise('OpenchannelQueuesWaitingInteractions',_0xea9aba[_0x7995('0x18')],routingClient)['then'](function(_0x31b9e6){if(_0xea9aba[_0x7995('0x18')][_0x7995('0x57')]!==undefined){var _0x45bd8a=_(_0x31b9e6[_0x7995('0x15')])[_0x7995('0x58')]([_0xea9aba[_0x7995('0x18')][_0x7995('0x57')],_0xea9aba[_0x7995('0x19')]['id']])[_0x7995('0x59')](_0x7995('0x5a'))[_0x7995('0x5b')]()[_0x7995('0x5c')]();return _0x31b9e6[_0x7995('0x15')][_0x7995('0x58')](function(_0x3773de){return _0x45bd8a[_0x7995('0x5d')](_0x3773de[_0x7995('0x5a')])>-0x1;});}else{return _0x31b9e6[_0x7995('0x15')][_0x7995('0x58')](function(_0x306fa9){return _0x306fa9[_0x7995('0x5a')]===parseInt(_0xea9aba[_0x7995('0x19')]['id']);});}})[_0x7995('0xa')](respondWithResult(_0x4ff9ff,null))[_0x7995('0xe')](handleError(_0x4ff9ff,null));};exports[_0x7995('0x5e')]=function(_0x2f7f51,_0x34724d){return respondWithRpcPromise('SmsQueuesWaitingInteractions',_0x2f7f51[_0x7995('0x18')],routingClient)[_0x7995('0xa')](respondWithResult(_0x34724d,null))['catch'](handleError(_0x34724d,null));};exports['whatsappQueuesWaitingInteractions']=function(_0x15e8d1,_0x3fe8fc){return respondWithRpcPromise(_0x7995('0x5f'),_0x15e8d1[_0x7995('0x18')],routingClient)[_0x7995('0xa')](respondWithResult(_0x3fe8fc,null))[_0x7995('0xe')](handleError(_0x3fe8fc,null));};exports['faxQueuesWaitingInteractions']=function(_0x2f8a2d,_0xb68962){return respondWithRpcPromise(_0x7995('0x60'),_0x2f8a2d[_0x7995('0x18')],routingClient)[_0x7995('0xa')](respondWithResult(_0xb68962,null))[_0x7995('0xe')](handleError(_0xb68962,null));};exports[_0x7995('0x61')]=function(_0xc93dcb){return function(_0x560095,_0x1c8e7d){var _0x2b8217,_0x5c04c9;var _0x479271=_[_0x7995('0x62')](_0xc93dcb);var _0xf8c2ed=_0xc93dcb===_0x7995('0x63')?_0x7995('0x64'):_0x7995('0x65');return db[_0x479271+'Queue'][_0x7995('0x66')]({'raw':!![],'where':{'id':_0x560095[_0x7995('0x19')]['id']}})['then'](function(_0x209977){if(_[_0x7995('0x14')](_0x209977)){throw new Error(_0x479271+'\x20Queue\x20not\x20found');}_0x2b8217=_0x209977;return db[_0x479271+_0x7995('0x67')]['findOne']({'where':{'id':_0x560095[_0x7995('0x20')][_0x7995('0x68')]},'include':[{'model':db[_0x479271+_0x7995('0x69')],'as':_0x7995('0x69')},{'model':db[_0x479271+_0xf8c2ed],'as':_0x7995('0x65')}]});})['then'](function(_0x1f0506){if(_[_0x7995('0x14')](_0x1f0506)){throw new Error(_0x479271+_0x7995('0x6a'));}_0x5c04c9=_0x1f0506;return _0x1f0506['update']({'read':0x0,'readAt':null,'UserId':null});})[_0x7995('0xa')](function(){var _0x3f3434={'uniqueid':_0xc93dcb+'.'+_0x5c04c9['id']+'.'+_0x5c04c9[_0x7995('0x69')]['id'],'FromUserId':_0x560095[_0x7995('0x2f')]['id'],'type':'queue'};_0x3f3434[_0x479271+_0x7995('0x6b')]=_0x5c04c9['id'];_0x3f3434[_0x479271+_0x7995('0x6c')]=_0x5c04c9[_0x7995('0x69')]['id'];_0x3f3434['From'+_0x479271+_0xf8c2ed+'Id']=_0x5c04c9['Account']['id'];_0x3f3434['To'+_0x479271+_0x7995('0x6d')]=_0x2b8217['id'];return db[_0x479271+_0x7995('0x6e')]['create'](_0x3f3434);})['then'](function(){return respondWithRpcPromise(_0x7995('0x6f'),{'channel':_0xc93dcb,'interaction':_0x5c04c9[_0x7995('0x69')],'message':_0x5c04c9,'account':_0x5c04c9[_0x7995('0x65')],'applications':[{'id':0x0,'priority':0x1,'app':_0x7995('0x70'),'appdata':_0x2b8217[_0x7995('0x12')]+','+(_0x5c04c9['Account']['queueTransferTimeout']||0x12c),'interval':_0x7995('0x71')}]},routingClient);})['then'](respondWithResult(_0x1c8e7d,null))['catch'](handleError(_0x1c8e7d,null));};};exports[_0x7995('0x72')]=function(_0x3b731e,_0x3192b8){var _0x5eb360,_0x3b1309;if(_[_0x7995('0x14')](_0x3b731e[_0x7995('0x20')][_0x7995('0x73')])){throw new Error(_0x7995('0x74'));}var _0x5799d1=_0x3b731e[_0x7995('0x20')][_0x7995('0x73')];var _0x1a2d6a=_[_0x7995('0x62')](_0x5799d1);var _0x50bf9a=_0x5799d1===_0x7995('0x63')?_0x7995('0x64'):'Account';return db[_0x7995('0x75')][_0x7995('0x66')]({'raw':!![],'where':{'id':_0x3b731e['params']['id'],'role':_0x7995('0x76')}})['then'](function(_0x1b4b34){if(_['isNil'](_0x1b4b34)){throw new Error(_0x7995('0x77'));}_0x5eb360=_0x1b4b34;return db[_0x1a2d6a+'Message'][_0x7995('0x66')]({'where':{'id':_0x3b731e[_0x7995('0x20')]['messageId']},'include':[{'model':db[_0x1a2d6a+_0x7995('0x69')],'as':'Interaction'},{'model':db[_0x1a2d6a+_0x50bf9a],'as':'Account'}]});})[_0x7995('0xa')](function(_0x14812d){if(_[_0x7995('0x14')](_0x14812d)){throw new Error(_0x1a2d6a+_0x7995('0x6a'));}_0x3b1309=_0x14812d;return _0x14812d['update']({'read':0x0,'readAt':null,'UserId':null});})[_0x7995('0xa')](function(){var _0x35044a={'uniqueid':_0x5799d1+'.'+_0x3b1309['id']+'.'+_0x3b1309['Interaction']['id'],'FromUserId':_0x3b731e['user']['id'],'type':_0x7995('0x70'),'ToUserId':_0x5eb360['id']};_0x35044a[_0x1a2d6a+'MessageId']=_0x3b1309['id'];_0x35044a[_0x1a2d6a+_0x7995('0x6c')]=_0x3b1309[_0x7995('0x69')]['id'];_0x35044a[_0x7995('0x78')+_0x1a2d6a+_0x50bf9a+'Id']=_0x3b1309['Account']['id'];return db[_0x1a2d6a+'TransferReport'][_0x7995('0x79')](_0x35044a);})['then'](function(){return respondWithRpcPromise(_0x7995('0x6f'),{'channel':_0x5799d1,'interaction':_0x3b1309[_0x7995('0x69')],'message':_0x3b1309,'account':_0x3b1309[_0x7995('0x65')],'applications':[{'id':0x0,'priority':0x1,'app':_0x7995('0x76'),'appdata':_0x5eb360['name']+','+(_0x3b1309['Account']['agentTransferTimeout']||0x12c),'interval':_0x7995('0x71')}]},routingClient);})[_0x7995('0xa')](respondWithResult(_0x3192b8,null))[_0x7995('0xe')](handleError(_0x3192b8,null));};