Built motion from commit (unavailable).|2.5.21
[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 _0xe756=['find','where','catch','CreateCmHopper','create','UpdateCmHopper','body','DestroyCmHopper','destroy','GetContactDialer','CmContact','sequelize','transaction','findAll','UPDATE','Contact','keys','User','Agent','voicePause','length','includes','UserId','push','update','MoveContactManagedDialer','CmHopperFinal','CountReScheduled','COUNT','literal','`scheduledat`\x20>=\x20','\x22%s\x22','format','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','contactsRescheduled','GetContactRecallMe','describe','LOCK','all','GetCmHopperPreview','lodash','util','moment','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','request','then','info','CmHopper,\x20%s,\x20%s','CmHopper,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','GetCmHopper','CmHopper','options','raw','limit','include','map','model','attributes','debug','ShowCmHopper'];(function(_0x1abb3b,_0x3c8a3a){var _0x243219=function(_0x91b3cf){while(--_0x91b3cf){_0x1abb3b['push'](_0x1abb3b['shift']());}};_0x243219(++_0x3c8a3a);}(_0xe756,0x151));var _0x6e75=function(_0x483265,_0x1e74c9){_0x483265=_0x483265-0x0;var _0xf5043b=_0xe756[_0x483265];return _0xf5043b;};'use strict';var _=require(_0x6e75('0x0'));var util=require(_0x6e75('0x1'));var moment=require(_0x6e75('0x2'));var BPromise=require(_0x6e75('0x3'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x6e75('0x4'));var db=require(_0x6e75('0x5'))['db'];var utils=require(_0x6e75('0x6'));var logger=require(_0x6e75('0x7'))('rpc');var config=require(_0x6e75('0x8'));var jayson=require(_0x6e75('0x9'));var client=jayson[_0x6e75('0xa')]['http']({'port':0x232a});function respondWithRpcPromise(_0x2e6875,_0x3e0e34,_0x218062){return new BPromise(function(_0x595a8c,_0x7be3f2){return client[_0x6e75('0xb')](_0x2e6875,_0x218062)[_0x6e75('0xc')](function(_0x19da13){logger[_0x6e75('0xd')](_0x6e75('0xe'),_0x3e0e34,'request\x20sent');logger['debug'](_0x6e75('0xf'),_0x3e0e34,_0x6e75('0x10'),JSON[_0x6e75('0x11')](_0x19da13));if(_0x19da13[_0x6e75('0x12')]){if(_0x19da13[_0x6e75('0x12')][_0x6e75('0x13')]===0x1f4){logger['error'](_0x6e75('0xe'),_0x3e0e34,_0x19da13[_0x6e75('0x12')][_0x6e75('0x14')]);return _0x7be3f2(_0x19da13[_0x6e75('0x12')][_0x6e75('0x14')]);}logger[_0x6e75('0x12')](_0x6e75('0xe'),_0x3e0e34,_0x19da13[_0x6e75('0x12')][_0x6e75('0x14')]);return _0x595a8c(_0x19da13[_0x6e75('0x12')][_0x6e75('0x14')]);}else{logger[_0x6e75('0xd')](_0x6e75('0xe'),_0x3e0e34,_0x6e75('0x10'));_0x595a8c(_0x19da13[_0x6e75('0x15')][_0x6e75('0x14')]);}})['catch'](function(_0x296625){logger[_0x6e75('0x12')](_0x6e75('0xe'),_0x3e0e34,_0x296625);_0x7be3f2(_0x296625);});});}exports[_0x6e75('0x16')]=function(_0x45d7e6){var _0x5cf462=this;return new Promise(function(_0x476d83,_0x305e00){return db[_0x6e75('0x17')]['findAll']({'raw':_0x45d7e6['options']?_0x45d7e6[_0x6e75('0x18')][_0x6e75('0x19')]===undefined?!![]:![]:!![],'where':_0x45d7e6[_0x6e75('0x18')]?_0x45d7e6[_0x6e75('0x18')]['where']||null:null,'attributes':_0x45d7e6['options']?_0x45d7e6[_0x6e75('0x18')]['attributes']||null:null,'limit':_0x45d7e6[_0x6e75('0x18')]?_0x45d7e6[_0x6e75('0x18')][_0x6e75('0x1a')]||null:null,'include':_0x45d7e6[_0x6e75('0x18')]?_0x45d7e6['options'][_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x45d7e6['options']['include'],function(_0x545164){return{'model':db[_0x545164[_0x6e75('0x1d')]],'as':_0x545164['as'],'attributes':_0x545164['attributes'],'include':_0x545164[_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x545164[_0x6e75('0x1b')],function(_0x4e3af3){return{'model':db[_0x4e3af3[_0x6e75('0x1d')]],'as':_0x4e3af3['as'],'attributes':_0x4e3af3[_0x6e75('0x1e')],'include':_0x4e3af3[_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x4e3af3['include'],function(_0x448fce){return{'model':db[_0x448fce[_0x6e75('0x1d')]],'as':_0x448fce['as'],'attributes':_0x448fce[_0x6e75('0x1e')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x31809f){logger[_0x6e75('0xd')](_0x6e75('0x16'),_0x45d7e6);logger[_0x6e75('0x1f')](_0x6e75('0x16'),_0x45d7e6,JSON[_0x6e75('0x11')](_0x31809f));_0x476d83(_0x31809f);})['catch'](function(_0x5eb541){logger[_0x6e75('0x12')](_0x6e75('0x16'),_0x5eb541['message'],_0x45d7e6);_0x305e00(_0x5cf462['error'](0x1f4,_0x5eb541[_0x6e75('0x14')]));});});};exports[_0x6e75('0x20')]=function(_0x173f9c){var _0x1f562d=this;return new Promise(function(_0x5d1ff5,_0x252838){return db['CmHopper'][_0x6e75('0x21')]({'raw':_0x173f9c['options']?_0x173f9c['options'][_0x6e75('0x19')]===undefined?!![]:![]:!![],'where':_0x173f9c[_0x6e75('0x18')]?_0x173f9c[_0x6e75('0x18')][_0x6e75('0x22')]||null:null,'attributes':_0x173f9c[_0x6e75('0x18')]?_0x173f9c[_0x6e75('0x18')]['attributes']||null:null,'include':_0x173f9c[_0x6e75('0x18')]?_0x173f9c['options'][_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x173f9c[_0x6e75('0x18')][_0x6e75('0x1b')],function(_0x3bfc47){return{'model':db[_0x3bfc47[_0x6e75('0x1d')]],'as':_0x3bfc47['as'],'attributes':_0x3bfc47['attributes'],'include':_0x3bfc47[_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x3bfc47[_0x6e75('0x1b')],function(_0x259c60){return{'model':db[_0x259c60[_0x6e75('0x1d')]],'as':_0x259c60['as'],'attributes':_0x259c60[_0x6e75('0x1e')],'include':_0x259c60[_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x259c60['include'],function(_0x279cec){return{'model':db[_0x279cec[_0x6e75('0x1d')]],'as':_0x279cec['as'],'attributes':_0x279cec[_0x6e75('0x1e')]};}):[]};}):[]};}):[]:[]})[_0x6e75('0xc')](function(_0xd51f40){logger[_0x6e75('0xd')](_0x6e75('0x20'),_0x173f9c);logger[_0x6e75('0x1f')](_0x6e75('0x20'),_0x173f9c,JSON[_0x6e75('0x11')](_0xd51f40));_0x5d1ff5(_0xd51f40);})[_0x6e75('0x23')](function(_0x60dac5){logger[_0x6e75('0x12')](_0x6e75('0x20'),_0x60dac5['message'],_0x173f9c);_0x252838(_0x1f562d[_0x6e75('0x12')](0x1f4,_0x60dac5[_0x6e75('0x14')]));});});};exports[_0x6e75('0x24')]=function(_0x38f037){var _0x300596=this;return new Promise(function(_0xb2b7ae,_0x541ba5){return db[_0x6e75('0x17')][_0x6e75('0x25')](_0x38f037['body'],{'raw':_0x38f037[_0x6e75('0x18')]?_0x38f037['options']['raw']===undefined?!![]:![]:!![]})[_0x6e75('0xc')](function(_0x4a4187){logger['info'](_0x6e75('0x24'),_0x38f037);logger['debug'](_0x6e75('0x24'),_0x38f037,JSON[_0x6e75('0x11')](_0x4a4187));_0xb2b7ae(_0x4a4187);})[_0x6e75('0x23')](function(_0x1259aa){logger[_0x6e75('0x12')](_0x6e75('0x24'),_0x1259aa['message'],_0x38f037);_0x541ba5(_0x300596[_0x6e75('0x12')](0x1f4,_0x1259aa[_0x6e75('0x14')]));});});};exports[_0x6e75('0x26')]=function(_0x1c31a3){var _0x391a4c=this;return new Promise(function(_0x426870,_0x22f852){return db[_0x6e75('0x17')]['update'](_0x1c31a3[_0x6e75('0x27')],{'raw':_0x1c31a3[_0x6e75('0x18')]?_0x1c31a3[_0x6e75('0x18')][_0x6e75('0x19')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x1c31a3[_0x6e75('0x18')]?_0x1c31a3[_0x6e75('0x18')][_0x6e75('0x22')]||null:null,'attributes':_0x1c31a3['options']?_0x1c31a3[_0x6e75('0x18')][_0x6e75('0x1e')]||null:null,'limit':_0x1c31a3[_0x6e75('0x18')]?_0x1c31a3['options']['limit']||null:null})[_0x6e75('0xc')](function(_0x33fc6d){logger[_0x6e75('0xd')]('UpdateCmHopper',_0x1c31a3);logger[_0x6e75('0x1f')](_0x6e75('0x26'),_0x1c31a3,JSON[_0x6e75('0x11')](_0x33fc6d));_0x426870(_0x33fc6d);})[_0x6e75('0x23')](function(_0x2e3a70){logger[_0x6e75('0x12')](_0x6e75('0x26'),_0x2e3a70[_0x6e75('0x14')],_0x1c31a3);_0x22f852(_0x391a4c['error'](0x1f4,_0x2e3a70[_0x6e75('0x14')]));});});};exports[_0x6e75('0x28')]=function(_0x8ea314){var _0xe4a5f5=this;return new Promise(function(_0x1c36e3,_0x41639a){return db['CmHopper'][_0x6e75('0x29')]({'where':_0x8ea314[_0x6e75('0x18')]?_0x8ea314[_0x6e75('0x18')][_0x6e75('0x22')]||null:null})['then'](function(_0x2e7596){logger[_0x6e75('0xd')](_0x6e75('0x28'),_0x8ea314);logger['debug']('DestroyCmHopper',_0x8ea314,JSON['stringify'](_0x2e7596));_0x1c36e3(_0x2e7596);})[_0x6e75('0x23')](function(_0x39a83e){logger[_0x6e75('0x12')](_0x6e75('0x28'),_0x39a83e['message'],_0x8ea314);_0x41639a(_0xe4a5f5['error'](0x1f4,_0x39a83e['message']));});});};exports[_0x6e75('0x2a')]=function(_0x48f75f){var _0x32412b=this;return new Promise(function(_0x1dde5e,_0x55e355){return db[_0x6e75('0x2b')]['describe']()['then'](function(_0x273328){return db[_0x6e75('0x2c')][_0x6e75('0x2d')](function(_0x1bd54c){return db[_0x6e75('0x17')][_0x6e75('0x2e')]({'where':_0x48f75f[_0x6e75('0x18')]?_0x48f75f[_0x6e75('0x18')]['where']||null:null,'attributes':_0x48f75f['options']?_0x48f75f[_0x6e75('0x18')]['attributes']||null:null,'limit':_0x48f75f['options']?_0x48f75f['options'][_0x6e75('0x1a')]||null:null,'order':_0x48f75f[_0x6e75('0x18')]?_0x48f75f[_0x6e75('0x18')]['order']||null:null,'transaction':_0x1bd54c,'lock':_0x1bd54c['LOCK'][_0x6e75('0x2f')],'include':[{'model':db[_0x6e75('0x2b')],'as':_0x6e75('0x30'),'attributes':_[_0x6e75('0x31')](_0x273328)},{'model':db[_0x6e75('0x32')],'as':_0x6e75('0x33'),'attributes':['id','name',_0x6e75('0x34')]}]})[_0x6e75('0xc')](function(_0xa3180a){var _0x3d5fbe=[];var _0x431f63=[];for(var _0x5ae4fd=0x0;_0x5ae4fd<_0xa3180a[_0x6e75('0x35')];_0x5ae4fd+=0x1){if(!_0x431f63[_0x6e75('0x36')](_0xa3180a[_0x5ae4fd][_0x6e75('0x37')])){_0x431f63[_0x6e75('0x38')](_0xa3180a[_0x5ae4fd][_0x6e75('0x37')]);_0x3d5fbe[_0x6e75('0x38')](_0xa3180a[_0x5ae4fd][_0x6e75('0x39')](_0x48f75f[_0x6e75('0x27')],{'transaction':_0x1bd54c}));}}return BPromise['all'](_0x3d5fbe);});})[_0x6e75('0xc')](function(_0x217731){logger[_0x6e75('0xd')](_0x6e75('0x2a'),_0x48f75f);logger[_0x6e75('0x1f')](_0x6e75('0x2a'),_0x48f75f,JSON['stringify'](_0x217731));_0x1dde5e(_0x217731);})['catch'](function(_0x3e802b){logger[_0x6e75('0x12')]('GetContactDialer',_0x3e802b[_0x6e75('0x14')],_0x48f75f);_0x55e355(_0x32412b[_0x6e75('0x12')](0x1f4,_0x3e802b[_0x6e75('0x14')]));});});});};exports[_0x6e75('0x3a')]=function(_0x5dff71){var _0x283bc6=this;return new Promise(function(_0x2b16d4,_0x3bf034){return db[_0x6e75('0x2c')][_0x6e75('0x2d')](function(_0x4e1df7){return db[_0x6e75('0x3b')][_0x6e75('0x25')](_0x5dff71[_0x6e75('0x27')],{'raw':_0x5dff71[_0x6e75('0x18')]?_0x5dff71[_0x6e75('0x18')][_0x6e75('0x19')]===undefined?!![]:![]:!![],'transaction':_0x4e1df7})[_0x6e75('0xc')](function(){return db[_0x6e75('0x17')]['destroy']({'where':_0x5dff71[_0x6e75('0x18')]?_0x5dff71[_0x6e75('0x18')]['where']||null:null,'transaction':_0x4e1df7});});})[_0x6e75('0xc')](function(_0x4cbfde){logger[_0x6e75('0xd')](_0x6e75('0x3a'),_0x5dff71);logger[_0x6e75('0x1f')](_0x6e75('0x3a'),_0x5dff71,JSON[_0x6e75('0x11')](_0x4cbfde));_0x2b16d4(_0x4cbfde);})[_0x6e75('0x23')](function(_0x1b0837){logger[_0x6e75('0x12')]('MoveContactManagedDialer',_0x1b0837[_0x6e75('0x14')],_0x5dff71);_0x3bf034(_0x283bc6[_0x6e75('0x12')](0x1f4,_0x1b0837[_0x6e75('0x14')]));});});};exports[_0x6e75('0x3c')]=function(_0x44a572){var _0xeec4fd=this;return new Promise(function(_0x31feb8,_0x3481f9){return db[_0x6e75('0x17')][_0x6e75('0x2e')]({'raw':_0x44a572[_0x6e75('0x18')]?_0x44a572[_0x6e75('0x18')][_0x6e75('0x19')]===undefined?!![]:![]:!![],'where':_0x44a572[_0x6e75('0x18')]?_0x44a572['options']['where']||null:null,'attributes':[[db['sequelize']['fn'](_0x6e75('0x3d'),db[_0x6e75('0x2c')]['fn']('IF',db[_0x6e75('0x2c')][_0x6e75('0x3e')](_0x6e75('0x3f')+util['format'](_0x6e75('0x40'),moment()[_0x6e75('0x41')](_0x6e75('0x42')))+_0x6e75('0x43')))),_0x6e75('0x44')]]})['then'](function(_0x42278d){logger[_0x6e75('0xd')](_0x6e75('0x3c'),_0x44a572);logger[_0x6e75('0x1f')](_0x6e75('0x3c'),_0x44a572,JSON['stringify'](_0x42278d));_0x31feb8(_0x42278d);})['catch'](function(_0x463377){logger[_0x6e75('0x12')](_0x6e75('0x3c'),_0x463377['message'],_0x44a572);_0x3481f9(_0xeec4fd[_0x6e75('0x12')](0x1f4,_0x463377['message']));});});};exports[_0x6e75('0x45')]=function(_0x54c476){var _0x251110=this;return new Promise(function(_0x28e08d,_0x1250fe){return db[_0x6e75('0x2b')][_0x6e75('0x46')]()[_0x6e75('0xc')](function(_0x4aa3ab){return db[_0x6e75('0x2c')]['transaction'](function(_0x38b13e){return db['CmHopper'][_0x6e75('0x2e')]({'where':_0x54c476[_0x6e75('0x18')]?_0x54c476[_0x6e75('0x18')][_0x6e75('0x22')]||null:null,'attributes':_0x54c476[_0x6e75('0x18')]?_0x54c476[_0x6e75('0x18')][_0x6e75('0x1e')]||null:null,'limit':0x1,'order':_0x54c476[_0x6e75('0x18')]?_0x54c476[_0x6e75('0x18')]['order']||null:null,'group':db[_0x6e75('0x17')]['UserId'],'transaction':_0x38b13e,'lock':_0x38b13e[_0x6e75('0x47')]['UPDATE'],'include':_0x54c476[_0x6e75('0x18')]?_0x54c476[_0x6e75('0x18')][_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x54c476['options'][_0x6e75('0x1b')],function(_0x57f73e){return{'model':db[_0x57f73e[_0x6e75('0x1d')]],'as':_0x57f73e['as'],'attributes':_0x57f73e[_0x6e75('0x1e')],'include':_0x57f73e[_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x57f73e[_0x6e75('0x1b')],function(_0x448ab3){return{'model':db[_0x448ab3[_0x6e75('0x1d')]],'as':_0x448ab3['as'],'attributes':_0x448ab3['attributes'],'include':_0x448ab3[_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x448ab3[_0x6e75('0x1b')],function(_0x2bf725){return{'model':db[_0x2bf725[_0x6e75('0x1d')]],'as':_0x2bf725['as'],'attributes':_0x2bf725[_0x6e75('0x1e')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x6a35bd){var _0x53194a=[];for(var _0x3c684c=0x0;_0x3c684c<_0x6a35bd[_0x6e75('0x35')];_0x3c684c+=0x1){_0x53194a[_0x6e75('0x38')](_0x6a35bd[_0x3c684c][_0x6e75('0x39')](_0x54c476[_0x6e75('0x27')],{'transaction':_0x38b13e}));}return BPromise[_0x6e75('0x48')](_0x53194a);});})['then'](function(_0x3a6370){logger[_0x6e75('0xd')](_0x6e75('0x45'),_0x54c476);logger['debug'](_0x6e75('0x45'),_0x54c476,JSON[_0x6e75('0x11')](_0x3a6370));_0x28e08d(_0x3a6370);})[_0x6e75('0x23')](function(_0x49ccc1){logger[_0x6e75('0x12')]('GetContactRecallMe',_0x49ccc1[_0x6e75('0x14')],_0x54c476);_0x1250fe(_0x251110[_0x6e75('0x12')](0x1f4,_0x49ccc1[_0x6e75('0x14')]));});});});};exports[_0x6e75('0x49')]=function(_0x14386d){var _0x30c7bd=this;return new Promise(function(_0x484994,_0x47fe27){db[_0x6e75('0x2b')][_0x6e75('0x46')]()['then'](function(_0xfed14e){return db[_0x6e75('0x17')][_0x6e75('0x2e')]({'raw':_0x14386d[_0x6e75('0x18')]?_0x14386d['options'][_0x6e75('0x19')]===undefined?!![]:![]:!![],'where':_0x14386d[_0x6e75('0x18')]?_0x14386d[_0x6e75('0x18')]['where']||null:null,'attributes':_0x14386d[_0x6e75('0x18')]?_0x14386d[_0x6e75('0x18')]['attributes']||null:null,'limit':_0x14386d['options']?_0x14386d[_0x6e75('0x18')][_0x6e75('0x1a')]||null:null,'include':_0x14386d[_0x6e75('0x18')]?_0x14386d['options'][_0x6e75('0x1b')]?_[_0x6e75('0x1c')](_0x14386d[_0x6e75('0x18')][_0x6e75('0x1b')],function(_0xfe8d17){return{'model':db[_0xfe8d17[_0x6e75('0x1d')]],'as':_0xfe8d17['as'],'attributes':_0xfe8d17['as']===_0x6e75('0x30')?_[_0x6e75('0x31')](_0xfed14e):_0xfe8d17[_0x6e75('0x1e')],'include':_0xfe8d17[_0x6e75('0x1b')]?_['map'](_0xfe8d17[_0x6e75('0x1b')],function(_0x4059a9){return{'model':db[_0x4059a9[_0x6e75('0x1d')]],'as':_0x4059a9['as'],'attributes':_0x4059a9['attributes'],'include':_0x4059a9['include']?_[_0x6e75('0x1c')](_0x4059a9[_0x6e75('0x1b')],function(_0x54284c){return{'model':db[_0x54284c[_0x6e75('0x1d')]],'as':_0x54284c['as'],'attributes':_0x54284c[_0x6e75('0x1e')]};}):[]};}):[]};}):[]:[]})[_0x6e75('0xc')](function(_0x34049b){logger['info'](_0x6e75('0x16'),_0x14386d);logger[_0x6e75('0x1f')](_0x6e75('0x16'),_0x14386d,JSON['stringify'](_0x34049b));_0x484994(_0x34049b);})[_0x6e75('0x23')](function(_0x57a040){logger[_0x6e75('0x12')](_0x6e75('0x16'),_0x57a040[_0x6e75('0x14')],_0x14386d);_0x47fe27(_0x30c7bd[_0x6e75('0x12')](0x1f4,_0x57a040[_0x6e75('0x14')]));});});});};