Built motion from commit (unavailable).|2.5.9
[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 _0x2770=['../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','client','http','request','then','info','CmHopper,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','GetCmHopper','CmHopper','findAll','options','raw','where','attributes','include','map','model','ShowCmHopper','find','create','body','CreateCmHopper','limit','UpdateCmHopper','DestroyCmHopper','destroy','CmContact','describe','sequelize','transaction','order','LOCK','UPDATE','Contact','keys','User','name','voicePause','length','includes','UserId','push','all','GetContactDialer','MoveContactManagedDialer','COUNT','literal','`scheduledat`\x20>=\x20','format','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','contactsRescheduled','CountReScheduled','GetContactRecallMe','GetCmHopperPreview','lodash','util','moment','bluebird','randomstring','ioredis'];(function(_0x486147,_0x3e0a65){var _0x215b31=function(_0x2e85b3){while(--_0x2e85b3){_0x486147['push'](_0x486147['shift']());}};_0x215b31(++_0x3e0a65);}(_0x2770,0x1b0));var _0x0277=function(_0x230e39,_0x5341){_0x230e39=_0x230e39-0x0;var _0xa804e=_0x2770[_0x230e39];return _0xa804e;};'use strict';var _=require(_0x0277('0x0'));var util=require(_0x0277('0x1'));var moment=require(_0x0277('0x2'));var BPromise=require(_0x0277('0x3'));var rs=require(_0x0277('0x4'));var fs=require('fs');var Redis=require(_0x0277('0x5'));var db=require(_0x0277('0x6'))['db'];var utils=require(_0x0277('0x7'));var logger=require(_0x0277('0x8'))(_0x0277('0x9'));var config=require(_0x0277('0xa'));var jayson=require('jayson/promise');var client=jayson[_0x0277('0xb')][_0x0277('0xc')]({'port':0x232a});function respondWithRpcPromise(_0x4a9ebf,_0x191ca4,_0x1a1669){return new BPromise(function(_0x11dd51,_0x5454da){return client[_0x0277('0xd')](_0x4a9ebf,_0x1a1669)[_0x0277('0xe')](function(_0x4b8f8e){logger[_0x0277('0xf')](_0x0277('0x10'),_0x191ca4,_0x0277('0x11'));logger[_0x0277('0x12')]('CmHopper,\x20%s,\x20%s,\x20%s',_0x191ca4,_0x0277('0x11'),JSON[_0x0277('0x13')](_0x4b8f8e));if(_0x4b8f8e[_0x0277('0x14')]){if(_0x4b8f8e[_0x0277('0x14')][_0x0277('0x15')]===0x1f4){logger['error'](_0x0277('0x10'),_0x191ca4,_0x4b8f8e[_0x0277('0x14')][_0x0277('0x16')]);return _0x5454da(_0x4b8f8e[_0x0277('0x14')][_0x0277('0x16')]);}logger[_0x0277('0x14')](_0x0277('0x10'),_0x191ca4,_0x4b8f8e[_0x0277('0x14')]['message']);return _0x11dd51(_0x4b8f8e[_0x0277('0x14')][_0x0277('0x16')]);}else{logger[_0x0277('0xf')](_0x0277('0x10'),_0x191ca4,'request\x20sent');_0x11dd51(_0x4b8f8e[_0x0277('0x17')][_0x0277('0x16')]);}})[_0x0277('0x18')](function(_0x5399f3){logger[_0x0277('0x14')](_0x0277('0x10'),_0x191ca4,_0x5399f3);_0x5454da(_0x5399f3);});});}exports[_0x0277('0x19')]=function(_0x5d0723){var _0x587775=this;return new Promise(function(_0x3ef167,_0x8628c8){return db[_0x0277('0x1a')][_0x0277('0x1b')]({'raw':_0x5d0723[_0x0277('0x1c')]?_0x5d0723[_0x0277('0x1c')][_0x0277('0x1d')]===undefined?!![]:![]:!![],'where':_0x5d0723[_0x0277('0x1c')]?_0x5d0723[_0x0277('0x1c')][_0x0277('0x1e')]||null:null,'attributes':_0x5d0723['options']?_0x5d0723[_0x0277('0x1c')][_0x0277('0x1f')]||null:null,'limit':_0x5d0723['options']?_0x5d0723[_0x0277('0x1c')]['limit']||null:null,'include':_0x5d0723[_0x0277('0x1c')]?_0x5d0723[_0x0277('0x1c')][_0x0277('0x20')]?_[_0x0277('0x21')](_0x5d0723['options'][_0x0277('0x20')],function(_0x5f5044){return{'model':db[_0x5f5044[_0x0277('0x22')]],'as':_0x5f5044['as'],'attributes':_0x5f5044[_0x0277('0x1f')],'include':_0x5f5044[_0x0277('0x20')]?_[_0x0277('0x21')](_0x5f5044['include'],function(_0x24db5){return{'model':db[_0x24db5['model']],'as':_0x24db5['as'],'attributes':_0x24db5[_0x0277('0x1f')],'include':_0x24db5['include']?_[_0x0277('0x21')](_0x24db5[_0x0277('0x20')],function(_0x17aa20){return{'model':db[_0x17aa20[_0x0277('0x22')]],'as':_0x17aa20['as'],'attributes':_0x17aa20['attributes']};}):[]};}):[]};}):[]:[]})[_0x0277('0xe')](function(_0x5d7ed4){logger[_0x0277('0xf')](_0x0277('0x19'),_0x5d0723);logger[_0x0277('0x12')](_0x0277('0x19'),_0x5d0723,JSON[_0x0277('0x13')](_0x5d7ed4));_0x3ef167(_0x5d7ed4);})[_0x0277('0x18')](function(_0x515e49){logger['error'](_0x0277('0x19'),_0x515e49[_0x0277('0x16')],_0x5d0723);_0x8628c8(_0x587775['error'](0x1f4,_0x515e49[_0x0277('0x16')]));});});};exports[_0x0277('0x23')]=function(_0x46cd63){var _0x8a6049=this;return new Promise(function(_0x263c7f,_0xc7f10a){return db[_0x0277('0x1a')][_0x0277('0x24')]({'raw':_0x46cd63[_0x0277('0x1c')]?_0x46cd63[_0x0277('0x1c')][_0x0277('0x1d')]===undefined?!![]:![]:!![],'where':_0x46cd63['options']?_0x46cd63['options'][_0x0277('0x1e')]||null:null,'attributes':_0x46cd63[_0x0277('0x1c')]?_0x46cd63[_0x0277('0x1c')]['attributes']||null:null,'include':_0x46cd63[_0x0277('0x1c')]?_0x46cd63[_0x0277('0x1c')][_0x0277('0x20')]?_[_0x0277('0x21')](_0x46cd63['options']['include'],function(_0x79e15e){return{'model':db[_0x79e15e[_0x0277('0x22')]],'as':_0x79e15e['as'],'attributes':_0x79e15e['attributes'],'include':_0x79e15e['include']?_[_0x0277('0x21')](_0x79e15e[_0x0277('0x20')],function(_0x124d11){return{'model':db[_0x124d11[_0x0277('0x22')]],'as':_0x124d11['as'],'attributes':_0x124d11[_0x0277('0x1f')],'include':_0x124d11[_0x0277('0x20')]?_[_0x0277('0x21')](_0x124d11[_0x0277('0x20')],function(_0xc8e7bd){return{'model':db[_0xc8e7bd[_0x0277('0x22')]],'as':_0xc8e7bd['as'],'attributes':_0xc8e7bd['attributes']};}):[]};}):[]};}):[]:[]})[_0x0277('0xe')](function(_0xef8718){logger[_0x0277('0xf')](_0x0277('0x23'),_0x46cd63);logger[_0x0277('0x12')](_0x0277('0x23'),_0x46cd63,JSON[_0x0277('0x13')](_0xef8718));_0x263c7f(_0xef8718);})[_0x0277('0x18')](function(_0x445fce){logger[_0x0277('0x14')](_0x0277('0x23'),_0x445fce[_0x0277('0x16')],_0x46cd63);_0xc7f10a(_0x8a6049[_0x0277('0x14')](0x1f4,_0x445fce['message']));});});};exports['CreateCmHopper']=function(_0x145686){var _0xd3874a=this;return new Promise(function(_0x1f20dd,_0x55d623){return db[_0x0277('0x1a')][_0x0277('0x25')](_0x145686[_0x0277('0x26')],{'raw':_0x145686[_0x0277('0x1c')]?_0x145686['options']['raw']===undefined?!![]:![]:!![]})['then'](function(_0x257df8){logger['info'](_0x0277('0x27'),_0x145686);logger[_0x0277('0x12')](_0x0277('0x27'),_0x145686,JSON[_0x0277('0x13')](_0x257df8));_0x1f20dd(_0x257df8);})[_0x0277('0x18')](function(_0x1c3588){logger['error'](_0x0277('0x27'),_0x1c3588[_0x0277('0x16')],_0x145686);_0x55d623(_0xd3874a[_0x0277('0x14')](0x1f4,_0x1c3588[_0x0277('0x16')]));});});};exports['UpdateCmHopper']=function(_0x54668a){var _0x2d2986=this;return new Promise(function(_0x35bf99,_0x360f89){return db['CmHopper']['update'](_0x54668a['body'],{'raw':_0x54668a['options']?_0x54668a[_0x0277('0x1c')][_0x0277('0x1d')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x54668a[_0x0277('0x1c')]?_0x54668a[_0x0277('0x1c')][_0x0277('0x1e')]||null:null,'attributes':_0x54668a[_0x0277('0x1c')]?_0x54668a[_0x0277('0x1c')][_0x0277('0x1f')]||null:null,'limit':_0x54668a[_0x0277('0x1c')]?_0x54668a[_0x0277('0x1c')][_0x0277('0x28')]||null:null})[_0x0277('0xe')](function(_0x59cbed){logger['info'](_0x0277('0x29'),_0x54668a);logger[_0x0277('0x12')](_0x0277('0x29'),_0x54668a,JSON['stringify'](_0x59cbed));_0x35bf99(_0x59cbed);})['catch'](function(_0x35ffe3){logger[_0x0277('0x14')](_0x0277('0x29'),_0x35ffe3[_0x0277('0x16')],_0x54668a);_0x360f89(_0x2d2986['error'](0x1f4,_0x35ffe3[_0x0277('0x16')]));});});};exports[_0x0277('0x2a')]=function(_0x340d6e){var _0x49c9c4=this;return new Promise(function(_0x6222e3,_0x951ce7){return db['CmHopper'][_0x0277('0x2b')]({'where':_0x340d6e[_0x0277('0x1c')]?_0x340d6e[_0x0277('0x1c')]['where']||null:null})[_0x0277('0xe')](function(_0x337385){logger['info']('DestroyCmHopper',_0x340d6e);logger[_0x0277('0x12')](_0x0277('0x2a'),_0x340d6e,JSON[_0x0277('0x13')](_0x337385));_0x6222e3(_0x337385);})['catch'](function(_0x2a1377){logger[_0x0277('0x14')]('DestroyCmHopper',_0x2a1377[_0x0277('0x16')],_0x340d6e);_0x951ce7(_0x49c9c4[_0x0277('0x14')](0x1f4,_0x2a1377[_0x0277('0x16')]));});});};exports['GetContactDialer']=function(_0x518796){var _0x5b2dde=this;return new Promise(function(_0x1b116f,_0x120dfc){return db[_0x0277('0x2c')][_0x0277('0x2d')]()[_0x0277('0xe')](function(_0x2b56d1){return db[_0x0277('0x2e')][_0x0277('0x2f')](function(_0x4e290e){return db['CmHopper'][_0x0277('0x1b')]({'where':_0x518796[_0x0277('0x1c')]?_0x518796[_0x0277('0x1c')][_0x0277('0x1e')]||null:null,'attributes':_0x518796[_0x0277('0x1c')]?_0x518796[_0x0277('0x1c')][_0x0277('0x1f')]||null:null,'limit':_0x518796[_0x0277('0x1c')]?_0x518796[_0x0277('0x1c')][_0x0277('0x28')]||null:null,'order':_0x518796[_0x0277('0x1c')]?_0x518796[_0x0277('0x1c')][_0x0277('0x30')]||null:null,'transaction':_0x4e290e,'lock':_0x4e290e[_0x0277('0x31')][_0x0277('0x32')],'include':[{'model':db['CmContact'],'as':_0x0277('0x33'),'attributes':_[_0x0277('0x34')](_0x2b56d1)},{'model':db[_0x0277('0x35')],'as':'Agent','attributes':['id',_0x0277('0x36'),_0x0277('0x37')]}]})['then'](function(_0x5b4945){var _0x373350=[];var _0x42244b=[];for(var _0x2a36a9=0x0;_0x2a36a9<_0x5b4945[_0x0277('0x38')];_0x2a36a9+=0x1){if(!_0x42244b[_0x0277('0x39')](_0x5b4945[_0x2a36a9][_0x0277('0x3a')])){_0x42244b['push'](_0x5b4945[_0x2a36a9][_0x0277('0x3a')]);_0x373350[_0x0277('0x3b')](_0x5b4945[_0x2a36a9]['update'](_0x518796[_0x0277('0x26')],{'transaction':_0x4e290e}));}}return BPromise[_0x0277('0x3c')](_0x373350);});})[_0x0277('0xe')](function(_0x25be33){logger[_0x0277('0xf')](_0x0277('0x3d'),_0x518796);logger['debug']('GetContactDialer',_0x518796,JSON['stringify'](_0x25be33));_0x1b116f(_0x25be33);})[_0x0277('0x18')](function(_0x186f0d){logger['error'](_0x0277('0x3d'),_0x186f0d['message'],_0x518796);_0x120dfc(_0x5b2dde[_0x0277('0x14')](0x1f4,_0x186f0d['message']));});});});};exports['MoveContactManagedDialer']=function(_0x4adf66){var _0x5bf3d1=this;return new Promise(function(_0x3e907f,_0x186df4){return db[_0x0277('0x2e')][_0x0277('0x2f')](function(_0x1b8cc2){return db['CmHopperFinal'][_0x0277('0x25')](_0x4adf66[_0x0277('0x26')],{'raw':_0x4adf66[_0x0277('0x1c')]?_0x4adf66['options'][_0x0277('0x1d')]===undefined?!![]:![]:!![],'transaction':_0x1b8cc2})[_0x0277('0xe')](function(){return db['CmHopper'][_0x0277('0x2b')]({'where':_0x4adf66[_0x0277('0x1c')]?_0x4adf66[_0x0277('0x1c')][_0x0277('0x1e')]||null:null,'transaction':_0x1b8cc2});});})['then'](function(_0x3e5ca4){logger[_0x0277('0xf')](_0x0277('0x3e'),_0x4adf66);logger['debug']('MoveContactManagedDialer',_0x4adf66,JSON[_0x0277('0x13')](_0x3e5ca4));_0x3e907f(_0x3e5ca4);})[_0x0277('0x18')](function(_0x418194){logger[_0x0277('0x14')](_0x0277('0x3e'),_0x418194['message'],_0x4adf66);_0x186df4(_0x5bf3d1[_0x0277('0x14')](0x1f4,_0x418194[_0x0277('0x16')]));});});};exports['CountReScheduled']=function(_0x1c9651){var _0x270754=this;return new Promise(function(_0x4c7066,_0x25cfda){return db[_0x0277('0x1a')]['findAll']({'raw':_0x1c9651[_0x0277('0x1c')]?_0x1c9651[_0x0277('0x1c')][_0x0277('0x1d')]===undefined?!![]:![]:!![],'where':_0x1c9651[_0x0277('0x1c')]?_0x1c9651[_0x0277('0x1c')][_0x0277('0x1e')]||null:null,'attributes':[[db[_0x0277('0x2e')]['fn'](_0x0277('0x3f'),db[_0x0277('0x2e')]['fn']('IF',db[_0x0277('0x2e')][_0x0277('0x40')](_0x0277('0x41')+util[_0x0277('0x42')]('\x22%s\x22',moment()[_0x0277('0x42')](_0x0277('0x43')))+_0x0277('0x44')))),_0x0277('0x45')]]})[_0x0277('0xe')](function(_0x2badeb){logger[_0x0277('0xf')]('CountReScheduled',_0x1c9651);logger[_0x0277('0x12')](_0x0277('0x46'),_0x1c9651,JSON[_0x0277('0x13')](_0x2badeb));_0x4c7066(_0x2badeb);})[_0x0277('0x18')](function(_0x529d0d){logger['error'](_0x0277('0x46'),_0x529d0d['message'],_0x1c9651);_0x25cfda(_0x270754[_0x0277('0x14')](0x1f4,_0x529d0d[_0x0277('0x16')]));});});};exports['GetContactRecallMe']=function(_0x338b0a){var _0x13313e=this;return new Promise(function(_0x20fa12,_0x544fe2){return db[_0x0277('0x2c')]['describe']()[_0x0277('0xe')](function(_0x4359f0){return db[_0x0277('0x2e')][_0x0277('0x2f')](function(_0x3177c2){return db[_0x0277('0x1a')]['findAll']({'where':_0x338b0a[_0x0277('0x1c')]?_0x338b0a[_0x0277('0x1c')][_0x0277('0x1e')]||null:null,'attributes':_0x338b0a[_0x0277('0x1c')]?_0x338b0a[_0x0277('0x1c')][_0x0277('0x1f')]||null:null,'limit':0x1,'order':_0x338b0a['options']?_0x338b0a[_0x0277('0x1c')][_0x0277('0x30')]||null:null,'group':db['CmHopper'][_0x0277('0x3a')],'transaction':_0x3177c2,'lock':_0x3177c2[_0x0277('0x31')][_0x0277('0x32')],'include':_0x338b0a['options']?_0x338b0a[_0x0277('0x1c')][_0x0277('0x20')]?_[_0x0277('0x21')](_0x338b0a[_0x0277('0x1c')][_0x0277('0x20')],function(_0x116f86){return{'model':db[_0x116f86['model']],'as':_0x116f86['as'],'attributes':_0x116f86[_0x0277('0x1f')],'include':_0x116f86[_0x0277('0x20')]?_['map'](_0x116f86[_0x0277('0x20')],function(_0x15a7d7){return{'model':db[_0x15a7d7[_0x0277('0x22')]],'as':_0x15a7d7['as'],'attributes':_0x15a7d7['attributes'],'include':_0x15a7d7['include']?_['map'](_0x15a7d7[_0x0277('0x20')],function(_0x4932e0){return{'model':db[_0x4932e0['model']],'as':_0x4932e0['as'],'attributes':_0x4932e0['attributes']};}):[]};}):[]};}):[]:[]})[_0x0277('0xe')](function(_0x54b75f){var _0x4c997a=[];for(var _0x3b1172=0x0;_0x3b1172<_0x54b75f['length'];_0x3b1172+=0x1){_0x4c997a[_0x0277('0x3b')](_0x54b75f[_0x3b1172]['update'](_0x338b0a[_0x0277('0x26')],{'transaction':_0x3177c2}));}return BPromise['all'](_0x4c997a);});})[_0x0277('0xe')](function(_0x13152b){logger[_0x0277('0xf')]('GetContactRecallMe',_0x338b0a);logger[_0x0277('0x12')]('GetContactRecallMe',_0x338b0a,JSON[_0x0277('0x13')](_0x13152b));_0x20fa12(_0x13152b);})[_0x0277('0x18')](function(_0x544279){logger[_0x0277('0x14')](_0x0277('0x47'),_0x544279[_0x0277('0x16')],_0x338b0a);_0x544fe2(_0x13313e[_0x0277('0x14')](0x1f4,_0x544279['message']));});});});};exports[_0x0277('0x48')]=function(_0x3ea113){var _0x403053=this;return new Promise(function(_0x3d6b93,_0x95e9b3){db[_0x0277('0x2c')][_0x0277('0x2d')]()['then'](function(_0xaade39){return db[_0x0277('0x1a')]['findAll']({'raw':_0x3ea113[_0x0277('0x1c')]?_0x3ea113[_0x0277('0x1c')][_0x0277('0x1d')]===undefined?!![]:![]:!![],'where':_0x3ea113[_0x0277('0x1c')]?_0x3ea113['options'][_0x0277('0x1e')]||null:null,'attributes':_0x3ea113[_0x0277('0x1c')]?_0x3ea113[_0x0277('0x1c')][_0x0277('0x1f')]||null:null,'limit':_0x3ea113[_0x0277('0x1c')]?_0x3ea113[_0x0277('0x1c')][_0x0277('0x28')]||null:null,'include':_0x3ea113[_0x0277('0x1c')]?_0x3ea113[_0x0277('0x1c')][_0x0277('0x20')]?_['map'](_0x3ea113[_0x0277('0x1c')][_0x0277('0x20')],function(_0x5bfe23){return{'model':db[_0x5bfe23[_0x0277('0x22')]],'as':_0x5bfe23['as'],'attributes':_0x5bfe23['as']===_0x0277('0x33')?_[_0x0277('0x34')](_0xaade39):_0x5bfe23['attributes'],'include':_0x5bfe23[_0x0277('0x20')]?_['map'](_0x5bfe23[_0x0277('0x20')],function(_0x294ebd){return{'model':db[_0x294ebd['model']],'as':_0x294ebd['as'],'attributes':_0x294ebd[_0x0277('0x1f')],'include':_0x294ebd[_0x0277('0x20')]?_['map'](_0x294ebd[_0x0277('0x20')],function(_0x5a2fb9){return{'model':db[_0x5a2fb9[_0x0277('0x22')]],'as':_0x5a2fb9['as'],'attributes':_0x5a2fb9['attributes']};}):[]};}):[]};}):[]:[]})[_0x0277('0xe')](function(_0x66049c){logger[_0x0277('0xf')](_0x0277('0x19'),_0x3ea113);logger[_0x0277('0x12')](_0x0277('0x19'),_0x3ea113,JSON[_0x0277('0x13')](_0x66049c));_0x3d6b93(_0x66049c);})['catch'](function(_0x546840){logger[_0x0277('0x14')]('GetCmHopper',_0x546840[_0x0277('0x16')],_0x3ea113);_0x95e9b3(_0x403053['error'](0x1f4,_0x546840[_0x0277('0x16')]));});});});};