Built motion from commit (unavailable).|2.5.6
[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 _0xafa7=['Contact','keys','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','http','request','then','request\x20sent','CmHopper,\x20%s,\x20%s,\x20%s','error','CmHopper,\x20%s,\x20%s','message','result','catch','GetCmHopper','CmHopper','findAll','options','where','attributes','limit','include','model','map','debug','ShowCmHopper','find','raw','info','stringify','body','CreateCmHopper','UpdateCmHopper','DestroyCmHopper','destroy','GetContactDialer','CmContact','describe','sequelize','transaction','LOCK','UPDATE','User','Agent','name','voicePause','length','includes','UserId','push','all','MoveContactManagedDialer','CmHopperFinal','create','CountReScheduled','COUNT','literal','`scheduledat`\x20>=\x20','format','\x22%s\x22','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','contactsRescheduled','GetContactRecallMe','order','update','GetCmHopperPreview'];(function(_0x4709c0,_0x3396c7){var _0x13348b=function(_0x426235){while(--_0x426235){_0x4709c0['push'](_0x4709c0['shift']());}};_0x13348b(++_0x3396c7);}(_0xafa7,0x17e));var _0x7afa=function(_0x5756f8,_0x22b6d5){_0x5756f8=_0x5756f8-0x0;var _0x3bb749=_0xafa7[_0x5756f8];return _0x3bb749;};'use strict';var _=require(_0x7afa('0x0'));var util=require(_0x7afa('0x1'));var moment=require(_0x7afa('0x2'));var BPromise=require(_0x7afa('0x3'));var rs=require(_0x7afa('0x4'));var fs=require('fs');var Redis=require(_0x7afa('0x5'));var db=require(_0x7afa('0x6'))['db'];var utils=require(_0x7afa('0x7'));var logger=require(_0x7afa('0x8'))(_0x7afa('0x9'));var config=require(_0x7afa('0xa'));var jayson=require('jayson/promise');var client=jayson['client'][_0x7afa('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x35abe,_0x192a95,_0xa02afb){return new BPromise(function(_0x241279,_0x2313a9){return client[_0x7afa('0xc')](_0x35abe,_0xa02afb)[_0x7afa('0xd')](function(_0x2446c5){logger['info']('CmHopper,\x20%s,\x20%s',_0x192a95,_0x7afa('0xe'));logger['debug'](_0x7afa('0xf'),_0x192a95,'request\x20sent',JSON['stringify'](_0x2446c5));if(_0x2446c5[_0x7afa('0x10')]){if(_0x2446c5[_0x7afa('0x10')]['code']===0x1f4){logger['error'](_0x7afa('0x11'),_0x192a95,_0x2446c5[_0x7afa('0x10')]['message']);return _0x2313a9(_0x2446c5['error'][_0x7afa('0x12')]);}logger['error'](_0x7afa('0x11'),_0x192a95,_0x2446c5[_0x7afa('0x10')][_0x7afa('0x12')]);return _0x241279(_0x2446c5[_0x7afa('0x10')][_0x7afa('0x12')]);}else{logger['info'](_0x7afa('0x11'),_0x192a95,'request\x20sent');_0x241279(_0x2446c5[_0x7afa('0x13')][_0x7afa('0x12')]);}})[_0x7afa('0x14')](function(_0x3b0738){logger[_0x7afa('0x10')](_0x7afa('0x11'),_0x192a95,_0x3b0738);_0x2313a9(_0x3b0738);});});}exports[_0x7afa('0x15')]=function(_0xab4e00){var _0x47c20e=this;return new Promise(function(_0x59cf6b,_0x25511){return db[_0x7afa('0x16')][_0x7afa('0x17')]({'raw':_0xab4e00[_0x7afa('0x18')]?_0xab4e00[_0x7afa('0x18')]['raw']===undefined?!![]:![]:!![],'where':_0xab4e00[_0x7afa('0x18')]?_0xab4e00[_0x7afa('0x18')][_0x7afa('0x19')]||null:null,'attributes':_0xab4e00[_0x7afa('0x18')]?_0xab4e00['options'][_0x7afa('0x1a')]||null:null,'limit':_0xab4e00[_0x7afa('0x18')]?_0xab4e00[_0x7afa('0x18')][_0x7afa('0x1b')]||null:null,'include':_0xab4e00[_0x7afa('0x18')]?_0xab4e00[_0x7afa('0x18')][_0x7afa('0x1c')]?_['map'](_0xab4e00[_0x7afa('0x18')]['include'],function(_0x174cb0){return{'model':db[_0x174cb0['model']],'as':_0x174cb0['as'],'attributes':_0x174cb0[_0x7afa('0x1a')],'include':_0x174cb0[_0x7afa('0x1c')]?_['map'](_0x174cb0[_0x7afa('0x1c')],function(_0x261982){return{'model':db[_0x261982[_0x7afa('0x1d')]],'as':_0x261982['as'],'attributes':_0x261982[_0x7afa('0x1a')],'include':_0x261982[_0x7afa('0x1c')]?_[_0x7afa('0x1e')](_0x261982[_0x7afa('0x1c')],function(_0x1ce7a6){return{'model':db[_0x1ce7a6[_0x7afa('0x1d')]],'as':_0x1ce7a6['as'],'attributes':_0x1ce7a6['attributes']};}):[]};}):[]};}):[]:[]})[_0x7afa('0xd')](function(_0x161751){logger['info'](_0x7afa('0x15'),_0xab4e00);logger[_0x7afa('0x1f')]('GetCmHopper',_0xab4e00,JSON['stringify'](_0x161751));_0x59cf6b(_0x161751);})['catch'](function(_0x544e7a){logger[_0x7afa('0x10')](_0x7afa('0x15'),_0x544e7a[_0x7afa('0x12')],_0xab4e00);_0x25511(_0x47c20e[_0x7afa('0x10')](0x1f4,_0x544e7a[_0x7afa('0x12')]));});});};exports[_0x7afa('0x20')]=function(_0xe7fb49){var _0x52b4f8=this;return new Promise(function(_0x21aec4,_0x41ab55){return db['CmHopper'][_0x7afa('0x21')]({'raw':_0xe7fb49[_0x7afa('0x18')]?_0xe7fb49[_0x7afa('0x18')][_0x7afa('0x22')]===undefined?!![]:![]:!![],'where':_0xe7fb49[_0x7afa('0x18')]?_0xe7fb49[_0x7afa('0x18')]['where']||null:null,'attributes':_0xe7fb49[_0x7afa('0x18')]?_0xe7fb49[_0x7afa('0x18')][_0x7afa('0x1a')]||null:null,'include':_0xe7fb49[_0x7afa('0x18')]?_0xe7fb49[_0x7afa('0x18')]['include']?_['map'](_0xe7fb49[_0x7afa('0x18')]['include'],function(_0x21dc0e){return{'model':db[_0x21dc0e[_0x7afa('0x1d')]],'as':_0x21dc0e['as'],'attributes':_0x21dc0e['attributes'],'include':_0x21dc0e['include']?_[_0x7afa('0x1e')](_0x21dc0e['include'],function(_0x4ca4da){return{'model':db[_0x4ca4da[_0x7afa('0x1d')]],'as':_0x4ca4da['as'],'attributes':_0x4ca4da[_0x7afa('0x1a')],'include':_0x4ca4da[_0x7afa('0x1c')]?_[_0x7afa('0x1e')](_0x4ca4da[_0x7afa('0x1c')],function(_0x35bc5c){return{'model':db[_0x35bc5c[_0x7afa('0x1d')]],'as':_0x35bc5c['as'],'attributes':_0x35bc5c[_0x7afa('0x1a')]};}):[]};}):[]};}):[]:[]})[_0x7afa('0xd')](function(_0x20b283){logger[_0x7afa('0x23')](_0x7afa('0x20'),_0xe7fb49);logger[_0x7afa('0x1f')]('ShowCmHopper',_0xe7fb49,JSON[_0x7afa('0x24')](_0x20b283));_0x21aec4(_0x20b283);})[_0x7afa('0x14')](function(_0x24426){logger[_0x7afa('0x10')](_0x7afa('0x20'),_0x24426[_0x7afa('0x12')],_0xe7fb49);_0x41ab55(_0x52b4f8[_0x7afa('0x10')](0x1f4,_0x24426[_0x7afa('0x12')]));});});};exports['CreateCmHopper']=function(_0x1e3b8d){var _0x55abc4=this;return new Promise(function(_0x1623a7,_0x1b3c81){return db[_0x7afa('0x16')]['create'](_0x1e3b8d[_0x7afa('0x25')],{'raw':_0x1e3b8d[_0x7afa('0x18')]?_0x1e3b8d[_0x7afa('0x18')][_0x7afa('0x22')]===undefined?!![]:![]:!![]})['then'](function(_0x5def96){logger[_0x7afa('0x23')](_0x7afa('0x26'),_0x1e3b8d);logger['debug'](_0x7afa('0x26'),_0x1e3b8d,JSON[_0x7afa('0x24')](_0x5def96));_0x1623a7(_0x5def96);})[_0x7afa('0x14')](function(_0x3e4299){logger['error']('CreateCmHopper',_0x3e4299[_0x7afa('0x12')],_0x1e3b8d);_0x1b3c81(_0x55abc4['error'](0x1f4,_0x3e4299[_0x7afa('0x12')]));});});};exports[_0x7afa('0x27')]=function(_0x31550a){var _0x36e67f=this;return new Promise(function(_0xb2310b,_0x175e8e){return db[_0x7afa('0x16')]['update'](_0x31550a[_0x7afa('0x25')],{'raw':_0x31550a[_0x7afa('0x18')]?_0x31550a[_0x7afa('0x18')][_0x7afa('0x22')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x31550a['options']?_0x31550a[_0x7afa('0x18')][_0x7afa('0x19')]||null:null,'attributes':_0x31550a[_0x7afa('0x18')]?_0x31550a[_0x7afa('0x18')][_0x7afa('0x1a')]||null:null,'limit':_0x31550a[_0x7afa('0x18')]?_0x31550a[_0x7afa('0x18')][_0x7afa('0x1b')]||null:null})[_0x7afa('0xd')](function(_0x5b3402){logger['info'](_0x7afa('0x27'),_0x31550a);logger[_0x7afa('0x1f')](_0x7afa('0x27'),_0x31550a,JSON[_0x7afa('0x24')](_0x5b3402));_0xb2310b(_0x5b3402);})[_0x7afa('0x14')](function(_0x1c74d9){logger[_0x7afa('0x10')](_0x7afa('0x27'),_0x1c74d9[_0x7afa('0x12')],_0x31550a);_0x175e8e(_0x36e67f[_0x7afa('0x10')](0x1f4,_0x1c74d9[_0x7afa('0x12')]));});});};exports[_0x7afa('0x28')]=function(_0x33e083){var _0x4ccb1a=this;return new Promise(function(_0x5a3071,_0x4f0615){return db[_0x7afa('0x16')][_0x7afa('0x29')]({'where':_0x33e083[_0x7afa('0x18')]?_0x33e083[_0x7afa('0x18')]['where']||null:null})[_0x7afa('0xd')](function(_0x10fc55){logger[_0x7afa('0x23')]('DestroyCmHopper',_0x33e083);logger[_0x7afa('0x1f')](_0x7afa('0x28'),_0x33e083,JSON[_0x7afa('0x24')](_0x10fc55));_0x5a3071(_0x10fc55);})[_0x7afa('0x14')](function(_0x203d56){logger['error'](_0x7afa('0x28'),_0x203d56['message'],_0x33e083);_0x4f0615(_0x4ccb1a[_0x7afa('0x10')](0x1f4,_0x203d56['message']));});});};exports[_0x7afa('0x2a')]=function(_0x5af239){var _0x5cc288=this;return new Promise(function(_0x5c872a,_0x5b6ea7){return db[_0x7afa('0x2b')][_0x7afa('0x2c')]()[_0x7afa('0xd')](function(_0x2f9884){return db[_0x7afa('0x2d')][_0x7afa('0x2e')](function(_0x4ec524){return db[_0x7afa('0x16')]['findAll']({'where':_0x5af239[_0x7afa('0x18')]?_0x5af239[_0x7afa('0x18')][_0x7afa('0x19')]||null:null,'attributes':_0x5af239[_0x7afa('0x18')]?_0x5af239[_0x7afa('0x18')][_0x7afa('0x1a')]||null:null,'limit':_0x5af239[_0x7afa('0x18')]?_0x5af239[_0x7afa('0x18')][_0x7afa('0x1b')]||null:null,'order':_0x5af239[_0x7afa('0x18')]?_0x5af239['options']['order']||null:null,'transaction':_0x4ec524,'lock':_0x4ec524[_0x7afa('0x2f')][_0x7afa('0x30')],'include':[{'model':db[_0x7afa('0x2b')],'as':'Contact','attributes':_['keys'](_0x2f9884)},{'model':db[_0x7afa('0x31')],'as':_0x7afa('0x32'),'attributes':['id',_0x7afa('0x33'),_0x7afa('0x34')]}]})[_0x7afa('0xd')](function(_0x528091){var _0x305b4f=[];var _0x44fc2a=[];for(var _0x472b07=0x0;_0x472b07<_0x528091[_0x7afa('0x35')];_0x472b07+=0x1){if(!_0x44fc2a[_0x7afa('0x36')](_0x528091[_0x472b07][_0x7afa('0x37')])){_0x44fc2a[_0x7afa('0x38')](_0x528091[_0x472b07][_0x7afa('0x37')]);_0x305b4f[_0x7afa('0x38')](_0x528091[_0x472b07]['update'](_0x5af239[_0x7afa('0x25')],{'transaction':_0x4ec524}));}}return BPromise[_0x7afa('0x39')](_0x305b4f);});})[_0x7afa('0xd')](function(_0x23ab64){logger[_0x7afa('0x23')](_0x7afa('0x2a'),_0x5af239);logger['debug'](_0x7afa('0x2a'),_0x5af239,JSON[_0x7afa('0x24')](_0x23ab64));_0x5c872a(_0x23ab64);})[_0x7afa('0x14')](function(_0xc4648e){logger[_0x7afa('0x10')](_0x7afa('0x2a'),_0xc4648e[_0x7afa('0x12')],_0x5af239);_0x5b6ea7(_0x5cc288[_0x7afa('0x10')](0x1f4,_0xc4648e[_0x7afa('0x12')]));});});});};exports[_0x7afa('0x3a')]=function(_0x9f9621){var _0x13c8be=this;return new Promise(function(_0x23bff7,_0x302f55){return db[_0x7afa('0x2d')][_0x7afa('0x2e')](function(_0x1e49cd){return db[_0x7afa('0x3b')][_0x7afa('0x3c')](_0x9f9621['body'],{'raw':_0x9f9621['options']?_0x9f9621[_0x7afa('0x18')][_0x7afa('0x22')]===undefined?!![]:![]:!![],'transaction':_0x1e49cd})[_0x7afa('0xd')](function(){return db['CmHopper'][_0x7afa('0x29')]({'where':_0x9f9621[_0x7afa('0x18')]?_0x9f9621[_0x7afa('0x18')][_0x7afa('0x19')]||null:null,'transaction':_0x1e49cd});});})[_0x7afa('0xd')](function(_0x5e916b){logger[_0x7afa('0x23')]('MoveContactManagedDialer',_0x9f9621);logger[_0x7afa('0x1f')]('MoveContactManagedDialer',_0x9f9621,JSON[_0x7afa('0x24')](_0x5e916b));_0x23bff7(_0x5e916b);})[_0x7afa('0x14')](function(_0x159d43){logger[_0x7afa('0x10')]('MoveContactManagedDialer',_0x159d43[_0x7afa('0x12')],_0x9f9621);_0x302f55(_0x13c8be[_0x7afa('0x10')](0x1f4,_0x159d43[_0x7afa('0x12')]));});});};exports[_0x7afa('0x3d')]=function(_0x4dedc8){var _0x13694d=this;return new Promise(function(_0x3a8b9c,_0x2d09df){return db['CmHopper'][_0x7afa('0x17')]({'raw':_0x4dedc8[_0x7afa('0x18')]?_0x4dedc8[_0x7afa('0x18')][_0x7afa('0x22')]===undefined?!![]:![]:!![],'where':_0x4dedc8['options']?_0x4dedc8['options'][_0x7afa('0x19')]||null:null,'attributes':[[db[_0x7afa('0x2d')]['fn'](_0x7afa('0x3e'),db[_0x7afa('0x2d')]['fn']('IF',db[_0x7afa('0x2d')][_0x7afa('0x3f')](_0x7afa('0x40')+util[_0x7afa('0x41')](_0x7afa('0x42'),moment()[_0x7afa('0x41')](_0x7afa('0x43')))+_0x7afa('0x44')))),_0x7afa('0x45')]]})['then'](function(_0x4aacfb){logger[_0x7afa('0x23')](_0x7afa('0x3d'),_0x4dedc8);logger[_0x7afa('0x1f')](_0x7afa('0x3d'),_0x4dedc8,JSON[_0x7afa('0x24')](_0x4aacfb));_0x3a8b9c(_0x4aacfb);})['catch'](function(_0x490f40){logger[_0x7afa('0x10')]('CountReScheduled',_0x490f40[_0x7afa('0x12')],_0x4dedc8);_0x2d09df(_0x13694d[_0x7afa('0x10')](0x1f4,_0x490f40['message']));});});};exports[_0x7afa('0x46')]=function(_0x3fa35f){var _0xed458d=this;return new Promise(function(_0xe7c17f,_0x21c86d){return db['CmContact'][_0x7afa('0x2c')]()[_0x7afa('0xd')](function(_0x373927){return db[_0x7afa('0x2d')][_0x7afa('0x2e')](function(_0x2b0962){return db[_0x7afa('0x16')][_0x7afa('0x17')]({'where':_0x3fa35f['options']?_0x3fa35f[_0x7afa('0x18')][_0x7afa('0x19')]||null:null,'attributes':_0x3fa35f['options']?_0x3fa35f[_0x7afa('0x18')][_0x7afa('0x1a')]||null:null,'limit':0x1,'order':_0x3fa35f[_0x7afa('0x18')]?_0x3fa35f[_0x7afa('0x18')][_0x7afa('0x47')]||null:null,'group':db[_0x7afa('0x16')][_0x7afa('0x37')],'transaction':_0x2b0962,'lock':_0x2b0962[_0x7afa('0x2f')][_0x7afa('0x30')],'include':_0x3fa35f[_0x7afa('0x18')]?_0x3fa35f[_0x7afa('0x18')]['include']?_[_0x7afa('0x1e')](_0x3fa35f[_0x7afa('0x18')]['include'],function(_0x2f8155){return{'model':db[_0x2f8155['model']],'as':_0x2f8155['as'],'attributes':_0x2f8155[_0x7afa('0x1a')],'include':_0x2f8155[_0x7afa('0x1c')]?_['map'](_0x2f8155['include'],function(_0x13768f){return{'model':db[_0x13768f[_0x7afa('0x1d')]],'as':_0x13768f['as'],'attributes':_0x13768f[_0x7afa('0x1a')],'include':_0x13768f['include']?_[_0x7afa('0x1e')](_0x13768f[_0x7afa('0x1c')],function(_0x356e52){return{'model':db[_0x356e52[_0x7afa('0x1d')]],'as':_0x356e52['as'],'attributes':_0x356e52[_0x7afa('0x1a')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x7dab42){var _0x3e2918=[];for(var _0x5457e0=0x0;_0x5457e0<_0x7dab42[_0x7afa('0x35')];_0x5457e0+=0x1){_0x3e2918[_0x7afa('0x38')](_0x7dab42[_0x5457e0][_0x7afa('0x48')](_0x3fa35f['body'],{'transaction':_0x2b0962}));}return BPromise[_0x7afa('0x39')](_0x3e2918);});})[_0x7afa('0xd')](function(_0x2518fa){logger[_0x7afa('0x23')](_0x7afa('0x46'),_0x3fa35f);logger[_0x7afa('0x1f')](_0x7afa('0x46'),_0x3fa35f,JSON['stringify'](_0x2518fa));_0xe7c17f(_0x2518fa);})['catch'](function(_0x4955c5){logger[_0x7afa('0x10')](_0x7afa('0x46'),_0x4955c5[_0x7afa('0x12')],_0x3fa35f);_0x21c86d(_0xed458d['error'](0x1f4,_0x4955c5[_0x7afa('0x12')]));});});});};exports[_0x7afa('0x49')]=function(_0x3cdbc3){var _0x51b1f6=this;return new Promise(function(_0x1cfe5e,_0x551e19){db[_0x7afa('0x2b')][_0x7afa('0x2c')]()[_0x7afa('0xd')](function(_0x2b015f){return db[_0x7afa('0x16')][_0x7afa('0x17')]({'raw':_0x3cdbc3[_0x7afa('0x18')]?_0x3cdbc3[_0x7afa('0x18')][_0x7afa('0x22')]===undefined?!![]:![]:!![],'where':_0x3cdbc3[_0x7afa('0x18')]?_0x3cdbc3[_0x7afa('0x18')]['where']||null:null,'attributes':_0x3cdbc3[_0x7afa('0x18')]?_0x3cdbc3[_0x7afa('0x18')][_0x7afa('0x1a')]||null:null,'limit':_0x3cdbc3[_0x7afa('0x18')]?_0x3cdbc3[_0x7afa('0x18')][_0x7afa('0x1b')]||null:null,'include':_0x3cdbc3['options']?_0x3cdbc3[_0x7afa('0x18')][_0x7afa('0x1c')]?_[_0x7afa('0x1e')](_0x3cdbc3[_0x7afa('0x18')][_0x7afa('0x1c')],function(_0x20e8cb){return{'model':db[_0x20e8cb[_0x7afa('0x1d')]],'as':_0x20e8cb['as'],'attributes':_0x20e8cb['as']===_0x7afa('0x4a')?_[_0x7afa('0x4b')](_0x2b015f):_0x20e8cb[_0x7afa('0x1a')],'include':_0x20e8cb[_0x7afa('0x1c')]?_['map'](_0x20e8cb[_0x7afa('0x1c')],function(_0x2512dd){return{'model':db[_0x2512dd[_0x7afa('0x1d')]],'as':_0x2512dd['as'],'attributes':_0x2512dd[_0x7afa('0x1a')],'include':_0x2512dd[_0x7afa('0x1c')]?_[_0x7afa('0x1e')](_0x2512dd[_0x7afa('0x1c')],function(_0x47edfa){return{'model':db[_0x47edfa['model']],'as':_0x47edfa['as'],'attributes':_0x47edfa['attributes']};}):[]};}):[]};}):[]:[]})[_0x7afa('0xd')](function(_0x2c7f09){logger[_0x7afa('0x23')](_0x7afa('0x15'),_0x3cdbc3);logger['debug'](_0x7afa('0x15'),_0x3cdbc3,JSON['stringify'](_0x2c7f09));_0x1cfe5e(_0x2c7f09);})['catch'](function(_0x35255d){logger['error'](_0x7afa('0x15'),_0x35255d[_0x7afa('0x12')],_0x3cdbc3);_0x551e19(_0x51b1f6['error'](0x1f4,_0x35255d[_0x7afa('0x12')]));});});});};