Built motion from commit (unavailable).|2.5.14
[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 _0x0a75=['where','attributes','limit','include','map','model','ShowCmHopper','find','create','body','CreateCmHopper','UpdateCmHopper','update','destroy','DestroyCmHopper','GetContactDialer','CmContact','describe','LOCK','UPDATE','Contact','keys','User','Agent','name','voicePause','length','UserId','push','all','MoveContactManagedDialer','sequelize','transaction','CmHopperFinal','COUNT','literal','`scheduledat`\x20>=\x20','format','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','CountReScheduled','GetContactRecallMe','order','lodash','util','bluebird','randomstring','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','http','request','then','info','CmHopper,\x20%s,\x20%s','request\x20sent','debug','CmHopper,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','GetCmHopper','CmHopper','findAll','options','raw'];(function(_0x583143,_0x28e170){var _0x1a203e=function(_0x1aeb71){while(--_0x1aeb71){_0x583143['push'](_0x583143['shift']());}};_0x1a203e(++_0x28e170);}(_0x0a75,0xb9));var _0x50a7=function(_0x547bc4,_0x5ce58f){_0x547bc4=_0x547bc4-0x0;var _0x5d5cfd=_0x0a75[_0x547bc4];return _0x5d5cfd;};'use strict';var _=require(_0x50a7('0x0'));var util=require(_0x50a7('0x1'));var moment=require('moment');var BPromise=require(_0x50a7('0x2'));var rs=require(_0x50a7('0x3'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x50a7('0x4'))['db'];var utils=require(_0x50a7('0x5'));var logger=require(_0x50a7('0x6'))('rpc');var config=require(_0x50a7('0x7'));var jayson=require(_0x50a7('0x8'));var client=jayson['client'][_0x50a7('0x9')]({'port':0x232a});function respondWithRpcPromise(_0x24f8cb,_0xafbfbd,_0x20ccb9){return new BPromise(function(_0x2a5716,_0x224247){return client[_0x50a7('0xa')](_0x24f8cb,_0x20ccb9)[_0x50a7('0xb')](function(_0x16d7e3){logger[_0x50a7('0xc')](_0x50a7('0xd'),_0xafbfbd,_0x50a7('0xe'));logger[_0x50a7('0xf')](_0x50a7('0x10'),_0xafbfbd,'request\x20sent',JSON[_0x50a7('0x11')](_0x16d7e3));if(_0x16d7e3[_0x50a7('0x12')]){if(_0x16d7e3['error'][_0x50a7('0x13')]===0x1f4){logger['error'](_0x50a7('0xd'),_0xafbfbd,_0x16d7e3[_0x50a7('0x12')][_0x50a7('0x14')]);return _0x224247(_0x16d7e3['error'][_0x50a7('0x14')]);}logger[_0x50a7('0x12')](_0x50a7('0xd'),_0xafbfbd,_0x16d7e3[_0x50a7('0x12')][_0x50a7('0x14')]);return _0x2a5716(_0x16d7e3[_0x50a7('0x12')]['message']);}else{logger[_0x50a7('0xc')](_0x50a7('0xd'),_0xafbfbd,_0x50a7('0xe'));_0x2a5716(_0x16d7e3[_0x50a7('0x15')][_0x50a7('0x14')]);}})[_0x50a7('0x16')](function(_0x5047fc){logger['error'](_0x50a7('0xd'),_0xafbfbd,_0x5047fc);_0x224247(_0x5047fc);});});}exports[_0x50a7('0x17')]=function(_0x196482){var _0x12f868=this;return new Promise(function(_0x4d3264,_0x126f2b){return db[_0x50a7('0x18')][_0x50a7('0x19')]({'raw':_0x196482[_0x50a7('0x1a')]?_0x196482[_0x50a7('0x1a')][_0x50a7('0x1b')]===undefined?!![]:![]:!![],'where':_0x196482[_0x50a7('0x1a')]?_0x196482[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'attributes':_0x196482[_0x50a7('0x1a')]?_0x196482['options'][_0x50a7('0x1d')]||null:null,'limit':_0x196482[_0x50a7('0x1a')]?_0x196482[_0x50a7('0x1a')][_0x50a7('0x1e')]||null:null,'include':_0x196482['options']?_0x196482['options'][_0x50a7('0x1f')]?_[_0x50a7('0x20')](_0x196482[_0x50a7('0x1a')][_0x50a7('0x1f')],function(_0x142ab1){return{'model':db[_0x142ab1[_0x50a7('0x21')]],'as':_0x142ab1['as'],'attributes':_0x142ab1[_0x50a7('0x1d')],'include':_0x142ab1[_0x50a7('0x1f')]?_[_0x50a7('0x20')](_0x142ab1['include'],function(_0x27f0d1){return{'model':db[_0x27f0d1['model']],'as':_0x27f0d1['as'],'attributes':_0x27f0d1[_0x50a7('0x1d')],'include':_0x27f0d1[_0x50a7('0x1f')]?_[_0x50a7('0x20')](_0x27f0d1[_0x50a7('0x1f')],function(_0x4f9e92){return{'model':db[_0x4f9e92[_0x50a7('0x21')]],'as':_0x4f9e92['as'],'attributes':_0x4f9e92[_0x50a7('0x1d')]};}):[]};}):[]};}):[]:[]})[_0x50a7('0xb')](function(_0x4a121f){logger[_0x50a7('0xc')]('GetCmHopper',_0x196482);logger[_0x50a7('0xf')](_0x50a7('0x17'),_0x196482,JSON[_0x50a7('0x11')](_0x4a121f));_0x4d3264(_0x4a121f);})[_0x50a7('0x16')](function(_0x5980b5){logger['error']('GetCmHopper',_0x5980b5[_0x50a7('0x14')],_0x196482);_0x126f2b(_0x12f868[_0x50a7('0x12')](0x1f4,_0x5980b5[_0x50a7('0x14')]));});});};exports[_0x50a7('0x22')]=function(_0x5722d3){var _0x2617f4=this;return new Promise(function(_0x450431,_0x4de18f){return db[_0x50a7('0x18')][_0x50a7('0x23')]({'raw':_0x5722d3[_0x50a7('0x1a')]?_0x5722d3['options'][_0x50a7('0x1b')]===undefined?!![]:![]:!![],'where':_0x5722d3['options']?_0x5722d3[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'attributes':_0x5722d3['options']?_0x5722d3[_0x50a7('0x1a')][_0x50a7('0x1d')]||null:null,'include':_0x5722d3[_0x50a7('0x1a')]?_0x5722d3[_0x50a7('0x1a')][_0x50a7('0x1f')]?_[_0x50a7('0x20')](_0x5722d3[_0x50a7('0x1a')]['include'],function(_0x252df5){return{'model':db[_0x252df5[_0x50a7('0x21')]],'as':_0x252df5['as'],'attributes':_0x252df5[_0x50a7('0x1d')],'include':_0x252df5['include']?_[_0x50a7('0x20')](_0x252df5[_0x50a7('0x1f')],function(_0x5b5b60){return{'model':db[_0x5b5b60['model']],'as':_0x5b5b60['as'],'attributes':_0x5b5b60[_0x50a7('0x1d')],'include':_0x5b5b60[_0x50a7('0x1f')]?_['map'](_0x5b5b60[_0x50a7('0x1f')],function(_0x59be19){return{'model':db[_0x59be19[_0x50a7('0x21')]],'as':_0x59be19['as'],'attributes':_0x59be19['attributes']};}):[]};}):[]};}):[]:[]})[_0x50a7('0xb')](function(_0x3ebca5){logger[_0x50a7('0xc')]('ShowCmHopper',_0x5722d3);logger['debug'](_0x50a7('0x22'),_0x5722d3,JSON[_0x50a7('0x11')](_0x3ebca5));_0x450431(_0x3ebca5);})[_0x50a7('0x16')](function(_0x347174){logger['error'](_0x50a7('0x22'),_0x347174[_0x50a7('0x14')],_0x5722d3);_0x4de18f(_0x2617f4[_0x50a7('0x12')](0x1f4,_0x347174[_0x50a7('0x14')]));});});};exports['CreateCmHopper']=function(_0x53cb44){var _0x5bbc1e=this;return new Promise(function(_0x28745d,_0x1e65ad){return db[_0x50a7('0x18')][_0x50a7('0x24')](_0x53cb44[_0x50a7('0x25')],{'raw':_0x53cb44['options']?_0x53cb44[_0x50a7('0x1a')]['raw']===undefined?!![]:![]:!![]})[_0x50a7('0xb')](function(_0x32f836){logger[_0x50a7('0xc')](_0x50a7('0x26'),_0x53cb44);logger[_0x50a7('0xf')](_0x50a7('0x26'),_0x53cb44,JSON[_0x50a7('0x11')](_0x32f836));_0x28745d(_0x32f836);})[_0x50a7('0x16')](function(_0x10b4a8){logger[_0x50a7('0x12')](_0x50a7('0x26'),_0x10b4a8[_0x50a7('0x14')],_0x53cb44);_0x1e65ad(_0x5bbc1e[_0x50a7('0x12')](0x1f4,_0x10b4a8['message']));});});};exports[_0x50a7('0x27')]=function(_0x2ca6f2){var _0x45570c=this;return new Promise(function(_0x1d4f85,_0xbe1689){return db[_0x50a7('0x18')][_0x50a7('0x28')](_0x2ca6f2[_0x50a7('0x25')],{'raw':_0x2ca6f2[_0x50a7('0x1a')]?_0x2ca6f2[_0x50a7('0x1a')]['raw']===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x2ca6f2['options']?_0x2ca6f2[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'attributes':_0x2ca6f2[_0x50a7('0x1a')]?_0x2ca6f2['options'][_0x50a7('0x1d')]||null:null,'limit':_0x2ca6f2['options']?_0x2ca6f2[_0x50a7('0x1a')][_0x50a7('0x1e')]||null:null})[_0x50a7('0xb')](function(_0x2287d2){logger['info'](_0x50a7('0x27'),_0x2ca6f2);logger[_0x50a7('0xf')](_0x50a7('0x27'),_0x2ca6f2,JSON[_0x50a7('0x11')](_0x2287d2));_0x1d4f85(_0x2287d2);})[_0x50a7('0x16')](function(_0x119fd0){logger[_0x50a7('0x12')](_0x50a7('0x27'),_0x119fd0[_0x50a7('0x14')],_0x2ca6f2);_0xbe1689(_0x45570c[_0x50a7('0x12')](0x1f4,_0x119fd0[_0x50a7('0x14')]));});});};exports['DestroyCmHopper']=function(_0x7e8ef8){var _0xede8ab=this;return new Promise(function(_0x7c5c8,_0x8f0f88){return db['CmHopper'][_0x50a7('0x29')]({'where':_0x7e8ef8[_0x50a7('0x1a')]?_0x7e8ef8[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null})[_0x50a7('0xb')](function(_0x59996d){logger[_0x50a7('0xc')](_0x50a7('0x2a'),_0x7e8ef8);logger['debug']('DestroyCmHopper',_0x7e8ef8,JSON['stringify'](_0x59996d));_0x7c5c8(_0x59996d);})[_0x50a7('0x16')](function(_0x4b574d){logger[_0x50a7('0x12')]('DestroyCmHopper',_0x4b574d['message'],_0x7e8ef8);_0x8f0f88(_0xede8ab[_0x50a7('0x12')](0x1f4,_0x4b574d[_0x50a7('0x14')]));});});};exports[_0x50a7('0x2b')]=function(_0x5e9e74){var _0x255c9a=this;return new Promise(function(_0x593757,_0x32a00a){return db[_0x50a7('0x2c')][_0x50a7('0x2d')]()[_0x50a7('0xb')](function(_0x20b182){return db['sequelize']['transaction'](function(_0x2dbf24){return db[_0x50a7('0x18')][_0x50a7('0x19')]({'where':_0x5e9e74[_0x50a7('0x1a')]?_0x5e9e74[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'attributes':_0x5e9e74[_0x50a7('0x1a')]?_0x5e9e74[_0x50a7('0x1a')][_0x50a7('0x1d')]||null:null,'limit':_0x5e9e74['options']?_0x5e9e74[_0x50a7('0x1a')]['limit']||null:null,'order':_0x5e9e74[_0x50a7('0x1a')]?_0x5e9e74[_0x50a7('0x1a')]['order']||null:null,'transaction':_0x2dbf24,'lock':_0x2dbf24[_0x50a7('0x2e')][_0x50a7('0x2f')],'include':[{'model':db['CmContact'],'as':_0x50a7('0x30'),'attributes':_[_0x50a7('0x31')](_0x20b182)},{'model':db[_0x50a7('0x32')],'as':_0x50a7('0x33'),'attributes':['id',_0x50a7('0x34'),_0x50a7('0x35')]}]})[_0x50a7('0xb')](function(_0x183e6e){var _0x1e690a=[];var _0x1360ef=[];for(var _0x42748e=0x0;_0x42748e<_0x183e6e[_0x50a7('0x36')];_0x42748e+=0x1){if(!_0x1360ef['includes'](_0x183e6e[_0x42748e][_0x50a7('0x37')])){_0x1360ef['push'](_0x183e6e[_0x42748e][_0x50a7('0x37')]);_0x1e690a[_0x50a7('0x38')](_0x183e6e[_0x42748e]['update'](_0x5e9e74[_0x50a7('0x25')],{'transaction':_0x2dbf24}));}}return BPromise[_0x50a7('0x39')](_0x1e690a);});})['then'](function(_0xd467de){logger[_0x50a7('0xc')]('GetContactDialer',_0x5e9e74);logger['debug'](_0x50a7('0x2b'),_0x5e9e74,JSON[_0x50a7('0x11')](_0xd467de));_0x593757(_0xd467de);})[_0x50a7('0x16')](function(_0x1051c7){logger['error'](_0x50a7('0x2b'),_0x1051c7[_0x50a7('0x14')],_0x5e9e74);_0x32a00a(_0x255c9a[_0x50a7('0x12')](0x1f4,_0x1051c7[_0x50a7('0x14')]));});});});};exports[_0x50a7('0x3a')]=function(_0x269f99){var _0x1d9c85=this;return new Promise(function(_0x49e7a9,_0x585bb0){return db[_0x50a7('0x3b')][_0x50a7('0x3c')](function(_0x37ff3f){return db[_0x50a7('0x3d')][_0x50a7('0x24')](_0x269f99[_0x50a7('0x25')],{'raw':_0x269f99[_0x50a7('0x1a')]?_0x269f99[_0x50a7('0x1a')][_0x50a7('0x1b')]===undefined?!![]:![]:!![],'transaction':_0x37ff3f})[_0x50a7('0xb')](function(){return db[_0x50a7('0x18')][_0x50a7('0x29')]({'where':_0x269f99[_0x50a7('0x1a')]?_0x269f99[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'transaction':_0x37ff3f});});})[_0x50a7('0xb')](function(_0x16cb2f){logger[_0x50a7('0xc')](_0x50a7('0x3a'),_0x269f99);logger[_0x50a7('0xf')]('MoveContactManagedDialer',_0x269f99,JSON[_0x50a7('0x11')](_0x16cb2f));_0x49e7a9(_0x16cb2f);})[_0x50a7('0x16')](function(_0x4de4b8){logger[_0x50a7('0x12')](_0x50a7('0x3a'),_0x4de4b8[_0x50a7('0x14')],_0x269f99);_0x585bb0(_0x1d9c85['error'](0x1f4,_0x4de4b8['message']));});});};exports['CountReScheduled']=function(_0x5d10f6){var _0x417ff2=this;return new Promise(function(_0x4c046c,_0xc4628){return db[_0x50a7('0x18')]['findAll']({'raw':_0x5d10f6[_0x50a7('0x1a')]?_0x5d10f6[_0x50a7('0x1a')][_0x50a7('0x1b')]===undefined?!![]:![]:!![],'where':_0x5d10f6['options']?_0x5d10f6[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'attributes':[[db['sequelize']['fn'](_0x50a7('0x3e'),db[_0x50a7('0x3b')]['fn']('IF',db['sequelize'][_0x50a7('0x3f')](_0x50a7('0x40')+util['format']('\x22%s\x22',moment()[_0x50a7('0x41')](_0x50a7('0x42')))+_0x50a7('0x43')))),'contactsRescheduled']]})[_0x50a7('0xb')](function(_0x350954){logger['info'](_0x50a7('0x44'),_0x5d10f6);logger['debug'](_0x50a7('0x44'),_0x5d10f6,JSON[_0x50a7('0x11')](_0x350954));_0x4c046c(_0x350954);})[_0x50a7('0x16')](function(_0x33c3e2){logger[_0x50a7('0x12')](_0x50a7('0x44'),_0x33c3e2[_0x50a7('0x14')],_0x5d10f6);_0xc4628(_0x417ff2[_0x50a7('0x12')](0x1f4,_0x33c3e2['message']));});});};exports[_0x50a7('0x45')]=function(_0x3c9dca){var _0x4ccf13=this;return new Promise(function(_0x53d6e0,_0x1c78ca){return db[_0x50a7('0x2c')][_0x50a7('0x2d')]()[_0x50a7('0xb')](function(_0x1082c1){return db['sequelize'][_0x50a7('0x3c')](function(_0x3ae5b9){return db[_0x50a7('0x18')][_0x50a7('0x19')]({'where':_0x3c9dca[_0x50a7('0x1a')]?_0x3c9dca[_0x50a7('0x1a')][_0x50a7('0x1c')]||null:null,'attributes':_0x3c9dca[_0x50a7('0x1a')]?_0x3c9dca['options'][_0x50a7('0x1d')]||null:null,'limit':0x1,'order':_0x3c9dca[_0x50a7('0x1a')]?_0x3c9dca['options'][_0x50a7('0x46')]||null:null,'group':db['CmHopper'][_0x50a7('0x37')],'transaction':_0x3ae5b9,'lock':_0x3ae5b9[_0x50a7('0x2e')][_0x50a7('0x2f')],'include':_0x3c9dca['options']?_0x3c9dca[_0x50a7('0x1a')]['include']?_['map'](_0x3c9dca['options'][_0x50a7('0x1f')],function(_0x411a1e){return{'model':db[_0x411a1e[_0x50a7('0x21')]],'as':_0x411a1e['as'],'attributes':_0x411a1e[_0x50a7('0x1d')],'include':_0x411a1e['include']?_[_0x50a7('0x20')](_0x411a1e[_0x50a7('0x1f')],function(_0x377125){return{'model':db[_0x377125[_0x50a7('0x21')]],'as':_0x377125['as'],'attributes':_0x377125['attributes'],'include':_0x377125['include']?_[_0x50a7('0x20')](_0x377125[_0x50a7('0x1f')],function(_0x148601){return{'model':db[_0x148601[_0x50a7('0x21')]],'as':_0x148601['as'],'attributes':_0x148601[_0x50a7('0x1d')]};}):[]};}):[]};}):[]:[]})[_0x50a7('0xb')](function(_0xa88ed){var _0x386159=[];for(var _0x419332=0x0;_0x419332<_0xa88ed[_0x50a7('0x36')];_0x419332+=0x1){_0x386159[_0x50a7('0x38')](_0xa88ed[_0x419332][_0x50a7('0x28')](_0x3c9dca['body'],{'transaction':_0x3ae5b9}));}return BPromise['all'](_0x386159);});})[_0x50a7('0xb')](function(_0x28892a){logger[_0x50a7('0xc')]('GetContactRecallMe',_0x3c9dca);logger[_0x50a7('0xf')](_0x50a7('0x45'),_0x3c9dca,JSON['stringify'](_0x28892a));_0x53d6e0(_0x28892a);})[_0x50a7('0x16')](function(_0x57171a){logger['error'](_0x50a7('0x45'),_0x57171a[_0x50a7('0x14')],_0x3c9dca);_0x1c78ca(_0x4ccf13['error'](0x1f4,_0x57171a[_0x50a7('0x14')]));});});});};exports['GetCmHopperPreview']=function(_0x1a8b52){var _0x5b1035=this;return new Promise(function(_0x2b2210,_0x3d65f1){db[_0x50a7('0x2c')]['describe']()[_0x50a7('0xb')](function(_0x253ddb){return db[_0x50a7('0x18')][_0x50a7('0x19')]({'raw':_0x1a8b52[_0x50a7('0x1a')]?_0x1a8b52[_0x50a7('0x1a')][_0x50a7('0x1b')]===undefined?!![]:![]:!![],'where':_0x1a8b52['options']?_0x1a8b52[_0x50a7('0x1a')]['where']||null:null,'attributes':_0x1a8b52['options']?_0x1a8b52[_0x50a7('0x1a')][_0x50a7('0x1d')]||null:null,'limit':_0x1a8b52[_0x50a7('0x1a')]?_0x1a8b52[_0x50a7('0x1a')][_0x50a7('0x1e')]||null:null,'include':_0x1a8b52['options']?_0x1a8b52[_0x50a7('0x1a')][_0x50a7('0x1f')]?_[_0x50a7('0x20')](_0x1a8b52['options'][_0x50a7('0x1f')],function(_0x33fc71){return{'model':db[_0x33fc71['model']],'as':_0x33fc71['as'],'attributes':_0x33fc71['as']===_0x50a7('0x30')?_[_0x50a7('0x31')](_0x253ddb):_0x33fc71['attributes'],'include':_0x33fc71[_0x50a7('0x1f')]?_['map'](_0x33fc71[_0x50a7('0x1f')],function(_0x561226){return{'model':db[_0x561226['model']],'as':_0x561226['as'],'attributes':_0x561226[_0x50a7('0x1d')],'include':_0x561226['include']?_[_0x50a7('0x20')](_0x561226['include'],function(_0x14fdab){return{'model':db[_0x14fdab[_0x50a7('0x21')]],'as':_0x14fdab['as'],'attributes':_0x14fdab['attributes']};}):[]};}):[]};}):[]:[]})['then'](function(_0x512837){logger[_0x50a7('0xc')](_0x50a7('0x17'),_0x1a8b52);logger['debug'](_0x50a7('0x17'),_0x1a8b52,JSON[_0x50a7('0x11')](_0x512837));_0x2b2210(_0x512837);})[_0x50a7('0x16')](function(_0x2cc075){logger[_0x50a7('0x12')]('GetCmHopper',_0x2cc075[_0x50a7('0x14')],_0x1a8b52);_0x3d65f1(_0x5b1035[_0x50a7('0x12')](0x1f4,_0x2cc075[_0x50a7('0x14')]));});});});};