6120d1f39c6d56c3ad832c899b71c07005955317
[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 _0xa643=['ChatQueues','showChatQueues','mailQueues','showMailQueues','MailQueues','mailAccounts','MailAccounts','openchannelQueues','OpenchannelQueues','showOpenchannelQueues','smsQueues','SmsQueues','showSmsQueues','WhatsappQueues','showWhatsappQueues','faxQueues','FaxQueues','showFaxQueues','faxAccounts','FaxAccounts','ChatQueuesWaitingInteractions','mailQueuesWaitingInteractions','MailQueuesWaitingInteractions','openchannelQueuesWaitingInteractions','OpenchannelQueuesWaitingInteractions','openchannelQueuesIdWaitingInteractions','type','filter','map','queue_id','uniq','value','indexOf','smsQueuesWaitingInteractions','SmsQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','WhatsappQueuesWaitingInteractions','faxQueuesWaitingInteractions','FaxQueuesWaitingInteractions','queueNotify','capitalize','chat','Website','Account','\x20Queue\x20not\x20found','Message','messageId','Interaction','\x20Message\x20not\x20found','update','MessageId','From','QueueId','TransferReport','create','queueTransferTimeout','*,*,*,*','agentNotify','channel','User','findOne','Agent\x20not\x20found','queue','InteractionId','Start','agentTransferTimeout','bluebird','moment','lodash','util','../../mysqldb','../../config/logger','api','client','http','then','error','code','message','result','catch','status','sendStatus','stack','name','send','isNil','find','rows','voiceChannels','query','VoiceChannelMixMonitor','merge','params','voiceChannelStopMixMonitor','VoiceQueues','showVoiceQueues','voiceQueuesPreview','VoiceQueuesPreview','voiceQueuesChannel','VoiceQueuesChannel','voiceQueuesChannelHangup','voiceQueuesChannelRedirect','Outbound','outboundChannels','OutboundChannels','Agents','agentCapacity','body','user','interaction','hasOwnProperty','MemberReport','findAll','INTERACTION','length','YYYY-MM-DD\x20HH:mm:ss','updateAttributes','findOrCreate','format','SIP/%s','interface','agent','AgentCapacity','telephones','Telephones','trunks','Trunks','campaigns','Campaigns','chatQueues'];(function(_0x3ebd38,_0x459828){var _0x59d797=function(_0x227586){while(--_0x227586){_0x3ebd38['push'](_0x3ebd38['shift']());}};_0x59d797(++_0x459828);}(_0xa643,0x148));var _0x3a64=function(_0x2771dd,_0x19508b){_0x2771dd=_0x2771dd-0x0;var _0xd53a7a=_0xa643[_0x2771dd];return _0xd53a7a;};'use strict';var BPromise=require(_0x3a64('0x0'));var moment=require(_0x3a64('0x1'));var _=require(_0x3a64('0x2'));var util=require(_0x3a64('0x3'));var db=require(_0x3a64('0x4'))['db'];var logger=require(_0x3a64('0x5'))(_0x3a64('0x6'));var jayson=require('jayson/promise');var amiClient=jayson[_0x3a64('0x7')][_0x3a64('0x8')]({'port':0x232a});var mailClient=jayson[_0x3a64('0x7')][_0x3a64('0x8')]({'port':0x232b});var routingClient=jayson[_0x3a64('0x7')][_0x3a64('0x8')]({'port':0x232c});function respondWithRpcPromise(_0x21ec85,_0x407404,_0x4a8641){return new BPromise(function(_0x456713,_0x2ddee1){var _0x4e567f=_0x4a8641?_0x4a8641:amiClient;return _0x4e567f['request'](_0x21ec85,_0x407404)[_0x3a64('0x9')](function(_0x32fde6){if(_0x32fde6[_0x3a64('0xa')]){if(_0x32fde6[_0x3a64('0xa')][_0x3a64('0xb')]===0x1f4){return _0x2ddee1(_0x32fde6[_0x3a64('0xa')][_0x3a64('0xc')]);}return _0x456713(_0x32fde6['error']['message']);}else{_0x456713(_0x32fde6[_0x3a64('0xd')]);}})[_0x3a64('0xe')](function(_0x2ee47b){_0x2ddee1(_0x2ee47b);});});}function respondWithResult(_0x512cf9,_0x36a77d){_0x36a77d=_0x36a77d||0xc8;return function(_0x25055e){if(_0x25055e){return _0x512cf9[_0x3a64('0xf')](_0x36a77d)['json'](_0x25055e);}return _0x512cf9[_0x3a64('0x10')](0x194);};}function handleError(_0x4b22c0,_0x36862a){_0x36862a=_0x36862a||0x1f4;return function(_0x2f82b1){logger[_0x3a64('0xa')](_0x2f82b1[_0x3a64('0x11')]);if(_0x2f82b1[_0x3a64('0x12')]){delete _0x2f82b1[_0x3a64('0x12')];}_0x4b22c0[_0x3a64('0xf')](_0x36862a)[_0x3a64('0x13')](_0x2f82b1);};}function findById(_0x344f92){return function(_0x45c6ca){if(!_[_0x3a64('0x14')](_0x344f92)&&!_[_0x3a64('0x14')](_0x45c6ca)&&!_['isNil'](_0x45c6ca['rows'])){return _[_0x3a64('0x15')](_0x45c6ca[_0x3a64('0x16')],function(_0x4c3162){return _0x4c3162['id']==_0x344f92;});}return null;};}exports[_0x3a64('0x17')]=function(_0x4713e7,_0x1542a4){return respondWithRpcPromise('VoiceChannels',_0x4713e7[_0x3a64('0x18')])['then'](respondWithResult(_0x1542a4,null))[_0x3a64('0xe')](handleError(_0x1542a4,null));};exports['voiceChannelMixMonitor']=function(_0xb9107b,_0x27913c){return respondWithRpcPromise(_0x3a64('0x19'),_[_0x3a64('0x1a')](_0xb9107b[_0x3a64('0x18')],_0xb9107b[_0x3a64('0x1b')]))[_0x3a64('0x9')](respondWithResult(_0x27913c,null))[_0x3a64('0xe')](handleError(_0x27913c,null));};exports[_0x3a64('0x1c')]=function(_0x1b4943,_0x2e8a7a){return respondWithRpcPromise('VoiceChannelStopMixMonitor',_[_0x3a64('0x1a')](_0x1b4943[_0x3a64('0x18')],_0x1b4943[_0x3a64('0x1b')]))[_0x3a64('0x9')](respondWithResult(_0x2e8a7a,null))[_0x3a64('0xe')](handleError(_0x2e8a7a,null));};exports['voiceQueues']=function(_0x2261fa,_0x4794c7){return respondWithRpcPromise(_0x3a64('0x1d'),_0x2261fa[_0x3a64('0x18')])['then'](respondWithResult(_0x4794c7,null))['catch'](handleError(_0x4794c7,null));};exports[_0x3a64('0x1e')]=function(_0x5a66c0,_0x244554){return respondWithRpcPromise(_0x3a64('0x1d'),_0x5a66c0['query'])['then'](findById(_0x5a66c0[_0x3a64('0x1b')]['id']))[_0x3a64('0x9')](respondWithResult(_0x244554,null))[_0x3a64('0xe')](handleError(_0x244554,null));};exports[_0x3a64('0x1f')]=function(_0x347a11,_0x2dfe06){return respondWithRpcPromise(_0x3a64('0x20'),_[_0x3a64('0x1a')](_0x347a11[_0x3a64('0x18')],_0x347a11[_0x3a64('0x1b')]))[_0x3a64('0x9')](respondWithResult(_0x2dfe06,null))[_0x3a64('0xe')](handleError(_0x2dfe06,null));};exports['voiceQueuesChannels']=function(_0x3b110e,_0x47d10f){return respondWithRpcPromise('VoiceQueuesChannels',_0x3b110e[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0x47d10f,null))[_0x3a64('0xe')](handleError(_0x47d10f,null));};exports[_0x3a64('0x21')]=function(_0x363161,_0x3f5964){return respondWithRpcPromise(_0x3a64('0x22'),_[_0x3a64('0x1a')](_0x363161[_0x3a64('0x18')],_0x363161[_0x3a64('0x1b')]))[_0x3a64('0x9')](respondWithResult(_0x3f5964,null))[_0x3a64('0xe')](handleError(_0x3f5964,null));};exports[_0x3a64('0x23')]=function(_0x397348,_0x50a27a){return respondWithRpcPromise('VoiceQueuesChannelHangup',_['merge'](_0x397348[_0x3a64('0x18')],_0x397348['params']))[_0x3a64('0x9')](respondWithResult(_0x50a27a,null))[_0x3a64('0xe')](handleError(_0x50a27a,null));};exports[_0x3a64('0x24')]=function(_0x616931,_0x2f0e18){return respondWithRpcPromise('VoiceQueuesChannelRedirect',_[_0x3a64('0x1a')](_0x616931[_0x3a64('0x18')],_0x616931['params']))[_0x3a64('0x9')](respondWithResult(_0x2f0e18,null))[_0x3a64('0xe')](handleError(_0x2f0e18,null));};exports['outbound']=function(_0x15db2d,_0xbefcf1){return respondWithRpcPromise(_0x3a64('0x25'),_0x15db2d[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0xbefcf1,null))[_0x3a64('0xe')](handleError(_0xbefcf1,null));};exports[_0x3a64('0x26')]=function(_0x3629df,_0x60e35d){return respondWithRpcPromise(_0x3a64('0x27'),_0x3629df[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0x60e35d,null))[_0x3a64('0xe')](handleError(_0x60e35d,null));};exports['agents']=function(_0x586731,_0x31bad1){var _0x362b07;return respondWithRpcPromise(_0x3a64('0x28'),_0x586731[_0x3a64('0x18')])[_0x3a64('0x9')](function(_0x4ffe06){_0x362b07=_0x4ffe06;return respondWithRpcPromise(_0x3a64('0x28'),_0x586731[_0x3a64('0x18')],routingClient);})[_0x3a64('0x9')](function(_0x4d1a4d){return _[_0x3a64('0x1a')]({},_0x4d1a4d,_0x362b07);})['then'](respondWithResult(_0x31bad1,null))[_0x3a64('0xe')](handleError(_0x31bad1,null));};exports[_0x3a64('0x29')]=function(_0x4bb346,_0x83fc65){if(_0x4bb346[_0x3a64('0x2a')]&&_0x4bb346[_0x3a64('0x2a')]['interaction']&&_0x4bb346[_0x3a64('0x2b')]&&_0x4bb346[_0x3a64('0x2b')][_0x3a64('0x12')]){for(var _0x542cd3 in _0x4bb346[_0x3a64('0x2a')][_0x3a64('0x2c')]){if(_0x4bb346['body'][_0x3a64('0x2c')][_0x3a64('0x2d')](_0x542cd3)){db[_0x3a64('0x2e')][_0x3a64('0x2f')]({'where':{'channel':_0x542cd3,'membername':_0x4bb346[_0x3a64('0x2b')]['name'],'type':_0x3a64('0x30'),'exitAt':null,'uniqueid':_0x4bb346[_0x3a64('0x2a')][_0x3a64('0x2c')][_0x542cd3]&&_0x4bb346['body'][_0x3a64('0x2c')][_0x542cd3][_0x3a64('0x31')]?{'$notIn':_0x4bb346[_0x3a64('0x2a')]['interaction'][_0x542cd3]}:{'$ne':null}}})[_0x3a64('0x9')](function(_0x94f174){var _0x4f5948=moment()['format'](_0x3a64('0x32'));for(var _0x916504=0x0,_0x3e81ae=_0x94f174[_0x3a64('0x31')];_0x916504<_0x3e81ae;_0x916504+=0x1){_0x94f174[_0x916504][_0x3a64('0x33')]({'exitAt':_0x4f5948});}});for(var _0x56e247=0x0;_0x56e247<_0x4bb346[_0x3a64('0x2a')][_0x3a64('0x2c')][_0x542cd3]['length'];_0x56e247+=0x1){db[_0x3a64('0x2e')][_0x3a64('0x34')]({'where':{'channel':_0x542cd3,'membername':_0x4bb346[_0x3a64('0x2b')][_0x3a64('0x12')],'type':'INTERACTION','uniqueid':_0x4bb346[_0x3a64('0x2a')]['interaction'][_0x542cd3][_0x56e247],'exitAt':null},'defaults':{'channel':_0x542cd3,'membername':_0x4bb346['user']['name'],'interface':_['isNil'](_0x4bb346[_0x3a64('0x2b')]['interface'])?util[_0x3a64('0x35')](_0x3a64('0x36'),_0x4bb346[_0x3a64('0x2b')][_0x3a64('0x12')]):_0x4bb346[_0x3a64('0x2b')][_0x3a64('0x37')],'type':_0x3a64('0x30'),'enterAt':moment()['format']('YYYY-MM-DD\x20HH:mm:ss'),'role':_0x3a64('0x38'),'internal':_0x4bb346[_0x3a64('0x2b')]['internal'],'uniqueid':_0x4bb346[_0x3a64('0x2a')][_0x3a64('0x2c')][_0x542cd3][_0x56e247]}});}}}}return respondWithRpcPromise(_0x3a64('0x39'),{'id':_0x4bb346[_0x3a64('0x1b')]['id'],'capacity':_0x4bb346[_0x3a64('0x2a')]['capacity']},routingClient)['then'](respondWithResult(_0x83fc65,null))[_0x3a64('0xe')](handleError(_0x83fc65,null));};exports[_0x3a64('0x3a')]=function(_0x441fa3,_0xbed211){return respondWithRpcPromise(_0x3a64('0x3b'),_0x441fa3[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0xbed211,null))['catch'](handleError(_0xbed211,null));};exports[_0x3a64('0x3c')]=function(_0x479a04,_0x16cca8){return respondWithRpcPromise(_0x3a64('0x3d'),_0x479a04[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0x16cca8,null))['catch'](handleError(_0x16cca8,null));};exports[_0x3a64('0x3e')]=function(_0x3dd3cf,_0x245a99){return respondWithRpcPromise(_0x3a64('0x3f'),_0x3dd3cf[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0x245a99,null))[_0x3a64('0xe')](handleError(_0x245a99,null));};exports[_0x3a64('0x40')]=function(_0x135aee,_0x2c3bcf){return respondWithRpcPromise(_0x3a64('0x41'),_0x135aee[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](respondWithResult(_0x2c3bcf,null))['catch'](handleError(_0x2c3bcf,null));};exports[_0x3a64('0x42')]=function(_0x4b4dd,_0x3d99bc){return respondWithRpcPromise(_0x3a64('0x41'),_0x4b4dd[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](findById(_0x4b4dd[_0x3a64('0x1b')]['id']))[_0x3a64('0x9')](respondWithResult(_0x3d99bc,null))[_0x3a64('0xe')](handleError(_0x3d99bc,null));};exports[_0x3a64('0x43')]=function(_0x5399a4,_0x1df3f2){return respondWithRpcPromise('MailQueues',_0x5399a4[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](respondWithResult(_0x1df3f2,null))[_0x3a64('0xe')](handleError(_0x1df3f2,null));};exports[_0x3a64('0x44')]=function(_0x18cb87,_0x1c77e4){return respondWithRpcPromise(_0x3a64('0x45'),_0x18cb87[_0x3a64('0x18')],routingClient)['then'](findById(_0x18cb87[_0x3a64('0x1b')]['id']))['then'](respondWithResult(_0x1c77e4,null))[_0x3a64('0xe')](handleError(_0x1c77e4,null));};exports[_0x3a64('0x46')]=function(_0x46f8b,_0x73eb2b){return respondWithRpcPromise(_0x3a64('0x47'),_0x46f8b[_0x3a64('0x18')],mailClient)[_0x3a64('0x9')](respondWithResult(_0x73eb2b,null))[_0x3a64('0xe')](handleError(_0x73eb2b,null));};exports[_0x3a64('0x48')]=function(_0x575d4a,_0x1ef5f7){return respondWithRpcPromise(_0x3a64('0x49'),_0x575d4a['query'],routingClient)[_0x3a64('0x9')](respondWithResult(_0x1ef5f7,null))[_0x3a64('0xe')](handleError(_0x1ef5f7,null));};exports[_0x3a64('0x4a')]=function(_0x599fa9,_0x3b80f7){return respondWithRpcPromise(_0x3a64('0x49'),_0x599fa9[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](findById(_0x599fa9[_0x3a64('0x1b')]['id']))[_0x3a64('0x9')](respondWithResult(_0x3b80f7,null))[_0x3a64('0xe')](handleError(_0x3b80f7,null));};exports[_0x3a64('0x4b')]=function(_0x4c458b,_0x162aee){return respondWithRpcPromise(_0x3a64('0x4c'),_0x4c458b[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](respondWithResult(_0x162aee,null))['catch'](handleError(_0x162aee,null));};exports[_0x3a64('0x4d')]=function(_0x44bc9b,_0x593531){return respondWithRpcPromise(_0x3a64('0x4c'),_0x44bc9b[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](findById(_0x44bc9b[_0x3a64('0x1b')]['id']))[_0x3a64('0x9')](respondWithResult(_0x593531,null))[_0x3a64('0xe')](handleError(_0x593531,null));};exports['whatsappQueues']=function(_0x525c4b,_0x350219){return respondWithRpcPromise(_0x3a64('0x4e'),_0x525c4b[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](respondWithResult(_0x350219,null))[_0x3a64('0xe')](handleError(_0x350219,null));};exports[_0x3a64('0x4f')]=function(_0x2aa58a,_0x16c727){return respondWithRpcPromise('WhatsappQueues',_0x2aa58a['query'],routingClient)['then'](findById(_0x2aa58a['params']['id']))[_0x3a64('0x9')](respondWithResult(_0x16c727,null))[_0x3a64('0xe')](handleError(_0x16c727,null));};exports[_0x3a64('0x50')]=function(_0x2528cd,_0x26f406){return respondWithRpcPromise(_0x3a64('0x51'),_0x2528cd['query'],routingClient)[_0x3a64('0x9')](respondWithResult(_0x26f406,null))[_0x3a64('0xe')](handleError(_0x26f406,null));};exports[_0x3a64('0x52')]=function(_0x3b0b55,_0x15d3e0){return respondWithRpcPromise(_0x3a64('0x51'),_0x3b0b55[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](findById(_0x3b0b55[_0x3a64('0x1b')]['id']))[_0x3a64('0x9')](respondWithResult(_0x15d3e0,null))[_0x3a64('0xe')](handleError(_0x15d3e0,null));};exports[_0x3a64('0x53')]=function(_0x17cfeb,_0xdfb946){return respondWithRpcPromise(_0x3a64('0x54'),_0x17cfeb[_0x3a64('0x18')])[_0x3a64('0x9')](respondWithResult(_0xdfb946,null))[_0x3a64('0xe')](handleError(_0xdfb946,null));};exports['chatQueuesWaitingInteractions']=function(_0x14898d,_0x2e5863){return respondWithRpcPromise(_0x3a64('0x55'),_0x14898d[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](respondWithResult(_0x2e5863,null))[_0x3a64('0xe')](handleError(_0x2e5863,null));};exports[_0x3a64('0x56')]=function(_0x18b0f8,_0x39a6af){return respondWithRpcPromise(_0x3a64('0x57'),_0x18b0f8[_0x3a64('0x18')],routingClient)['then'](respondWithResult(_0x39a6af,null))[_0x3a64('0xe')](handleError(_0x39a6af,null));};exports[_0x3a64('0x58')]=function(_0x4be4b8,_0x39a520){return respondWithRpcPromise(_0x3a64('0x59'),_0x4be4b8[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](respondWithResult(_0x39a520,null))[_0x3a64('0xe')](handleError(_0x39a520,null));};exports[_0x3a64('0x5a')]=function(_0x2b33ad,_0xbe6916){return respondWithRpcPromise(_0x3a64('0x59'),_0x2b33ad[_0x3a64('0x18')],routingClient)[_0x3a64('0x9')](function(_0x3ab14f){if(_0x2b33ad[_0x3a64('0x18')][_0x3a64('0x5b')]!==undefined){var _0x1eb5f5=_(_0x3ab14f[_0x3a64('0x16')])[_0x3a64('0x5c')]([_0x2b33ad[_0x3a64('0x18')][_0x3a64('0x5b')],_0x2b33ad[_0x3a64('0x1b')]['id']])[_0x3a64('0x5d')](_0x3a64('0x5e'))[_0x3a64('0x5f')]()[_0x3a64('0x60')]();return _0x3ab14f[_0x3a64('0x16')][_0x3a64('0x5c')](function(_0x6dacbf){return _0x1eb5f5[_0x3a64('0x61')](_0x6dacbf[_0x3a64('0x5e')])>-0x1;});}else{return _0x3ab14f[_0x3a64('0x16')][_0x3a64('0x5c')](function(_0x115cb6){return _0x115cb6[_0x3a64('0x5e')]===parseInt(_0x2b33ad['params']['id']);});}})[_0x3a64('0x9')](respondWithResult(_0xbe6916,null))[_0x3a64('0xe')](handleError(_0xbe6916,null));};exports[_0x3a64('0x62')]=function(_0x232ad4,_0x51c5f2){return respondWithRpcPromise(_0x3a64('0x63'),_0x232ad4['query'],routingClient)[_0x3a64('0x9')](respondWithResult(_0x51c5f2,null))[_0x3a64('0xe')](handleError(_0x51c5f2,null));};exports[_0x3a64('0x64')]=function(_0x15bde1,_0xad6997){return respondWithRpcPromise(_0x3a64('0x65'),_0x15bde1['query'],routingClient)[_0x3a64('0x9')](respondWithResult(_0xad6997,null))['catch'](handleError(_0xad6997,null));};exports[_0x3a64('0x66')]=function(_0x44e324,_0xbe0060){return respondWithRpcPromise(_0x3a64('0x67'),_0x44e324['query'],routingClient)[_0x3a64('0x9')](respondWithResult(_0xbe0060,null))[_0x3a64('0xe')](handleError(_0xbe0060,null));};exports[_0x3a64('0x68')]=function(_0x5a5c79){return function(_0x26a639,_0x496295){var _0x54cb51,_0x4959f8;var _0x523e05=_[_0x3a64('0x69')](_0x5a5c79);var _0x1bc503=_0x5a5c79===_0x3a64('0x6a')?_0x3a64('0x6b'):_0x3a64('0x6c');return db[_0x523e05+'Queue']['findOne']({'raw':!![],'where':{'id':_0x26a639[_0x3a64('0x1b')]['id']}})[_0x3a64('0x9')](function(_0x222630){if(_[_0x3a64('0x14')](_0x222630)){throw new Error(_0x523e05+_0x3a64('0x6d'));}_0x54cb51=_0x222630;return db[_0x523e05+_0x3a64('0x6e')]['findOne']({'where':{'id':_0x26a639[_0x3a64('0x2a')][_0x3a64('0x6f')]},'include':[{'model':db[_0x523e05+_0x3a64('0x70')],'as':_0x3a64('0x70')},{'model':db[_0x523e05+_0x1bc503],'as':_0x3a64('0x6c')}]});})[_0x3a64('0x9')](function(_0x5a8562){if(_['isNil'](_0x5a8562)){throw new Error(_0x523e05+_0x3a64('0x71'));}_0x4959f8=_0x5a8562;return _0x5a8562[_0x3a64('0x72')]({'read':0x0,'readAt':null,'UserId':null});})[_0x3a64('0x9')](function(){var _0x1ab51b={'uniqueid':_0x5a5c79+'.'+_0x4959f8['id']+'.'+_0x4959f8['Interaction']['id'],'FromUserId':_0x26a639[_0x3a64('0x2b')]['id'],'type':'queue'};_0x1ab51b[_0x523e05+_0x3a64('0x73')]=_0x4959f8['id'];_0x1ab51b[_0x523e05+'InteractionId']=_0x4959f8[_0x3a64('0x70')]['id'];_0x1ab51b[_0x3a64('0x74')+_0x523e05+_0x1bc503+'Id']=_0x4959f8[_0x3a64('0x6c')]['id'];_0x1ab51b['To'+_0x523e05+_0x3a64('0x75')]=_0x54cb51['id'];return db[_0x523e05+_0x3a64('0x76')][_0x3a64('0x77')](_0x1ab51b);})[_0x3a64('0x9')](function(){return respondWithRpcPromise('Start',{'channel':_0x5a5c79,'interaction':_0x4959f8[_0x3a64('0x70')],'message':_0x4959f8,'account':_0x4959f8[_0x3a64('0x6c')],'applications':[{'id':0x0,'priority':0x1,'app':'queue','appdata':_0x54cb51[_0x3a64('0x12')]+','+(_0x4959f8[_0x3a64('0x6c')][_0x3a64('0x78')]||0x12c),'interval':_0x3a64('0x79')}]},routingClient);})[_0x3a64('0x9')](respondWithResult(_0x496295,null))['catch'](handleError(_0x496295,null));};};exports[_0x3a64('0x7a')]=function(_0x36d4a3,_0x466b48){var _0x2fb65b,_0x5da3ac;if(_[_0x3a64('0x14')](_0x36d4a3[_0x3a64('0x2a')][_0x3a64('0x7b')])){throw new Error('Channel\x20field\x20is\x20mandatory');}var _0x3d6292=_0x36d4a3[_0x3a64('0x2a')][_0x3a64('0x7b')];var _0x54aba6=_[_0x3a64('0x69')](_0x3d6292);var _0x2ec204=_0x3d6292===_0x3a64('0x6a')?_0x3a64('0x6b'):_0x3a64('0x6c');return db[_0x3a64('0x7c')][_0x3a64('0x7d')]({'raw':!![],'where':{'id':_0x36d4a3[_0x3a64('0x1b')]['id'],'role':_0x3a64('0x38')}})[_0x3a64('0x9')](function(_0x594479){if(_[_0x3a64('0x14')](_0x594479)){throw new Error(_0x3a64('0x7e'));}_0x2fb65b=_0x594479;return db[_0x54aba6+'Message']['findOne']({'where':{'id':_0x36d4a3[_0x3a64('0x2a')][_0x3a64('0x6f')]},'include':[{'model':db[_0x54aba6+_0x3a64('0x70')],'as':_0x3a64('0x70')},{'model':db[_0x54aba6+_0x2ec204],'as':'Account'}]});})[_0x3a64('0x9')](function(_0x2960de){if(_[_0x3a64('0x14')](_0x2960de)){throw new Error(_0x54aba6+'\x20Message\x20not\x20found');}_0x5da3ac=_0x2960de;return _0x2960de[_0x3a64('0x72')]({'read':0x0,'readAt':null,'UserId':null});})[_0x3a64('0x9')](function(){var _0x37e38c={'uniqueid':_0x3d6292+'.'+_0x5da3ac['id']+'.'+_0x5da3ac[_0x3a64('0x70')]['id'],'FromUserId':_0x36d4a3['user']['id'],'type':_0x3a64('0x7f'),'ToUserId':_0x2fb65b['id']};_0x37e38c[_0x54aba6+_0x3a64('0x73')]=_0x5da3ac['id'];_0x37e38c[_0x54aba6+_0x3a64('0x80')]=_0x5da3ac[_0x3a64('0x70')]['id'];_0x37e38c[_0x3a64('0x74')+_0x54aba6+_0x2ec204+'Id']=_0x5da3ac['Account']['id'];return db[_0x54aba6+_0x3a64('0x76')][_0x3a64('0x77')](_0x37e38c);})[_0x3a64('0x9')](function(){return respondWithRpcPromise(_0x3a64('0x81'),{'channel':_0x3d6292,'interaction':_0x5da3ac[_0x3a64('0x70')],'message':_0x5da3ac,'account':_0x5da3ac['Account'],'applications':[{'id':0x0,'priority':0x1,'app':_0x3a64('0x38'),'appdata':_0x2fb65b[_0x3a64('0x12')]+','+(_0x5da3ac[_0x3a64('0x6c')][_0x3a64('0x82')]||0x12c),'interval':_0x3a64('0x79')}]},routingClient);})['then'](respondWithResult(_0x466b48,null))['catch'](handleError(_0x466b48,null));};