Built motion from commit (unavailable).|2.5.15
[motion2.git] / server / api / cmHopper / cmHopper.rpc.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 _0x43a7=['where','stringify','CreateCmHopper','body','UpdateCmHopper','DestroyCmHopper','destroy','describe','transaction','order','LOCK','UPDATE','Contact','keys','User','voicePause','includes','push','UserId','GetContactDialer','MoveContactManagedDialer','CmHopperFinal','create','CountReScheduled','sequelize','`scheduledat`\x20>=\x20','\x22%s\x22','format','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','contactsRescheduled','GetContactRecallMe','CmContact','all','GetCmHopperPreview','lodash','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','jayson/promise','client','request','CmHopper,\x20%s,\x20%s','request\x20sent','debug','error','message','info','result','catch','GetCmHopper','CmHopper','findAll','options','attributes','limit','map','include','model','then','ShowCmHopper','find','raw'];(function(_0xfa05d7,_0x33c1f2){var _0x25560d=function(_0x47d181){while(--_0x47d181){_0xfa05d7['push'](_0xfa05d7['shift']());}};_0x25560d(++_0x33c1f2);}(_0x43a7,0x172));var _0x743a=function(_0x3e2fcf,_0x579110){_0x3e2fcf=_0x3e2fcf-0x0;var _0x497db7=_0x43a7[_0x3e2fcf];return _0x497db7;};'use strict';var _=require(_0x743a('0x0'));var util=require('util');var moment=require(_0x743a('0x1'));var BPromise=require(_0x743a('0x2'));var rs=require(_0x743a('0x3'));var fs=require('fs');var Redis=require(_0x743a('0x4'));var db=require(_0x743a('0x5'))['db'];var utils=require(_0x743a('0x6'));var logger=require(_0x743a('0x7'))('rpc');var config=require('../../config/environment');var jayson=require(_0x743a('0x8'));var client=jayson[_0x743a('0x9')]['http']({'port':0x232a});function respondWithRpcPromise(_0x3b398b,_0x28ae12,_0x4857b4){return new BPromise(function(_0x37e58b,_0x2d8c69){return client[_0x743a('0xa')](_0x3b398b,_0x4857b4)['then'](function(_0xd26234){logger['info'](_0x743a('0xb'),_0x28ae12,_0x743a('0xc'));logger[_0x743a('0xd')]('CmHopper,\x20%s,\x20%s,\x20%s',_0x28ae12,'request\x20sent',JSON['stringify'](_0xd26234));if(_0xd26234[_0x743a('0xe')]){if(_0xd26234[_0x743a('0xe')]['code']===0x1f4){logger['error'](_0x743a('0xb'),_0x28ae12,_0xd26234[_0x743a('0xe')][_0x743a('0xf')]);return _0x2d8c69(_0xd26234[_0x743a('0xe')][_0x743a('0xf')]);}logger[_0x743a('0xe')](_0x743a('0xb'),_0x28ae12,_0xd26234[_0x743a('0xe')][_0x743a('0xf')]);return _0x37e58b(_0xd26234['error'][_0x743a('0xf')]);}else{logger[_0x743a('0x10')](_0x743a('0xb'),_0x28ae12,'request\x20sent');_0x37e58b(_0xd26234[_0x743a('0x11')]['message']);}})[_0x743a('0x12')](function(_0x44a30f){logger[_0x743a('0xe')](_0x743a('0xb'),_0x28ae12,_0x44a30f);_0x2d8c69(_0x44a30f);});});}exports[_0x743a('0x13')]=function(_0x3bc8f1){var _0x39311e=this;return new Promise(function(_0x361d66,_0x4fc482){return db[_0x743a('0x14')][_0x743a('0x15')]({'raw':_0x3bc8f1['options']?_0x3bc8f1['options']['raw']===undefined?!![]:![]:!![],'where':_0x3bc8f1[_0x743a('0x16')]?_0x3bc8f1[_0x743a('0x16')]['where']||null:null,'attributes':_0x3bc8f1[_0x743a('0x16')]?_0x3bc8f1[_0x743a('0x16')][_0x743a('0x17')]||null:null,'limit':_0x3bc8f1['options']?_0x3bc8f1[_0x743a('0x16')][_0x743a('0x18')]||null:null,'include':_0x3bc8f1[_0x743a('0x16')]?_0x3bc8f1[_0x743a('0x16')]['include']?_[_0x743a('0x19')](_0x3bc8f1['options'][_0x743a('0x1a')],function(_0x2a19e2){return{'model':db[_0x2a19e2[_0x743a('0x1b')]],'as':_0x2a19e2['as'],'attributes':_0x2a19e2[_0x743a('0x17')],'include':_0x2a19e2[_0x743a('0x1a')]?_['map'](_0x2a19e2['include'],function(_0x1924a7){return{'model':db[_0x1924a7[_0x743a('0x1b')]],'as':_0x1924a7['as'],'attributes':_0x1924a7[_0x743a('0x17')],'include':_0x1924a7[_0x743a('0x1a')]?_[_0x743a('0x19')](_0x1924a7[_0x743a('0x1a')],function(_0x3c9b07){return{'model':db[_0x3c9b07['model']],'as':_0x3c9b07['as'],'attributes':_0x3c9b07[_0x743a('0x17')]};}):[]};}):[]};}):[]:[]})[_0x743a('0x1c')](function(_0x2be238){logger[_0x743a('0x10')](_0x743a('0x13'),_0x3bc8f1);logger[_0x743a('0xd')](_0x743a('0x13'),_0x3bc8f1,JSON['stringify'](_0x2be238));_0x361d66(_0x2be238);})['catch'](function(_0x508221){logger[_0x743a('0xe')]('GetCmHopper',_0x508221[_0x743a('0xf')],_0x3bc8f1);_0x4fc482(_0x39311e[_0x743a('0xe')](0x1f4,_0x508221[_0x743a('0xf')]));});});};exports[_0x743a('0x1d')]=function(_0x58e751){var _0x2eed74=this;return new Promise(function(_0x5f32ca,_0x107534){return db[_0x743a('0x14')][_0x743a('0x1e')]({'raw':_0x58e751[_0x743a('0x16')]?_0x58e751[_0x743a('0x16')][_0x743a('0x1f')]===undefined?!![]:![]:!![],'where':_0x58e751[_0x743a('0x16')]?_0x58e751[_0x743a('0x16')][_0x743a('0x20')]||null:null,'attributes':_0x58e751[_0x743a('0x16')]?_0x58e751['options'][_0x743a('0x17')]||null:null,'include':_0x58e751[_0x743a('0x16')]?_0x58e751['options'][_0x743a('0x1a')]?_[_0x743a('0x19')](_0x58e751['options']['include'],function(_0xa438c){return{'model':db[_0xa438c[_0x743a('0x1b')]],'as':_0xa438c['as'],'attributes':_0xa438c[_0x743a('0x17')],'include':_0xa438c['include']?_[_0x743a('0x19')](_0xa438c[_0x743a('0x1a')],function(_0x3d2636){return{'model':db[_0x3d2636[_0x743a('0x1b')]],'as':_0x3d2636['as'],'attributes':_0x3d2636[_0x743a('0x17')],'include':_0x3d2636['include']?_[_0x743a('0x19')](_0x3d2636[_0x743a('0x1a')],function(_0xc6f9e7){return{'model':db[_0xc6f9e7['model']],'as':_0xc6f9e7['as'],'attributes':_0xc6f9e7[_0x743a('0x17')]};}):[]};}):[]};}):[]:[]})[_0x743a('0x1c')](function(_0x2d0aca){logger['info'](_0x743a('0x1d'),_0x58e751);logger[_0x743a('0xd')](_0x743a('0x1d'),_0x58e751,JSON[_0x743a('0x21')](_0x2d0aca));_0x5f32ca(_0x2d0aca);})[_0x743a('0x12')](function(_0x14a5e6){logger[_0x743a('0xe')](_0x743a('0x1d'),_0x14a5e6[_0x743a('0xf')],_0x58e751);_0x107534(_0x2eed74['error'](0x1f4,_0x14a5e6['message']));});});};exports[_0x743a('0x22')]=function(_0x1bff2c){var _0x3d9008=this;return new Promise(function(_0x4f4601,_0x927cdb){return db[_0x743a('0x14')]['create'](_0x1bff2c[_0x743a('0x23')],{'raw':_0x1bff2c[_0x743a('0x16')]?_0x1bff2c[_0x743a('0x16')][_0x743a('0x1f')]===undefined?!![]:![]:!![]})[_0x743a('0x1c')](function(_0xc3aeba){logger[_0x743a('0x10')](_0x743a('0x22'),_0x1bff2c);logger[_0x743a('0xd')](_0x743a('0x22'),_0x1bff2c,JSON[_0x743a('0x21')](_0xc3aeba));_0x4f4601(_0xc3aeba);})[_0x743a('0x12')](function(_0x2cb385){logger[_0x743a('0xe')](_0x743a('0x22'),_0x2cb385[_0x743a('0xf')],_0x1bff2c);_0x927cdb(_0x3d9008[_0x743a('0xe')](0x1f4,_0x2cb385[_0x743a('0xf')]));});});};exports[_0x743a('0x24')]=function(_0xbe23e9){var _0xc07f67=this;return new Promise(function(_0x5bb605,_0x1022b3){return db[_0x743a('0x14')]['update'](_0xbe23e9[_0x743a('0x23')],{'raw':_0xbe23e9[_0x743a('0x16')]?_0xbe23e9['options']['raw']===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0xbe23e9[_0x743a('0x16')]?_0xbe23e9[_0x743a('0x16')]['where']||null:null,'attributes':_0xbe23e9[_0x743a('0x16')]?_0xbe23e9['options'][_0x743a('0x17')]||null:null,'limit':_0xbe23e9[_0x743a('0x16')]?_0xbe23e9[_0x743a('0x16')][_0x743a('0x18')]||null:null})[_0x743a('0x1c')](function(_0x5952a9){logger[_0x743a('0x10')](_0x743a('0x24'),_0xbe23e9);logger[_0x743a('0xd')](_0x743a('0x24'),_0xbe23e9,JSON[_0x743a('0x21')](_0x5952a9));_0x5bb605(_0x5952a9);})[_0x743a('0x12')](function(_0x3d915f){logger[_0x743a('0xe')](_0x743a('0x24'),_0x3d915f['message'],_0xbe23e9);_0x1022b3(_0xc07f67['error'](0x1f4,_0x3d915f[_0x743a('0xf')]));});});};exports[_0x743a('0x25')]=function(_0x4f8b5e){var _0x1fc6ee=this;return new Promise(function(_0x4b8076,_0x3cef9c){return db['CmHopper'][_0x743a('0x26')]({'where':_0x4f8b5e[_0x743a('0x16')]?_0x4f8b5e['options']['where']||null:null})[_0x743a('0x1c')](function(_0x1d07c8){logger['info']('DestroyCmHopper',_0x4f8b5e);logger[_0x743a('0xd')](_0x743a('0x25'),_0x4f8b5e,JSON['stringify'](_0x1d07c8));_0x4b8076(_0x1d07c8);})['catch'](function(_0x4c6f35){logger[_0x743a('0xe')]('DestroyCmHopper',_0x4c6f35[_0x743a('0xf')],_0x4f8b5e);_0x3cef9c(_0x1fc6ee[_0x743a('0xe')](0x1f4,_0x4c6f35[_0x743a('0xf')]));});});};exports['GetContactDialer']=function(_0xa0a86d){var _0x47ae1f=this;return new Promise(function(_0x1af93b,_0x43db03){return db['CmContact'][_0x743a('0x27')]()['then'](function(_0x38e873){return db['sequelize'][_0x743a('0x28')](function(_0x2dee1d){return db['CmHopper'][_0x743a('0x15')]({'where':_0xa0a86d[_0x743a('0x16')]?_0xa0a86d['options'][_0x743a('0x20')]||null:null,'attributes':_0xa0a86d[_0x743a('0x16')]?_0xa0a86d['options'][_0x743a('0x17')]||null:null,'limit':_0xa0a86d['options']?_0xa0a86d[_0x743a('0x16')]['limit']||null:null,'order':_0xa0a86d[_0x743a('0x16')]?_0xa0a86d['options'][_0x743a('0x29')]||null:null,'transaction':_0x2dee1d,'lock':_0x2dee1d[_0x743a('0x2a')][_0x743a('0x2b')],'include':[{'model':db['CmContact'],'as':_0x743a('0x2c'),'attributes':_[_0x743a('0x2d')](_0x38e873)},{'model':db[_0x743a('0x2e')],'as':'Agent','attributes':['id','name',_0x743a('0x2f')]}]})[_0x743a('0x1c')](function(_0x51005f){var _0x2fa6aa=[];var _0x4eb344=[];for(var _0x85e3d=0x0;_0x85e3d<_0x51005f['length'];_0x85e3d+=0x1){if(!_0x4eb344[_0x743a('0x30')](_0x51005f[_0x85e3d]['UserId'])){_0x4eb344[_0x743a('0x31')](_0x51005f[_0x85e3d][_0x743a('0x32')]);_0x2fa6aa[_0x743a('0x31')](_0x51005f[_0x85e3d]['update'](_0xa0a86d[_0x743a('0x23')],{'transaction':_0x2dee1d}));}}return BPromise['all'](_0x2fa6aa);});})[_0x743a('0x1c')](function(_0x482987){logger[_0x743a('0x10')](_0x743a('0x33'),_0xa0a86d);logger[_0x743a('0xd')](_0x743a('0x33'),_0xa0a86d,JSON[_0x743a('0x21')](_0x482987));_0x1af93b(_0x482987);})['catch'](function(_0x55b7e1){logger['error'](_0x743a('0x33'),_0x55b7e1[_0x743a('0xf')],_0xa0a86d);_0x43db03(_0x47ae1f[_0x743a('0xe')](0x1f4,_0x55b7e1[_0x743a('0xf')]));});});});};exports[_0x743a('0x34')]=function(_0xf43454){var _0x2404e2=this;return new Promise(function(_0x184c0a,_0x13ee77){return db['sequelize'][_0x743a('0x28')](function(_0x5c0588){return db[_0x743a('0x35')][_0x743a('0x36')](_0xf43454[_0x743a('0x23')],{'raw':_0xf43454['options']?_0xf43454['options'][_0x743a('0x1f')]===undefined?!![]:![]:!![],'transaction':_0x5c0588})[_0x743a('0x1c')](function(){return db[_0x743a('0x14')][_0x743a('0x26')]({'where':_0xf43454[_0x743a('0x16')]?_0xf43454[_0x743a('0x16')][_0x743a('0x20')]||null:null,'transaction':_0x5c0588});});})[_0x743a('0x1c')](function(_0x5e5089){logger[_0x743a('0x10')](_0x743a('0x34'),_0xf43454);logger[_0x743a('0xd')](_0x743a('0x34'),_0xf43454,JSON[_0x743a('0x21')](_0x5e5089));_0x184c0a(_0x5e5089);})[_0x743a('0x12')](function(_0x2c2903){logger['error'](_0x743a('0x34'),_0x2c2903[_0x743a('0xf')],_0xf43454);_0x13ee77(_0x2404e2[_0x743a('0xe')](0x1f4,_0x2c2903['message']));});});};exports[_0x743a('0x37')]=function(_0x1fdf6f){var _0x54cd4a=this;return new Promise(function(_0x208ccc,_0x1c050c){return db[_0x743a('0x14')][_0x743a('0x15')]({'raw':_0x1fdf6f[_0x743a('0x16')]?_0x1fdf6f[_0x743a('0x16')][_0x743a('0x1f')]===undefined?!![]:![]:!![],'where':_0x1fdf6f[_0x743a('0x16')]?_0x1fdf6f[_0x743a('0x16')][_0x743a('0x20')]||null:null,'attributes':[[db[_0x743a('0x38')]['fn']('COUNT',db[_0x743a('0x38')]['fn']('IF',db[_0x743a('0x38')]['literal'](_0x743a('0x39')+util['format'](_0x743a('0x3a'),moment()[_0x743a('0x3b')](_0x743a('0x3c')))+_0x743a('0x3d')))),_0x743a('0x3e')]]})['then'](function(_0x2e12d7){logger['info']('CountReScheduled',_0x1fdf6f);logger[_0x743a('0xd')](_0x743a('0x37'),_0x1fdf6f,JSON['stringify'](_0x2e12d7));_0x208ccc(_0x2e12d7);})[_0x743a('0x12')](function(_0x17e27c){logger[_0x743a('0xe')](_0x743a('0x37'),_0x17e27c['message'],_0x1fdf6f);_0x1c050c(_0x54cd4a[_0x743a('0xe')](0x1f4,_0x17e27c[_0x743a('0xf')]));});});};exports[_0x743a('0x3f')]=function(_0x181fa3){var _0x496ffb=this;return new Promise(function(_0x4979e4,_0x5696a7){return db[_0x743a('0x40')][_0x743a('0x27')]()['then'](function(_0x731abb){return db[_0x743a('0x38')][_0x743a('0x28')](function(_0x124f1e){return db[_0x743a('0x14')]['findAll']({'where':_0x181fa3[_0x743a('0x16')]?_0x181fa3[_0x743a('0x16')][_0x743a('0x20')]||null:null,'attributes':_0x181fa3[_0x743a('0x16')]?_0x181fa3[_0x743a('0x16')][_0x743a('0x17')]||null:null,'limit':0x1,'order':_0x181fa3['options']?_0x181fa3[_0x743a('0x16')][_0x743a('0x29')]||null:null,'group':db['CmHopper'][_0x743a('0x32')],'transaction':_0x124f1e,'lock':_0x124f1e['LOCK'][_0x743a('0x2b')],'include':_0x181fa3[_0x743a('0x16')]?_0x181fa3[_0x743a('0x16')]['include']?_['map'](_0x181fa3[_0x743a('0x16')]['include'],function(_0x2bdf0b){return{'model':db[_0x2bdf0b[_0x743a('0x1b')]],'as':_0x2bdf0b['as'],'attributes':_0x2bdf0b[_0x743a('0x17')],'include':_0x2bdf0b[_0x743a('0x1a')]?_[_0x743a('0x19')](_0x2bdf0b[_0x743a('0x1a')],function(_0xb47878){return{'model':db[_0xb47878[_0x743a('0x1b')]],'as':_0xb47878['as'],'attributes':_0xb47878[_0x743a('0x17')],'include':_0xb47878[_0x743a('0x1a')]?_[_0x743a('0x19')](_0xb47878[_0x743a('0x1a')],function(_0x97299a){return{'model':db[_0x97299a[_0x743a('0x1b')]],'as':_0x97299a['as'],'attributes':_0x97299a[_0x743a('0x17')]};}):[]};}):[]};}):[]:[]})[_0x743a('0x1c')](function(_0x212f41){var _0xf85e38=[];for(var _0x569dae=0x0;_0x569dae<_0x212f41['length'];_0x569dae+=0x1){_0xf85e38[_0x743a('0x31')](_0x212f41[_0x569dae]['update'](_0x181fa3[_0x743a('0x23')],{'transaction':_0x124f1e}));}return BPromise[_0x743a('0x41')](_0xf85e38);});})[_0x743a('0x1c')](function(_0x1efbd3){logger['info'](_0x743a('0x3f'),_0x181fa3);logger['debug'](_0x743a('0x3f'),_0x181fa3,JSON[_0x743a('0x21')](_0x1efbd3));_0x4979e4(_0x1efbd3);})[_0x743a('0x12')](function(_0x35fb90){logger[_0x743a('0xe')](_0x743a('0x3f'),_0x35fb90['message'],_0x181fa3);_0x5696a7(_0x496ffb['error'](0x1f4,_0x35fb90[_0x743a('0xf')]));});});});};exports[_0x743a('0x42')]=function(_0x5c960f){var _0x34ac81=this;return new Promise(function(_0x5a21a2,_0x568866){db[_0x743a('0x40')][_0x743a('0x27')]()[_0x743a('0x1c')](function(_0x320924){return db[_0x743a('0x14')]['findAll']({'raw':_0x5c960f[_0x743a('0x16')]?_0x5c960f['options'][_0x743a('0x1f')]===undefined?!![]:![]:!![],'where':_0x5c960f[_0x743a('0x16')]?_0x5c960f[_0x743a('0x16')]['where']||null:null,'attributes':_0x5c960f[_0x743a('0x16')]?_0x5c960f[_0x743a('0x16')][_0x743a('0x17')]||null:null,'limit':_0x5c960f[_0x743a('0x16')]?_0x5c960f[_0x743a('0x16')]['limit']||null:null,'include':_0x5c960f[_0x743a('0x16')]?_0x5c960f[_0x743a('0x16')][_0x743a('0x1a')]?_['map'](_0x5c960f['options'][_0x743a('0x1a')],function(_0x18797d){return{'model':db[_0x18797d['model']],'as':_0x18797d['as'],'attributes':_0x18797d['as']===_0x743a('0x2c')?_['keys'](_0x320924):_0x18797d[_0x743a('0x17')],'include':_0x18797d['include']?_[_0x743a('0x19')](_0x18797d[_0x743a('0x1a')],function(_0x194015){return{'model':db[_0x194015[_0x743a('0x1b')]],'as':_0x194015['as'],'attributes':_0x194015[_0x743a('0x17')],'include':_0x194015[_0x743a('0x1a')]?_[_0x743a('0x19')](_0x194015['include'],function(_0x57d45c){return{'model':db[_0x57d45c[_0x743a('0x1b')]],'as':_0x57d45c['as'],'attributes':_0x57d45c['attributes']};}):[]};}):[]};}):[]:[]})[_0x743a('0x1c')](function(_0x4a7602){logger[_0x743a('0x10')](_0x743a('0x13'),_0x5c960f);logger[_0x743a('0xd')]('GetCmHopper',_0x5c960f,JSON[_0x743a('0x21')](_0x4a7602));_0x5a21a2(_0x4a7602);})[_0x743a('0x12')](function(_0x1ebb1c){logger['error']('GetCmHopper',_0x1ebb1c[_0x743a('0xf')],_0x5c960f);_0x568866(_0x34ac81[_0x743a('0xe')](0x1f4,_0x1ebb1c['message']));});});});};