d62b8046d7afb54c253b3ecb64e42b42ca25b24c
[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 _0x2a9f=['rows','find','voiceChannels','VoiceChannels','query','voiceChannelMixMonitor','VoiceChannelMixMonitor','merge','params','catch','voiceQueues','VoiceQueues','showVoiceQueues','voiceQueuesPreview','VoiceQueuesPreview','voiceQueuesChannels','VoiceQueuesChannels','voiceQueuesChannel','VoiceQueuesChannel','voiceQueuesChannelHangup','VoiceQueuesChannelHangup','voiceQueuesChannelRedirect','VoiceQueuesChannelRedirect','outbound','outboundChannels','OutboundChannels','Agents','agentCapacity','body','interaction','user','hasOwnProperty','MemberReport','findAll','INTERACTION','length','format','YYYY-MM-DD\x20HH:mm:ss','updateAttributes','findOrCreate','SIP/%s','interface','agent','internal','AgentCapacity','telephones','trunks','Trunks','campaigns','chatQueues','ChatQueues','showChatQueues','mailQueues','MailQueues','MailAccounts','OpenchannelQueues','showOpenchannelQueues','smsQueues','SmsQueues','showSmsQueues','faxQueues','FaxQueues','showFaxQueues','faxAccounts','ChatQueuesWaitingInteractions','mailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','OpenchannelQueuesWaitingInteractions','openchannelQueuesIdWaitingInteractions','type','filter','map','queue_id','uniq','smsQueuesWaitingInteractions','SmsQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','faxQueuesWaitingInteractions','FaxQueuesWaitingInteractions','capitalize','chat','Website','Account','findOne','\x20Queue\x20not\x20found','Message','Interaction','\x20Message\x20not\x20found','update','queue','MessageId','InteractionId','From','QueueId','TransferReport','create','Start','queueTransferTimeout','*,*,*,*','agentNotify','channel','User','messageId','agentTransferTimeout','bluebird','lodash','util','../../mysqldb','../../config/logger','api','client','http','then','error','code','result','status','json','sendStatus','stack','name','send','isNil'];(function(_0x4f8258,_0x18fe18){var _0x2882f9=function(_0x27b51f){while(--_0x27b51f){_0x4f8258['push'](_0x4f8258['shift']());}};_0x2882f9(++_0x18fe18);}(_0x2a9f,0x15e));var _0xf2a9=function(_0x23a50a,_0x28359f){_0x23a50a=_0x23a50a-0x0;var _0x5a98d2=_0x2a9f[_0x23a50a];return _0x5a98d2;};'use strict';var BPromise=require(_0xf2a9('0x0'));var moment=require('moment');var _=require(_0xf2a9('0x1'));var util=require(_0xf2a9('0x2'));var db=require(_0xf2a9('0x3'))['db'];var logger=require(_0xf2a9('0x4'))(_0xf2a9('0x5'));var jayson=require('jayson/promise');var amiClient=jayson[_0xf2a9('0x6')][_0xf2a9('0x7')]({'port':0x232a});var mailClient=jayson['client'][_0xf2a9('0x7')]({'port':0x232b});var routingClient=jayson[_0xf2a9('0x6')][_0xf2a9('0x7')]({'port':0x232c});function respondWithRpcPromise(_0x1c0706,_0x5a838b,_0x19f63d){return new BPromise(function(_0x35b021,_0x28c7d8){var _0x1211c3=_0x19f63d?_0x19f63d:amiClient;return _0x1211c3['request'](_0x1c0706,_0x5a838b)[_0xf2a9('0x8')](function(_0x30bb0c){if(_0x30bb0c[_0xf2a9('0x9')]){if(_0x30bb0c['error'][_0xf2a9('0xa')]===0x1f4){return _0x28c7d8(_0x30bb0c[_0xf2a9('0x9')]['message']);}return _0x35b021(_0x30bb0c[_0xf2a9('0x9')]['message']);}else{_0x35b021(_0x30bb0c[_0xf2a9('0xb')]);}})['catch'](function(_0x5a566e){_0x28c7d8(_0x5a566e);});});}function respondWithResult(_0x1f8dcd,_0x968870){_0x968870=_0x968870||0xc8;return function(_0x3db7fd){if(_0x3db7fd){return _0x1f8dcd[_0xf2a9('0xc')](_0x968870)[_0xf2a9('0xd')](_0x3db7fd);}return _0x1f8dcd[_0xf2a9('0xe')](0x194);};}function handleError(_0x53dd2e,_0x29c24f){_0x29c24f=_0x29c24f||0x1f4;return function(_0x28067e){logger[_0xf2a9('0x9')](_0x28067e[_0xf2a9('0xf')]);if(_0x28067e[_0xf2a9('0x10')]){delete _0x28067e['name'];}_0x53dd2e[_0xf2a9('0xc')](_0x29c24f)[_0xf2a9('0x11')](_0x28067e);};}function findById(_0x2469b8){return function(_0x375003){if(!_[_0xf2a9('0x12')](_0x2469b8)&&!_[_0xf2a9('0x12')](_0x375003)&&!_[_0xf2a9('0x12')](_0x375003[_0xf2a9('0x13')])){return _[_0xf2a9('0x14')](_0x375003[_0xf2a9('0x13')],function(_0xbcc53c){return _0xbcc53c['id']==_0x2469b8;});}return null;};}exports[_0xf2a9('0x15')]=function(_0x204046,_0x573897){return respondWithRpcPromise(_0xf2a9('0x16'),_0x204046[_0xf2a9('0x17')])['then'](respondWithResult(_0x573897,null))['catch'](handleError(_0x573897,null));};exports[_0xf2a9('0x18')]=function(_0x47cd09,_0x5bf122){return respondWithRpcPromise(_0xf2a9('0x19'),_[_0xf2a9('0x1a')](_0x47cd09[_0xf2a9('0x17')],_0x47cd09[_0xf2a9('0x1b')]))[_0xf2a9('0x8')](respondWithResult(_0x5bf122,null))[_0xf2a9('0x1c')](handleError(_0x5bf122,null));};exports['voiceChannelStopMixMonitor']=function(_0x4ccf11,_0x45ebb8){return respondWithRpcPromise('VoiceChannelStopMixMonitor',_[_0xf2a9('0x1a')](_0x4ccf11[_0xf2a9('0x17')],_0x4ccf11[_0xf2a9('0x1b')]))[_0xf2a9('0x8')](respondWithResult(_0x45ebb8,null))[_0xf2a9('0x1c')](handleError(_0x45ebb8,null));};exports[_0xf2a9('0x1d')]=function(_0x26a9cc,_0x17d919){return respondWithRpcPromise(_0xf2a9('0x1e'),_0x26a9cc[_0xf2a9('0x17')])[_0xf2a9('0x8')](respondWithResult(_0x17d919,null))[_0xf2a9('0x1c')](handleError(_0x17d919,null));};exports[_0xf2a9('0x1f')]=function(_0x48f614,_0x38be0a){return respondWithRpcPromise(_0xf2a9('0x1e'),_0x48f614['query'])[_0xf2a9('0x8')](findById(_0x48f614[_0xf2a9('0x1b')]['id']))[_0xf2a9('0x8')](respondWithResult(_0x38be0a,null))[_0xf2a9('0x1c')](handleError(_0x38be0a,null));};exports[_0xf2a9('0x20')]=function(_0x559732,_0x4c77f){return respondWithRpcPromise(_0xf2a9('0x21'),_[_0xf2a9('0x1a')](_0x559732[_0xf2a9('0x17')],_0x559732[_0xf2a9('0x1b')]))[_0xf2a9('0x8')](respondWithResult(_0x4c77f,null))[_0xf2a9('0x1c')](handleError(_0x4c77f,null));};exports[_0xf2a9('0x22')]=function(_0x2257a6,_0x722770){return respondWithRpcPromise(_0xf2a9('0x23'),_0x2257a6[_0xf2a9('0x17')])[_0xf2a9('0x8')](respondWithResult(_0x722770,null))['catch'](handleError(_0x722770,null));};exports[_0xf2a9('0x24')]=function(_0x393539,_0x5b5fcd){return respondWithRpcPromise(_0xf2a9('0x25'),_[_0xf2a9('0x1a')](_0x393539[_0xf2a9('0x17')],_0x393539[_0xf2a9('0x1b')]))[_0xf2a9('0x8')](respondWithResult(_0x5b5fcd,null))[_0xf2a9('0x1c')](handleError(_0x5b5fcd,null));};exports[_0xf2a9('0x26')]=function(_0x5416ac,_0x396223){return respondWithRpcPromise(_0xf2a9('0x27'),_[_0xf2a9('0x1a')](_0x5416ac[_0xf2a9('0x17')],_0x5416ac[_0xf2a9('0x1b')]))[_0xf2a9('0x8')](respondWithResult(_0x396223,null))['catch'](handleError(_0x396223,null));};exports[_0xf2a9('0x28')]=function(_0x1dff56,_0x2f8c0b){return respondWithRpcPromise(_0xf2a9('0x29'),_[_0xf2a9('0x1a')](_0x1dff56['query'],_0x1dff56[_0xf2a9('0x1b')]))[_0xf2a9('0x8')](respondWithResult(_0x2f8c0b,null))[_0xf2a9('0x1c')](handleError(_0x2f8c0b,null));};exports[_0xf2a9('0x2a')]=function(_0x148b33,_0x268bca){return respondWithRpcPromise('Outbound',_0x148b33[_0xf2a9('0x17')])[_0xf2a9('0x8')](respondWithResult(_0x268bca,null))[_0xf2a9('0x1c')](handleError(_0x268bca,null));};exports[_0xf2a9('0x2b')]=function(_0x4de549,_0x3c2fe4){return respondWithRpcPromise(_0xf2a9('0x2c'),_0x4de549['query'])[_0xf2a9('0x8')](respondWithResult(_0x3c2fe4,null))['catch'](handleError(_0x3c2fe4,null));};exports['agents']=function(_0x56a0ea,_0x547d6e){var _0x3399a6;return respondWithRpcPromise(_0xf2a9('0x2d'),_0x56a0ea[_0xf2a9('0x17')])['then'](function(_0x2e9ccf){_0x3399a6=_0x2e9ccf;return respondWithRpcPromise(_0xf2a9('0x2d'),_0x56a0ea[_0xf2a9('0x17')],routingClient);})['then'](function(_0x42ffd0){return _[_0xf2a9('0x1a')]({},_0x42ffd0,_0x3399a6);})[_0xf2a9('0x8')](respondWithResult(_0x547d6e,null))['catch'](handleError(_0x547d6e,null));};exports[_0xf2a9('0x2e')]=function(_0x346d65,_0x5ec1c8){if(_0x346d65[_0xf2a9('0x2f')]&&_0x346d65[_0xf2a9('0x2f')][_0xf2a9('0x30')]&&_0x346d65[_0xf2a9('0x31')]&&_0x346d65['user'][_0xf2a9('0x10')]){for(var _0x3abf8e in _0x346d65['body'][_0xf2a9('0x30')]){if(_0x346d65[_0xf2a9('0x2f')][_0xf2a9('0x30')][_0xf2a9('0x32')](_0x3abf8e)){db[_0xf2a9('0x33')][_0xf2a9('0x34')]({'where':{'channel':_0x3abf8e,'membername':_0x346d65[_0xf2a9('0x31')][_0xf2a9('0x10')],'type':_0xf2a9('0x35'),'exitAt':null,'uniqueid':_0x346d65[_0xf2a9('0x2f')][_0xf2a9('0x30')][_0x3abf8e]&&_0x346d65['body'][_0xf2a9('0x30')][_0x3abf8e][_0xf2a9('0x36')]?{'$notIn':_0x346d65['body'][_0xf2a9('0x30')][_0x3abf8e]}:{'$ne':null}}})[_0xf2a9('0x8')](function(_0x5ac3cc){var _0x5adc15=moment()[_0xf2a9('0x37')](_0xf2a9('0x38'));for(var _0x171121=0x0,_0x246085=_0x5ac3cc[_0xf2a9('0x36')];_0x171121<_0x246085;_0x171121+=0x1){_0x5ac3cc[_0x171121][_0xf2a9('0x39')]({'exitAt':_0x5adc15});}});for(var _0x4d71e7=0x0;_0x4d71e7<_0x346d65[_0xf2a9('0x2f')]['interaction'][_0x3abf8e][_0xf2a9('0x36')];_0x4d71e7+=0x1){db['MemberReport'][_0xf2a9('0x3a')]({'where':{'channel':_0x3abf8e,'membername':_0x346d65[_0xf2a9('0x31')][_0xf2a9('0x10')],'type':_0xf2a9('0x35'),'uniqueid':_0x346d65['body'][_0xf2a9('0x30')][_0x3abf8e][_0x4d71e7],'exitAt':null},'defaults':{'channel':_0x3abf8e,'membername':_0x346d65[_0xf2a9('0x31')][_0xf2a9('0x10')],'interface':_['isNil'](_0x346d65[_0xf2a9('0x31')]['interface'])?util[_0xf2a9('0x37')](_0xf2a9('0x3b'),_0x346d65[_0xf2a9('0x31')][_0xf2a9('0x10')]):_0x346d65[_0xf2a9('0x31')][_0xf2a9('0x3c')],'type':_0xf2a9('0x35'),'enterAt':moment()[_0xf2a9('0x37')](_0xf2a9('0x38')),'role':_0xf2a9('0x3d'),'internal':_0x346d65[_0xf2a9('0x31')][_0xf2a9('0x3e')],'uniqueid':_0x346d65[_0xf2a9('0x2f')][_0xf2a9('0x30')][_0x3abf8e][_0x4d71e7]}});}}}}return respondWithRpcPromise(_0xf2a9('0x3f'),{'id':_0x346d65[_0xf2a9('0x1b')]['id'],'capacity':_0x346d65[_0xf2a9('0x2f')]['capacity']},routingClient)[_0xf2a9('0x8')](respondWithResult(_0x5ec1c8,null))[_0xf2a9('0x1c')](handleError(_0x5ec1c8,null));};exports[_0xf2a9('0x40')]=function(_0x3df0dd,_0xa4083e){return respondWithRpcPromise('Telephones',_0x3df0dd['query'])[_0xf2a9('0x8')](respondWithResult(_0xa4083e,null))[_0xf2a9('0x1c')](handleError(_0xa4083e,null));};exports[_0xf2a9('0x41')]=function(_0x45efbd,_0x1712b4){return respondWithRpcPromise(_0xf2a9('0x42'),_0x45efbd[_0xf2a9('0x17')])[_0xf2a9('0x8')](respondWithResult(_0x1712b4,null))[_0xf2a9('0x1c')](handleError(_0x1712b4,null));};exports[_0xf2a9('0x43')]=function(_0x47398a,_0x3432fe){return respondWithRpcPromise('Campaigns',_0x47398a[_0xf2a9('0x17')])['then'](respondWithResult(_0x3432fe,null))[_0xf2a9('0x1c')](handleError(_0x3432fe,null));};exports[_0xf2a9('0x44')]=function(_0x15e593,_0x3f82a8){return respondWithRpcPromise(_0xf2a9('0x45'),_0x15e593[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x3f82a8,null))['catch'](handleError(_0x3f82a8,null));};exports[_0xf2a9('0x46')]=function(_0x4362b2,_0x5468a5){return respondWithRpcPromise(_0xf2a9('0x45'),_0x4362b2[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](findById(_0x4362b2['params']['id']))['then'](respondWithResult(_0x5468a5,null))[_0xf2a9('0x1c')](handleError(_0x5468a5,null));};exports[_0xf2a9('0x47')]=function(_0x1b88bc,_0xe85486){return respondWithRpcPromise('MailQueues',_0x1b88bc[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0xe85486,null))[_0xf2a9('0x1c')](handleError(_0xe85486,null));};exports['showMailQueues']=function(_0x1c09cf,_0x4d1d40){return respondWithRpcPromise(_0xf2a9('0x48'),_0x1c09cf['query'],routingClient)[_0xf2a9('0x8')](findById(_0x1c09cf[_0xf2a9('0x1b')]['id']))[_0xf2a9('0x8')](respondWithResult(_0x4d1d40,null))['catch'](handleError(_0x4d1d40,null));};exports['mailAccounts']=function(_0x5751cb,_0x2e71c3){return respondWithRpcPromise(_0xf2a9('0x49'),_0x5751cb[_0xf2a9('0x17')],mailClient)[_0xf2a9('0x8')](respondWithResult(_0x2e71c3,null))[_0xf2a9('0x1c')](handleError(_0x2e71c3,null));};exports['openchannelQueues']=function(_0x4a65b7,_0x2a0d52){return respondWithRpcPromise(_0xf2a9('0x4a'),_0x4a65b7[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x2a0d52,null))['catch'](handleError(_0x2a0d52,null));};exports[_0xf2a9('0x4b')]=function(_0x53d5f0,_0x518451){return respondWithRpcPromise(_0xf2a9('0x4a'),_0x53d5f0[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](findById(_0x53d5f0[_0xf2a9('0x1b')]['id']))['then'](respondWithResult(_0x518451,null))[_0xf2a9('0x1c')](handleError(_0x518451,null));};exports[_0xf2a9('0x4c')]=function(_0x4608e5,_0x3acacf){return respondWithRpcPromise(_0xf2a9('0x4d'),_0x4608e5['query'],routingClient)['then'](respondWithResult(_0x3acacf,null))['catch'](handleError(_0x3acacf,null));};exports[_0xf2a9('0x4e')]=function(_0x42fe63,_0x46dbd6){return respondWithRpcPromise('SmsQueues',_0x42fe63[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](findById(_0x42fe63[_0xf2a9('0x1b')]['id']))[_0xf2a9('0x8')](respondWithResult(_0x46dbd6,null))[_0xf2a9('0x1c')](handleError(_0x46dbd6,null));};exports['whatsappQueues']=function(_0xd832,_0x166a16){return respondWithRpcPromise('WhatsappQueues',_0xd832[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x166a16,null))[_0xf2a9('0x1c')](handleError(_0x166a16,null));};exports['showWhatsappQueues']=function(_0x59387c,_0x3b5ee8){return respondWithRpcPromise('WhatsappQueues',_0x59387c['query'],routingClient)[_0xf2a9('0x8')](findById(_0x59387c[_0xf2a9('0x1b')]['id']))[_0xf2a9('0x8')](respondWithResult(_0x3b5ee8,null))[_0xf2a9('0x1c')](handleError(_0x3b5ee8,null));};exports[_0xf2a9('0x4f')]=function(_0x41d212,_0x53e812){return respondWithRpcPromise(_0xf2a9('0x50'),_0x41d212[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x53e812,null))[_0xf2a9('0x1c')](handleError(_0x53e812,null));};exports[_0xf2a9('0x51')]=function(_0x1a8971,_0x5281ec){return respondWithRpcPromise(_0xf2a9('0x50'),_0x1a8971[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](findById(_0x1a8971[_0xf2a9('0x1b')]['id']))[_0xf2a9('0x8')](respondWithResult(_0x5281ec,null))[_0xf2a9('0x1c')](handleError(_0x5281ec,null));};exports[_0xf2a9('0x52')]=function(_0x146b66,_0x193070){return respondWithRpcPromise('FaxAccounts',_0x146b66[_0xf2a9('0x17')])[_0xf2a9('0x8')](respondWithResult(_0x193070,null))[_0xf2a9('0x1c')](handleError(_0x193070,null));};exports['chatQueuesWaitingInteractions']=function(_0x3b37f3,_0x51f97d){return respondWithRpcPromise(_0xf2a9('0x53'),_0x3b37f3[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x51f97d,null))['catch'](handleError(_0x51f97d,null));};exports[_0xf2a9('0x54')]=function(_0x2809e6,_0x49c7e0){return respondWithRpcPromise('MailQueuesWaitingInteractions',_0x2809e6[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x49c7e0,null))[_0xf2a9('0x1c')](handleError(_0x49c7e0,null));};exports[_0xf2a9('0x55')]=function(_0x148262,_0x4f0d2b){return respondWithRpcPromise(_0xf2a9('0x56'),_0x148262[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x4f0d2b,null))[_0xf2a9('0x1c')](handleError(_0x4f0d2b,null));};exports[_0xf2a9('0x57')]=function(_0x37e7ff,_0x224350){return respondWithRpcPromise(_0xf2a9('0x56'),_0x37e7ff[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](function(_0x46f17a){if(_0x37e7ff['query'][_0xf2a9('0x58')]!==undefined){var _0x3fe831=_(_0x46f17a[_0xf2a9('0x13')])[_0xf2a9('0x59')]([_0x37e7ff[_0xf2a9('0x17')][_0xf2a9('0x58')],_0x37e7ff[_0xf2a9('0x1b')]['id']])[_0xf2a9('0x5a')](_0xf2a9('0x5b'))[_0xf2a9('0x5c')]()['value']();return _0x46f17a[_0xf2a9('0x13')][_0xf2a9('0x59')](function(_0x1bc052){return _0x3fe831['indexOf'](_0x1bc052[_0xf2a9('0x5b')])>-0x1;});}else{return _0x46f17a[_0xf2a9('0x13')][_0xf2a9('0x59')](function(_0x29dfe7){return _0x29dfe7[_0xf2a9('0x5b')]===parseInt(_0x37e7ff[_0xf2a9('0x1b')]['id']);});}})['then'](respondWithResult(_0x224350,null))[_0xf2a9('0x1c')](handleError(_0x224350,null));};exports[_0xf2a9('0x5d')]=function(_0x33d220,_0x230e86){return respondWithRpcPromise(_0xf2a9('0x5e'),_0x33d220[_0xf2a9('0x17')],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x230e86,null))[_0xf2a9('0x1c')](handleError(_0x230e86,null));};exports[_0xf2a9('0x5f')]=function(_0x16243c,_0x429fdb){return respondWithRpcPromise('WhatsappQueuesWaitingInteractions',_0x16243c['query'],routingClient)[_0xf2a9('0x8')](respondWithResult(_0x429fdb,null))[_0xf2a9('0x1c')](handleError(_0x429fdb,null));};exports[_0xf2a9('0x60')]=function(_0x567dd1,_0x4047d0){return respondWithRpcPromise(_0xf2a9('0x61'),_0x567dd1[_0xf2a9('0x17')],routingClient)['then'](respondWithResult(_0x4047d0,null))[_0xf2a9('0x1c')](handleError(_0x4047d0,null));};exports['queueNotify']=function(_0x58b8a7){return function(_0xb37383,_0x29a623){var _0x366245,_0x5a6b2c;var _0x51e8de=_[_0xf2a9('0x62')](_0x58b8a7);var _0x4f2900=_0x58b8a7===_0xf2a9('0x63')?_0xf2a9('0x64'):_0xf2a9('0x65');return db[_0x51e8de+'Queue'][_0xf2a9('0x66')]({'raw':!![],'where':{'id':_0xb37383['params']['id']}})[_0xf2a9('0x8')](function(_0x3dd09b){if(_[_0xf2a9('0x12')](_0x3dd09b)){throw new Error(_0x51e8de+_0xf2a9('0x67'));}_0x366245=_0x3dd09b;return db[_0x51e8de+_0xf2a9('0x68')][_0xf2a9('0x66')]({'where':{'id':_0xb37383[_0xf2a9('0x2f')]['messageId']},'include':[{'model':db[_0x51e8de+_0xf2a9('0x69')],'as':_0xf2a9('0x69')},{'model':db[_0x51e8de+_0x4f2900],'as':_0xf2a9('0x65')}]});})[_0xf2a9('0x8')](function(_0xbd3c32){if(_[_0xf2a9('0x12')](_0xbd3c32)){throw new Error(_0x51e8de+_0xf2a9('0x6a'));}_0x5a6b2c=_0xbd3c32;return _0xbd3c32[_0xf2a9('0x6b')]({'read':0x0,'readAt':null,'UserId':null});})[_0xf2a9('0x8')](function(){var _0x1392f9={'uniqueid':_0x58b8a7+'.'+_0x5a6b2c['id']+'.'+_0x5a6b2c[_0xf2a9('0x69')]['id'],'FromUserId':_0xb37383[_0xf2a9('0x31')]['id'],'type':_0xf2a9('0x6c')};_0x1392f9[_0x51e8de+_0xf2a9('0x6d')]=_0x5a6b2c['id'];_0x1392f9[_0x51e8de+_0xf2a9('0x6e')]=_0x5a6b2c[_0xf2a9('0x69')]['id'];_0x1392f9[_0xf2a9('0x6f')+_0x51e8de+_0x4f2900+'Id']=_0x5a6b2c[_0xf2a9('0x65')]['id'];_0x1392f9['To'+_0x51e8de+_0xf2a9('0x70')]=_0x366245['id'];return db[_0x51e8de+_0xf2a9('0x71')][_0xf2a9('0x72')](_0x1392f9);})[_0xf2a9('0x8')](function(){return respondWithRpcPromise(_0xf2a9('0x73'),{'channel':_0x58b8a7,'interaction':_0x5a6b2c[_0xf2a9('0x69')],'message':_0x5a6b2c,'account':_0x5a6b2c['Account'],'applications':[{'id':0x0,'priority':0x1,'app':_0xf2a9('0x6c'),'appdata':_0x366245[_0xf2a9('0x10')]+','+(_0x5a6b2c[_0xf2a9('0x65')][_0xf2a9('0x74')]||0x12c),'interval':_0xf2a9('0x75')}]},routingClient);})[_0xf2a9('0x8')](respondWithResult(_0x29a623,null))[_0xf2a9('0x1c')](handleError(_0x29a623,null));};};exports[_0xf2a9('0x76')]=function(_0x2dbcce,_0xe1ff38){var _0x200aa1,_0x5f5ae9;if(_['isNil'](_0x2dbcce[_0xf2a9('0x2f')]['channel'])){throw new Error('Channel\x20field\x20is\x20mandatory');}var _0x61d1d7=_0x2dbcce[_0xf2a9('0x2f')][_0xf2a9('0x77')];var _0x1d18de=_['capitalize'](_0x61d1d7);var _0x11c46d=_0x61d1d7===_0xf2a9('0x63')?_0xf2a9('0x64'):'Account';return db[_0xf2a9('0x78')][_0xf2a9('0x66')]({'raw':!![],'where':{'id':_0x2dbcce[_0xf2a9('0x1b')]['id'],'role':_0xf2a9('0x3d')}})[_0xf2a9('0x8')](function(_0x403444){if(_[_0xf2a9('0x12')](_0x403444)){throw new Error('Agent\x20not\x20found');}_0x200aa1=_0x403444;return db[_0x1d18de+_0xf2a9('0x68')]['findOne']({'where':{'id':_0x2dbcce[_0xf2a9('0x2f')][_0xf2a9('0x79')]},'include':[{'model':db[_0x1d18de+'Interaction'],'as':'Interaction'},{'model':db[_0x1d18de+_0x11c46d],'as':_0xf2a9('0x65')}]});})['then'](function(_0x34b52f){if(_[_0xf2a9('0x12')](_0x34b52f)){throw new Error(_0x1d18de+_0xf2a9('0x6a'));}_0x5f5ae9=_0x34b52f;return _0x34b52f[_0xf2a9('0x6b')]({'read':0x0,'readAt':null,'UserId':null});})[_0xf2a9('0x8')](function(){var _0x3b4a72={'uniqueid':_0x61d1d7+'.'+_0x5f5ae9['id']+'.'+_0x5f5ae9[_0xf2a9('0x69')]['id'],'FromUserId':_0x2dbcce[_0xf2a9('0x31')]['id'],'type':_0xf2a9('0x6c'),'ToUserId':_0x200aa1['id']};_0x3b4a72[_0x1d18de+_0xf2a9('0x6d')]=_0x5f5ae9['id'];_0x3b4a72[_0x1d18de+_0xf2a9('0x6e')]=_0x5f5ae9[_0xf2a9('0x69')]['id'];_0x3b4a72[_0xf2a9('0x6f')+_0x1d18de+_0x11c46d+'Id']=_0x5f5ae9['Account']['id'];return db[_0x1d18de+'TransferReport'][_0xf2a9('0x72')](_0x3b4a72);})[_0xf2a9('0x8')](function(){return respondWithRpcPromise(_0xf2a9('0x73'),{'channel':_0x61d1d7,'interaction':_0x5f5ae9[_0xf2a9('0x69')],'message':_0x5f5ae9,'account':_0x5f5ae9[_0xf2a9('0x65')],'applications':[{'id':0x0,'priority':0x1,'app':_0xf2a9('0x3d'),'appdata':_0x200aa1[_0xf2a9('0x10')]+','+(_0x5f5ae9[_0xf2a9('0x65')][_0xf2a9('0x7a')]||0x12c),'interval':_0xf2a9('0x75')}]},routingClient);})[_0xf2a9('0x8')](respondWithResult(_0xe1ff38,null))['catch'](handleError(_0xe1ff38,null));};