7de5c02f5f49c3c1e31f91d8f8b75959f02db20b
[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 _0xa0a0=['FaxAccounts','chatQueuesWaitingInteractions','ChatQueuesWaitingInteractions','mailQueuesWaitingInteractions','MailQueuesWaitingInteractions','OpenchannelQueuesWaitingInteractions','openchannelQueuesIdWaitingInteractions','rows','filter','type','queue_id','uniq','value','indexOf','smsQueuesWaitingInteractions','whatsappQueuesWaitingInteractions','WhatsappQueuesWaitingInteractions','faxQueuesWaitingInteractions','FaxQueuesWaitingInteractions','queueNotify','capitalize','chat','Website','Queue','Message','findOne','messageId','Interaction','Account','MessageId','InteractionId','QueueId','TransferReport','create','queueTransferTimeout','*,*,*,*','agentNotify','channel','User','Agent\x20not\x20found','\x20Message\x20not\x20found','From','Start','agentTransferTimeout','moment','lodash','util','jayson/promise','client','http','request','then','error','code','message','catch','status','sendStatus','stack','name','send','isNil','find','voiceChannels','VoiceChannels','VoiceChannelMixMonitor','merge','query','voiceChannelStopMixMonitor','VoiceChannelStopMixMonitor','params','voiceQueues','VoiceQueues','UpdateVoiceQueue','body','voiceQueuesPreview','VoiceQueuesPreview','voiceQueuesChannels','VoiceQueuesChannels','voiceQueuesChannel','VoiceQueuesChannel','voiceQueuesChannelHangup','voiceQueuesChannelRedirect','VoiceQueuesChannelRedirect','outbound','Outbound','outboundChannels','OutboundChannels','agents','Agents','agentCapacity','interaction','user','findAll','length','format','YYYY-MM-DD\x20HH:mm:ss','MemberReport','findOrCreate','interface','SIP/%s','INTERACTION','agent','telephones','Telephones','trunks','Trunks','campaigns','ChatQueues','MailQueues','showMailQueues','OpenchannelQueues','showOpenchannelQueues','smsQueues','SmsQueues','showSmsQueues','whatsappQueues','WhatsappQueues','faxQueues','FaxQueues','faxAccounts'];(function(_0x57b54c,_0x54ce0d){var _0x59cc19=function(_0xa33bc6){while(--_0xa33bc6){_0x57b54c['push'](_0x57b54c['shift']());}};_0x59cc19(++_0x54ce0d);}(_0xa0a0,0x11e));var _0x0a0a=function(_0x49f8c2,_0x5166b7){_0x49f8c2=_0x49f8c2-0x0;var _0x3e63ec=_0xa0a0[_0x49f8c2];return _0x3e63ec;};'use strict';var BPromise=require('bluebird');var moment=require(_0x0a0a('0x0'));var _=require(_0x0a0a('0x1'));var util=require(_0x0a0a('0x2'));var db=require('../../mysqldb')['db'];var logger=require('../../config/logger')('api');var jayson=require(_0x0a0a('0x3'));var amiClient=jayson[_0x0a0a('0x4')][_0x0a0a('0x5')]({'port':0x232a});var mailClient=jayson['client'][_0x0a0a('0x5')]({'port':0x232b});var routingClient=jayson['client'][_0x0a0a('0x5')]({'port':0x232c});function respondWithRpcPromise(_0x4f0448,_0x4a7e23,_0x8bc561){return new BPromise(function(_0x4f7464,_0x55d082){var _0x428482=_0x8bc561?_0x8bc561:amiClient;return _0x428482[_0x0a0a('0x6')](_0x4f0448,_0x4a7e23)[_0x0a0a('0x7')](function(_0xd38c41){if(_0xd38c41[_0x0a0a('0x8')]){if(_0xd38c41[_0x0a0a('0x8')][_0x0a0a('0x9')]===0x1f4){return _0x55d082(_0xd38c41[_0x0a0a('0x8')][_0x0a0a('0xa')]);}return _0x4f7464(_0xd38c41[_0x0a0a('0x8')][_0x0a0a('0xa')]);}else{_0x4f7464(_0xd38c41['result']);}})[_0x0a0a('0xb')](function(_0x5b5f6b){_0x55d082(_0x5b5f6b);});});}function respondWithResult(_0x52e175,_0x4019f3){_0x4019f3=_0x4019f3||0xc8;return function(_0x56e81b){if(_0x56e81b){return _0x52e175[_0x0a0a('0xc')](_0x4019f3)['json'](_0x56e81b);}return _0x52e175[_0x0a0a('0xd')](0x194);};}function handleError(_0x40f0d0,_0x5942be){_0x5942be=_0x5942be||0x1f4;return function(_0x525872){logger[_0x0a0a('0x8')](_0x525872[_0x0a0a('0xe')]);if(_0x525872[_0x0a0a('0xf')]){delete _0x525872['name'];}_0x40f0d0[_0x0a0a('0xc')](_0x5942be)[_0x0a0a('0x10')](_0x525872);};}function findById(_0x25db4e){return function(_0x221751){if(!_[_0x0a0a('0x11')](_0x25db4e)&&!_[_0x0a0a('0x11')](_0x221751)&&!_[_0x0a0a('0x11')](_0x221751['rows'])){return _[_0x0a0a('0x12')](_0x221751['rows'],function(_0x330c1d){return _0x330c1d['id']==_0x25db4e;});}return null;};}exports[_0x0a0a('0x13')]=function(_0x5f160a,_0x452c5e){return respondWithRpcPromise(_0x0a0a('0x14'),_0x5f160a['query'])[_0x0a0a('0x7')](respondWithResult(_0x452c5e,null))[_0x0a0a('0xb')](handleError(_0x452c5e,null));};exports['voiceChannelMixMonitor']=function(_0x1e28a4,_0x39f932){return respondWithRpcPromise(_0x0a0a('0x15'),_[_0x0a0a('0x16')](_0x1e28a4[_0x0a0a('0x17')],_0x1e28a4['params']))[_0x0a0a('0x7')](respondWithResult(_0x39f932,null))['catch'](handleError(_0x39f932,null));};exports[_0x0a0a('0x18')]=function(_0x21555d,_0x5545ab){return respondWithRpcPromise(_0x0a0a('0x19'),_[_0x0a0a('0x16')](_0x21555d[_0x0a0a('0x17')],_0x21555d[_0x0a0a('0x1a')]))[_0x0a0a('0x7')](respondWithResult(_0x5545ab,null))['catch'](handleError(_0x5545ab,null));};exports[_0x0a0a('0x1b')]=function(_0x23c2f9,_0x3614cd){return respondWithRpcPromise(_0x0a0a('0x1c'),_0x23c2f9[_0x0a0a('0x17')])[_0x0a0a('0x7')](respondWithResult(_0x3614cd,null))[_0x0a0a('0xb')](handleError(_0x3614cd,null));};exports['showVoiceQueues']=function(_0xa2eea1,_0x914b77){return respondWithRpcPromise('VoiceQueues',_0xa2eea1[_0x0a0a('0x17')])[_0x0a0a('0x7')](findById(_0xa2eea1['params']['id']))[_0x0a0a('0x7')](respondWithResult(_0x914b77,null))[_0x0a0a('0xb')](handleError(_0x914b77,null));};exports['updateVoiceQueue']=function(_0x296c52,_0x4f318e){return respondWithRpcPromise(_0x0a0a('0x1d'),_[_0x0a0a('0x16')](_0x296c52[_0x0a0a('0x1e')],_0x296c52[_0x0a0a('0x1a')]))[_0x0a0a('0x7')](respondWithResult(_0x4f318e,null))[_0x0a0a('0xb')](handleError(_0x4f318e,null));};exports[_0x0a0a('0x1f')]=function(_0x335bf7,_0x311fe8){return respondWithRpcPromise(_0x0a0a('0x20'),_[_0x0a0a('0x16')](_0x335bf7[_0x0a0a('0x17')],_0x335bf7[_0x0a0a('0x1a')]))['then'](respondWithResult(_0x311fe8,null))[_0x0a0a('0xb')](handleError(_0x311fe8,null));};exports[_0x0a0a('0x21')]=function(_0x3dfd42,_0x597455){return respondWithRpcPromise(_0x0a0a('0x22'),_0x3dfd42[_0x0a0a('0x17')])[_0x0a0a('0x7')](respondWithResult(_0x597455,null))[_0x0a0a('0xb')](handleError(_0x597455,null));};exports[_0x0a0a('0x23')]=function(_0x2927a3,_0x58d859){return respondWithRpcPromise(_0x0a0a('0x24'),_[_0x0a0a('0x16')](_0x2927a3[_0x0a0a('0x17')],_0x2927a3['params']))['then'](respondWithResult(_0x58d859,null))[_0x0a0a('0xb')](handleError(_0x58d859,null));};exports[_0x0a0a('0x25')]=function(_0x1a236d,_0x1ae507){return respondWithRpcPromise('VoiceQueuesChannelHangup',_['merge'](_0x1a236d[_0x0a0a('0x17')],_0x1a236d[_0x0a0a('0x1a')]))[_0x0a0a('0x7')](respondWithResult(_0x1ae507,null))[_0x0a0a('0xb')](handleError(_0x1ae507,null));};exports[_0x0a0a('0x26')]=function(_0x48955b,_0x21ac6d){return respondWithRpcPromise(_0x0a0a('0x27'),_[_0x0a0a('0x16')](_0x48955b[_0x0a0a('0x17')],_0x48955b[_0x0a0a('0x1a')]))['then'](respondWithResult(_0x21ac6d,null))['catch'](handleError(_0x21ac6d,null));};exports[_0x0a0a('0x28')]=function(_0x22144a,_0x333a11){return respondWithRpcPromise(_0x0a0a('0x29'),_0x22144a[_0x0a0a('0x17')])[_0x0a0a('0x7')](respondWithResult(_0x333a11,null))[_0x0a0a('0xb')](handleError(_0x333a11,null));};exports[_0x0a0a('0x2a')]=function(_0x4c2b82,_0x560332){return respondWithRpcPromise(_0x0a0a('0x2b'),_0x4c2b82[_0x0a0a('0x17')])[_0x0a0a('0x7')](respondWithResult(_0x560332,null))[_0x0a0a('0xb')](handleError(_0x560332,null));};exports[_0x0a0a('0x2c')]=function(_0x230c5e,_0x4ca82b){var _0x133c99;return respondWithRpcPromise(_0x0a0a('0x2d'),_0x230c5e[_0x0a0a('0x17')])[_0x0a0a('0x7')](function(_0x1df317){_0x133c99=_0x1df317;return respondWithRpcPromise('Agents',_0x230c5e[_0x0a0a('0x17')],routingClient);})[_0x0a0a('0x7')](function(_0xe14171){return _[_0x0a0a('0x16')]({},_0xe14171,_0x133c99);})[_0x0a0a('0x7')](respondWithResult(_0x4ca82b,null))[_0x0a0a('0xb')](handleError(_0x4ca82b,null));};exports[_0x0a0a('0x2e')]=function(_0x411de0,_0x1c62cb){if(_0x411de0['body']&&_0x411de0[_0x0a0a('0x1e')][_0x0a0a('0x2f')]&&_0x411de0[_0x0a0a('0x30')]&&_0x411de0['user'][_0x0a0a('0xf')]){for(var _0x35676f in _0x411de0['body'][_0x0a0a('0x2f')]){if(_0x411de0[_0x0a0a('0x1e')][_0x0a0a('0x2f')]['hasOwnProperty'](_0x35676f)){db['MemberReport'][_0x0a0a('0x31')]({'where':{'channel':_0x35676f,'membername':_0x411de0[_0x0a0a('0x30')][_0x0a0a('0xf')],'type':'INTERACTION','exitAt':null,'uniqueid':_0x411de0[_0x0a0a('0x1e')][_0x0a0a('0x2f')][_0x35676f]&&_0x411de0['body'][_0x0a0a('0x2f')][_0x35676f][_0x0a0a('0x32')]?{'$notIn':_0x411de0[_0x0a0a('0x1e')][_0x0a0a('0x2f')][_0x35676f]}:{'$ne':null}}})[_0x0a0a('0x7')](function(_0x1e396d){var _0x2030f5=moment()[_0x0a0a('0x33')](_0x0a0a('0x34'));for(var _0x308215=0x0,_0x33ef75=_0x1e396d['length'];_0x308215<_0x33ef75;_0x308215+=0x1){_0x1e396d[_0x308215]['updateAttributes']({'exitAt':_0x2030f5});}});for(var _0x395a2f=0x0;_0x395a2f<_0x411de0[_0x0a0a('0x1e')][_0x0a0a('0x2f')][_0x35676f][_0x0a0a('0x32')];_0x395a2f+=0x1){db[_0x0a0a('0x35')][_0x0a0a('0x36')]({'where':{'channel':_0x35676f,'membername':_0x411de0[_0x0a0a('0x30')]['name'],'type':'INTERACTION','uniqueid':_0x411de0[_0x0a0a('0x1e')][_0x0a0a('0x2f')][_0x35676f][_0x395a2f],'exitAt':null},'defaults':{'channel':_0x35676f,'membername':_0x411de0[_0x0a0a('0x30')]['name'],'interface':_[_0x0a0a('0x11')](_0x411de0[_0x0a0a('0x30')][_0x0a0a('0x37')])?util[_0x0a0a('0x33')](_0x0a0a('0x38'),_0x411de0[_0x0a0a('0x30')]['name']):_0x411de0[_0x0a0a('0x30')]['interface'],'type':_0x0a0a('0x39'),'enterAt':moment()['format'](_0x0a0a('0x34')),'role':_0x0a0a('0x3a'),'internal':_0x411de0[_0x0a0a('0x30')]['internal'],'uniqueid':_0x411de0['body']['interaction'][_0x35676f][_0x395a2f]}});}}}}return respondWithRpcPromise('AgentCapacity',{'id':_0x411de0['params']['id'],'capacity':_0x411de0[_0x0a0a('0x1e')]['capacity']},routingClient)[_0x0a0a('0x7')](respondWithResult(_0x1c62cb,null))['catch'](handleError(_0x1c62cb,null));};exports[_0x0a0a('0x3b')]=function(_0x1857b8,_0x260387){return respondWithRpcPromise(_0x0a0a('0x3c'),_0x1857b8[_0x0a0a('0x17')])['then'](respondWithResult(_0x260387,null))[_0x0a0a('0xb')](handleError(_0x260387,null));};exports[_0x0a0a('0x3d')]=function(_0x42c7f7,_0x1f7ff2){return respondWithRpcPromise(_0x0a0a('0x3e'),_0x42c7f7[_0x0a0a('0x17')])[_0x0a0a('0x7')](respondWithResult(_0x1f7ff2,null))[_0x0a0a('0xb')](handleError(_0x1f7ff2,null));};exports[_0x0a0a('0x3f')]=function(_0x47a6f9,_0x4548b2){return respondWithRpcPromise('Campaigns',_0x47a6f9[_0x0a0a('0x17')])[_0x0a0a('0x7')](respondWithResult(_0x4548b2,null))[_0x0a0a('0xb')](handleError(_0x4548b2,null));};exports['chatQueues']=function(_0x1292f3,_0x31f26f){return respondWithRpcPromise('ChatQueues',_0x1292f3[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x31f26f,null))[_0x0a0a('0xb')](handleError(_0x31f26f,null));};exports['showChatQueues']=function(_0x7b02a4,_0x3d3724){return respondWithRpcPromise(_0x0a0a('0x40'),_0x7b02a4[_0x0a0a('0x17')],routingClient)['then'](findById(_0x7b02a4['params']['id']))['then'](respondWithResult(_0x3d3724,null))['catch'](handleError(_0x3d3724,null));};exports['mailQueues']=function(_0x1de340,_0x48d23e){return respondWithRpcPromise(_0x0a0a('0x41'),_0x1de340[_0x0a0a('0x17')],routingClient)['then'](respondWithResult(_0x48d23e,null))[_0x0a0a('0xb')](handleError(_0x48d23e,null));};exports[_0x0a0a('0x42')]=function(_0x1ec8a4,_0x85c6d7){return respondWithRpcPromise(_0x0a0a('0x41'),_0x1ec8a4[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](findById(_0x1ec8a4[_0x0a0a('0x1a')]['id']))[_0x0a0a('0x7')](respondWithResult(_0x85c6d7,null))[_0x0a0a('0xb')](handleError(_0x85c6d7,null));};exports['mailAccounts']=function(_0x4623ae,_0x5d8251){return respondWithRpcPromise('MailAccounts',_0x4623ae[_0x0a0a('0x17')],mailClient)['then'](respondWithResult(_0x5d8251,null))[_0x0a0a('0xb')](handleError(_0x5d8251,null));};exports['openchannelQueues']=function(_0x345830,_0x3e97fa){return respondWithRpcPromise(_0x0a0a('0x43'),_0x345830[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x3e97fa,null))[_0x0a0a('0xb')](handleError(_0x3e97fa,null));};exports[_0x0a0a('0x44')]=function(_0x4dc01e,_0x231ff9){return respondWithRpcPromise(_0x0a0a('0x43'),_0x4dc01e[_0x0a0a('0x17')],routingClient)['then'](findById(_0x4dc01e[_0x0a0a('0x1a')]['id']))[_0x0a0a('0x7')](respondWithResult(_0x231ff9,null))[_0x0a0a('0xb')](handleError(_0x231ff9,null));};exports[_0x0a0a('0x45')]=function(_0x3eb198,_0x451bed){return respondWithRpcPromise(_0x0a0a('0x46'),_0x3eb198[_0x0a0a('0x17')],routingClient)['then'](respondWithResult(_0x451bed,null))[_0x0a0a('0xb')](handleError(_0x451bed,null));};exports[_0x0a0a('0x47')]=function(_0x196037,_0xca658){return respondWithRpcPromise(_0x0a0a('0x46'),_0x196037[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](findById(_0x196037[_0x0a0a('0x1a')]['id']))[_0x0a0a('0x7')](respondWithResult(_0xca658,null))[_0x0a0a('0xb')](handleError(_0xca658,null));};exports[_0x0a0a('0x48')]=function(_0x5524d4,_0x3d4855){return respondWithRpcPromise('WhatsappQueues',_0x5524d4[_0x0a0a('0x17')],routingClient)['then'](respondWithResult(_0x3d4855,null))[_0x0a0a('0xb')](handleError(_0x3d4855,null));};exports['showWhatsappQueues']=function(_0x390954,_0x3bc1da){return respondWithRpcPromise(_0x0a0a('0x49'),_0x390954[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](findById(_0x390954[_0x0a0a('0x1a')]['id']))['then'](respondWithResult(_0x3bc1da,null))['catch'](handleError(_0x3bc1da,null));};exports[_0x0a0a('0x4a')]=function(_0xfc311c,_0x1b4807){return respondWithRpcPromise(_0x0a0a('0x4b'),_0xfc311c['query'],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x1b4807,null))['catch'](handleError(_0x1b4807,null));};exports['showFaxQueues']=function(_0xb5eb13,_0x29ff65){return respondWithRpcPromise(_0x0a0a('0x4b'),_0xb5eb13['query'],routingClient)[_0x0a0a('0x7')](findById(_0xb5eb13['params']['id']))[_0x0a0a('0x7')](respondWithResult(_0x29ff65,null))[_0x0a0a('0xb')](handleError(_0x29ff65,null));};exports[_0x0a0a('0x4c')]=function(_0x90f634,_0x3a6dd8){return respondWithRpcPromise(_0x0a0a('0x4d'),_0x90f634['query'])[_0x0a0a('0x7')](respondWithResult(_0x3a6dd8,null))[_0x0a0a('0xb')](handleError(_0x3a6dd8,null));};exports[_0x0a0a('0x4e')]=function(_0xbb53dd,_0x1737dc){return respondWithRpcPromise(_0x0a0a('0x4f'),_0xbb53dd['query'],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x1737dc,null))[_0x0a0a('0xb')](handleError(_0x1737dc,null));};exports[_0x0a0a('0x50')]=function(_0x2629ae,_0x972247){return respondWithRpcPromise(_0x0a0a('0x51'),_0x2629ae[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x972247,null))[_0x0a0a('0xb')](handleError(_0x972247,null));};exports['openchannelQueuesWaitingInteractions']=function(_0x1fc93c,_0x17edc2){return respondWithRpcPromise(_0x0a0a('0x52'),_0x1fc93c[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x17edc2,null))[_0x0a0a('0xb')](handleError(_0x17edc2,null));};exports[_0x0a0a('0x53')]=function(_0x337d9f,_0x10b7ab){return respondWithRpcPromise(_0x0a0a('0x52'),_0x337d9f[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](function(_0x5907c0){if(_0x337d9f[_0x0a0a('0x17')]['type']!==undefined){var _0x10d040=_(_0x5907c0[_0x0a0a('0x54')])[_0x0a0a('0x55')]([_0x337d9f[_0x0a0a('0x17')][_0x0a0a('0x56')],_0x337d9f[_0x0a0a('0x1a')]['id']])['map'](_0x0a0a('0x57'))[_0x0a0a('0x58')]()[_0x0a0a('0x59')]();return _0x5907c0[_0x0a0a('0x54')]['filter'](function(_0x1ad02e){return _0x10d040[_0x0a0a('0x5a')](_0x1ad02e[_0x0a0a('0x57')])>-0x1;});}else{return _0x5907c0['rows'][_0x0a0a('0x55')](function(_0x38c01d){return _0x38c01d[_0x0a0a('0x57')]===parseInt(_0x337d9f[_0x0a0a('0x1a')]['id']);});}})[_0x0a0a('0x7')](respondWithResult(_0x10b7ab,null))[_0x0a0a('0xb')](handleError(_0x10b7ab,null));};exports[_0x0a0a('0x5b')]=function(_0x1ae9d3,_0xc46015){return respondWithRpcPromise('SmsQueuesWaitingInteractions',_0x1ae9d3[_0x0a0a('0x17')],routingClient)['then'](respondWithResult(_0xc46015,null))[_0x0a0a('0xb')](handleError(_0xc46015,null));};exports[_0x0a0a('0x5c')]=function(_0x24b53b,_0x45351f){return respondWithRpcPromise(_0x0a0a('0x5d'),_0x24b53b[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x45351f,null))[_0x0a0a('0xb')](handleError(_0x45351f,null));};exports[_0x0a0a('0x5e')]=function(_0x19388b,_0x3fb433){return respondWithRpcPromise(_0x0a0a('0x5f'),_0x19388b[_0x0a0a('0x17')],routingClient)[_0x0a0a('0x7')](respondWithResult(_0x3fb433,null))[_0x0a0a('0xb')](handleError(_0x3fb433,null));};exports[_0x0a0a('0x60')]=function(_0x267803){return function(_0x1541af,_0x6f9a5f){var _0x5d7dd8,_0x57db2e;var _0x510912=_[_0x0a0a('0x61')](_0x267803);var _0x134d08=_0x267803===_0x0a0a('0x62')?_0x0a0a('0x63'):'Account';return db[_0x510912+_0x0a0a('0x64')]['findOne']({'raw':!![],'where':{'id':_0x1541af[_0x0a0a('0x1a')]['id']}})[_0x0a0a('0x7')](function(_0x476a6c){if(_[_0x0a0a('0x11')](_0x476a6c)){throw new Error(_0x510912+'\x20Queue\x20not\x20found');}_0x5d7dd8=_0x476a6c;return db[_0x510912+_0x0a0a('0x65')][_0x0a0a('0x66')]({'where':{'id':_0x1541af['body'][_0x0a0a('0x67')]},'include':[{'model':db[_0x510912+_0x0a0a('0x68')],'as':_0x0a0a('0x68')},{'model':db[_0x510912+_0x134d08],'as':_0x0a0a('0x69')}]});})[_0x0a0a('0x7')](function(_0x3b80a8){if(_[_0x0a0a('0x11')](_0x3b80a8)){throw new Error(_0x510912+'\x20Message\x20not\x20found');}_0x57db2e=_0x3b80a8;return _0x3b80a8['update']({'read':0x0,'readAt':null,'UserId':null});})['then'](function(){var _0xdfe462={'uniqueid':_0x267803+'.'+_0x57db2e['id']+'.'+_0x57db2e[_0x0a0a('0x68')]['id'],'FromUserId':_0x1541af[_0x0a0a('0x30')]['id'],'type':'queue'};_0xdfe462[_0x510912+_0x0a0a('0x6a')]=_0x57db2e['id'];_0xdfe462[_0x510912+_0x0a0a('0x6b')]=_0x57db2e[_0x0a0a('0x68')]['id'];_0xdfe462['From'+_0x510912+_0x134d08+'Id']=_0x57db2e[_0x0a0a('0x69')]['id'];_0xdfe462['To'+_0x510912+_0x0a0a('0x6c')]=_0x5d7dd8['id'];return db[_0x510912+_0x0a0a('0x6d')][_0x0a0a('0x6e')](_0xdfe462);})[_0x0a0a('0x7')](function(){return respondWithRpcPromise('Start',{'channel':_0x267803,'interaction':_0x57db2e[_0x0a0a('0x68')],'message':_0x57db2e,'account':_0x57db2e[_0x0a0a('0x69')],'applications':[{'id':0x0,'priority':0x1,'app':'queue','appdata':_0x5d7dd8['name']+','+(_0x57db2e[_0x0a0a('0x69')][_0x0a0a('0x6f')]||0x12c),'interval':_0x0a0a('0x70')}]},routingClient);})[_0x0a0a('0x7')](respondWithResult(_0x6f9a5f,null))[_0x0a0a('0xb')](handleError(_0x6f9a5f,null));};};exports[_0x0a0a('0x71')]=function(_0x4fa980,_0x539a65){var _0x5645c8,_0xa23d65;if(_[_0x0a0a('0x11')](_0x4fa980[_0x0a0a('0x1e')][_0x0a0a('0x72')])){throw new Error('Channel\x20field\x20is\x20mandatory');}var _0x2b9459=_0x4fa980[_0x0a0a('0x1e')]['channel'];var _0xd80a2e=_[_0x0a0a('0x61')](_0x2b9459);var _0x10532b=_0x2b9459==='chat'?_0x0a0a('0x63'):_0x0a0a('0x69');return db[_0x0a0a('0x73')]['findOne']({'raw':!![],'where':{'id':_0x4fa980[_0x0a0a('0x1a')]['id'],'role':'agent'}})[_0x0a0a('0x7')](function(_0x13bc18){if(_[_0x0a0a('0x11')](_0x13bc18)){throw new Error(_0x0a0a('0x74'));}_0x5645c8=_0x13bc18;return db[_0xd80a2e+_0x0a0a('0x65')][_0x0a0a('0x66')]({'where':{'id':_0x4fa980[_0x0a0a('0x1e')][_0x0a0a('0x67')]},'include':[{'model':db[_0xd80a2e+'Interaction'],'as':_0x0a0a('0x68')},{'model':db[_0xd80a2e+_0x10532b],'as':_0x0a0a('0x69')}]});})['then'](function(_0xfb6499){if(_[_0x0a0a('0x11')](_0xfb6499)){throw new Error(_0xd80a2e+_0x0a0a('0x75'));}_0xa23d65=_0xfb6499;return _0xfb6499['update']({'read':0x0,'readAt':null,'UserId':null});})[_0x0a0a('0x7')](function(){var _0x3b9a16={'uniqueid':_0x2b9459+'.'+_0xa23d65['id']+'.'+_0xa23d65[_0x0a0a('0x68')]['id'],'FromUserId':_0x4fa980[_0x0a0a('0x30')]['id'],'type':_0x0a0a('0x3a'),'ToUserId':_0x5645c8['id']};_0x3b9a16[_0xd80a2e+_0x0a0a('0x6a')]=_0xa23d65['id'];_0x3b9a16[_0xd80a2e+_0x0a0a('0x6b')]=_0xa23d65[_0x0a0a('0x68')]['id'];_0x3b9a16[_0x0a0a('0x76')+_0xd80a2e+_0x10532b+'Id']=_0xa23d65[_0x0a0a('0x69')]['id'];return db[_0xd80a2e+_0x0a0a('0x6d')]['create'](_0x3b9a16);})[_0x0a0a('0x7')](function(){return respondWithRpcPromise(_0x0a0a('0x77'),{'channel':_0x2b9459,'interaction':_0xa23d65[_0x0a0a('0x68')],'message':_0xa23d65,'account':_0xa23d65[_0x0a0a('0x69')],'applications':[{'id':0x0,'priority':0x1,'app':'agent','appdata':_0x5645c8[_0x0a0a('0xf')]+','+(_0xa23d65['Account'][_0x0a0a('0x78')]||0x12c),'interval':_0x0a0a('0x70')}]},routingClient);})[_0x0a0a('0x7')](respondWithResult(_0x539a65,null))[_0x0a0a('0xb')](handleError(_0x539a65,null));};