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 _0x4167=['keys','lodash','util','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','http','request','then','info','request\x20sent','debug','CmHopper,\x20%s,\x20%s,\x20%s','stringify','error','code','CmHopper,\x20%s,\x20%s','message','result','catch','GetCmHopper','CmHopper','findAll','options','where','attributes','limit','include','map','model','ShowCmHopper','find','raw','create','CreateCmHopper','UpdateCmHopper','body','DestroyCmHopper','CmContact','sequelize','transaction','order','LOCK','UPDATE','Contact','User','Agent','length','UserId','push','all','GetContactDialer','MoveContactManagedDialer','`scheduledat`\x20>=\x20','format','\x22%s\x22','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','contactsRescheduled','CountReScheduled','GetContactRecallMe','describe','update'];(function(_0x10004e,_0xd701e6){var _0x5af990=function(_0x4bab6a){while(--_0x4bab6a){_0x10004e['push'](_0x10004e['shift']());}};_0x5af990(++_0xd701e6);}(_0x4167,0x8b));var _0x7416=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x4167[_0x3dd15e];return _0x231fd0;};'use strict';var _=require(_0x7416('0x0'));var util=require(_0x7416('0x1'));var moment=require('moment');var BPromise=require(_0x7416('0x2'));var rs=require(_0x7416('0x3'));var fs=require('fs');var Redis=require(_0x7416('0x4'));var db=require(_0x7416('0x5'))['db'];var utils=require(_0x7416('0x6'));var logger=require(_0x7416('0x7'))('rpc');var config=require(_0x7416('0x8'));var jayson=require(_0x7416('0x9'));var client=jayson[_0x7416('0xa')][_0x7416('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x276cb5,_0x387955,_0x1395be){return new BPromise(function(_0x4f34e8,_0x2966e9){return client[_0x7416('0xc')](_0x276cb5,_0x1395be)[_0x7416('0xd')](function(_0x1953cc){logger[_0x7416('0xe')]('CmHopper,\x20%s,\x20%s',_0x387955,_0x7416('0xf'));logger[_0x7416('0x10')](_0x7416('0x11'),_0x387955,_0x7416('0xf'),JSON[_0x7416('0x12')](_0x1953cc));if(_0x1953cc[_0x7416('0x13')]){if(_0x1953cc[_0x7416('0x13')][_0x7416('0x14')]===0x1f4){logger[_0x7416('0x13')](_0x7416('0x15'),_0x387955,_0x1953cc['error'][_0x7416('0x16')]);return _0x2966e9(_0x1953cc['error']['message']);}logger[_0x7416('0x13')]('CmHopper,\x20%s,\x20%s',_0x387955,_0x1953cc[_0x7416('0x13')][_0x7416('0x16')]);return _0x4f34e8(_0x1953cc[_0x7416('0x13')][_0x7416('0x16')]);}else{logger[_0x7416('0xe')](_0x7416('0x15'),_0x387955,'request\x20sent');_0x4f34e8(_0x1953cc[_0x7416('0x17')]['message']);}})[_0x7416('0x18')](function(_0x56bdd2){logger[_0x7416('0x13')](_0x7416('0x15'),_0x387955,_0x56bdd2);_0x2966e9(_0x56bdd2);});});}exports[_0x7416('0x19')]=function(_0x2380b9){var _0x2f09d1=this;return new Promise(function(_0x2234e0,_0x4fbfdf){return db[_0x7416('0x1a')][_0x7416('0x1b')]({'raw':_0x2380b9[_0x7416('0x1c')]?_0x2380b9[_0x7416('0x1c')]['raw']===undefined?!![]:![]:!![],'where':_0x2380b9['options']?_0x2380b9[_0x7416('0x1c')][_0x7416('0x1d')]||null:null,'attributes':_0x2380b9[_0x7416('0x1c')]?_0x2380b9[_0x7416('0x1c')][_0x7416('0x1e')]||null:null,'limit':_0x2380b9[_0x7416('0x1c')]?_0x2380b9[_0x7416('0x1c')][_0x7416('0x1f')]||null:null,'include':_0x2380b9[_0x7416('0x1c')]?_0x2380b9[_0x7416('0x1c')][_0x7416('0x20')]?_[_0x7416('0x21')](_0x2380b9[_0x7416('0x1c')][_0x7416('0x20')],function(_0x3c0fe4){return{'model':db[_0x3c0fe4[_0x7416('0x22')]],'as':_0x3c0fe4['as'],'attributes':_0x3c0fe4[_0x7416('0x1e')],'include':_0x3c0fe4[_0x7416('0x20')]?_[_0x7416('0x21')](_0x3c0fe4[_0x7416('0x20')],function(_0x40f770){return{'model':db[_0x40f770[_0x7416('0x22')]],'as':_0x40f770['as'],'attributes':_0x40f770[_0x7416('0x1e')],'include':_0x40f770[_0x7416('0x20')]?_[_0x7416('0x21')](_0x40f770[_0x7416('0x20')],function(_0x109238){return{'model':db[_0x109238[_0x7416('0x22')]],'as':_0x109238['as'],'attributes':_0x109238[_0x7416('0x1e')]};}):[]};}):[]};}):[]:[]})[_0x7416('0xd')](function(_0x416497){logger['info'](_0x7416('0x19'),_0x2380b9);logger['debug']('GetCmHopper',_0x2380b9,JSON[_0x7416('0x12')](_0x416497));_0x2234e0(_0x416497);})[_0x7416('0x18')](function(_0x28e57b){logger[_0x7416('0x13')](_0x7416('0x19'),_0x28e57b[_0x7416('0x16')],_0x2380b9);_0x4fbfdf(_0x2f09d1['error'](0x1f4,_0x28e57b['message']));});});};exports[_0x7416('0x23')]=function(_0x1e50d5){var _0x2dfe27=this;return new Promise(function(_0x3c24fc,_0xf7ab02){return db[_0x7416('0x1a')][_0x7416('0x24')]({'raw':_0x1e50d5[_0x7416('0x1c')]?_0x1e50d5['options'][_0x7416('0x25')]===undefined?!![]:![]:!![],'where':_0x1e50d5[_0x7416('0x1c')]?_0x1e50d5[_0x7416('0x1c')][_0x7416('0x1d')]||null:null,'attributes':_0x1e50d5['options']?_0x1e50d5[_0x7416('0x1c')]['attributes']||null:null,'include':_0x1e50d5['options']?_0x1e50d5[_0x7416('0x1c')][_0x7416('0x20')]?_[_0x7416('0x21')](_0x1e50d5[_0x7416('0x1c')][_0x7416('0x20')],function(_0x33993c){return{'model':db[_0x33993c['model']],'as':_0x33993c['as'],'attributes':_0x33993c['attributes'],'include':_0x33993c[_0x7416('0x20')]?_['map'](_0x33993c['include'],function(_0x5a31fa){return{'model':db[_0x5a31fa['model']],'as':_0x5a31fa['as'],'attributes':_0x5a31fa[_0x7416('0x1e')],'include':_0x5a31fa[_0x7416('0x20')]?_[_0x7416('0x21')](_0x5a31fa['include'],function(_0x4c89ee){return{'model':db[_0x4c89ee[_0x7416('0x22')]],'as':_0x4c89ee['as'],'attributes':_0x4c89ee[_0x7416('0x1e')]};}):[]};}):[]};}):[]:[]})[_0x7416('0xd')](function(_0x5d2838){logger['info'](_0x7416('0x23'),_0x1e50d5);logger['debug'](_0x7416('0x23'),_0x1e50d5,JSON[_0x7416('0x12')](_0x5d2838));_0x3c24fc(_0x5d2838);})[_0x7416('0x18')](function(_0x278dda){logger['error']('ShowCmHopper',_0x278dda[_0x7416('0x16')],_0x1e50d5);_0xf7ab02(_0x2dfe27[_0x7416('0x13')](0x1f4,_0x278dda['message']));});});};exports['CreateCmHopper']=function(_0x34d4d6){var _0x4de4b8=this;return new Promise(function(_0xf0dbaa,_0x5edc65){return db[_0x7416('0x1a')][_0x7416('0x26')](_0x34d4d6['body'],{'raw':_0x34d4d6['options']?_0x34d4d6['options'][_0x7416('0x25')]===undefined?!![]:![]:!![]})['then'](function(_0x13556a){logger[_0x7416('0xe')](_0x7416('0x27'),_0x34d4d6);logger['debug']('CreateCmHopper',_0x34d4d6,JSON[_0x7416('0x12')](_0x13556a));_0xf0dbaa(_0x13556a);})['catch'](function(_0x14d1a8){logger[_0x7416('0x13')](_0x7416('0x27'),_0x14d1a8[_0x7416('0x16')],_0x34d4d6);_0x5edc65(_0x4de4b8[_0x7416('0x13')](0x1f4,_0x14d1a8[_0x7416('0x16')]));});});};exports[_0x7416('0x28')]=function(_0x256e17){var _0x19e145=this;return new Promise(function(_0x18fad7,_0xabff29){return db['CmHopper']['update'](_0x256e17[_0x7416('0x29')],{'raw':_0x256e17['options']?_0x256e17[_0x7416('0x1c')][_0x7416('0x25')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x256e17[_0x7416('0x1c')]?_0x256e17['options'][_0x7416('0x1d')]||null:null,'attributes':_0x256e17[_0x7416('0x1c')]?_0x256e17[_0x7416('0x1c')][_0x7416('0x1e')]||null:null,'limit':_0x256e17[_0x7416('0x1c')]?_0x256e17['options'][_0x7416('0x1f')]||null:null})[_0x7416('0xd')](function(_0x3e2704){logger['info'](_0x7416('0x28'),_0x256e17);logger[_0x7416('0x10')](_0x7416('0x28'),_0x256e17,JSON['stringify'](_0x3e2704));_0x18fad7(_0x3e2704);})[_0x7416('0x18')](function(_0x4f6f4b){logger['error'](_0x7416('0x28'),_0x4f6f4b[_0x7416('0x16')],_0x256e17);_0xabff29(_0x19e145[_0x7416('0x13')](0x1f4,_0x4f6f4b[_0x7416('0x16')]));});});};exports[_0x7416('0x2a')]=function(_0x4dafcc){var _0x4a75e1=this;return new Promise(function(_0x42ad62,_0x2e9b3f){return db[_0x7416('0x1a')]['destroy']({'where':_0x4dafcc[_0x7416('0x1c')]?_0x4dafcc[_0x7416('0x1c')][_0x7416('0x1d')]||null:null})['then'](function(_0x5521b1){logger[_0x7416('0xe')](_0x7416('0x2a'),_0x4dafcc);logger['debug'](_0x7416('0x2a'),_0x4dafcc,JSON[_0x7416('0x12')](_0x5521b1));_0x42ad62(_0x5521b1);})[_0x7416('0x18')](function(_0x4e80b3){logger['error'](_0x7416('0x2a'),_0x4e80b3[_0x7416('0x16')],_0x4dafcc);_0x2e9b3f(_0x4a75e1[_0x7416('0x13')](0x1f4,_0x4e80b3[_0x7416('0x16')]));});});};exports['GetContactDialer']=function(_0x588d49){var _0x115b14=this;return new Promise(function(_0x253069,_0x7db6a5){return db[_0x7416('0x2b')]['describe']()[_0x7416('0xd')](function(_0x40448f){return db[_0x7416('0x2c')][_0x7416('0x2d')](function(_0x3dca52){return db[_0x7416('0x1a')]['findAll']({'where':_0x588d49[_0x7416('0x1c')]?_0x588d49['options'][_0x7416('0x1d')]||null:null,'attributes':_0x588d49[_0x7416('0x1c')]?_0x588d49[_0x7416('0x1c')][_0x7416('0x1e')]||null:null,'limit':_0x588d49[_0x7416('0x1c')]?_0x588d49['options'][_0x7416('0x1f')]||null:null,'order':_0x588d49[_0x7416('0x1c')]?_0x588d49['options'][_0x7416('0x2e')]||null:null,'transaction':_0x3dca52,'lock':_0x3dca52[_0x7416('0x2f')][_0x7416('0x30')],'include':[{'model':db[_0x7416('0x2b')],'as':_0x7416('0x31'),'attributes':_['keys'](_0x40448f)},{'model':db[_0x7416('0x32')],'as':_0x7416('0x33'),'attributes':['id','name','voicePause']}]})[_0x7416('0xd')](function(_0x4fa289){var _0x57947c=[];var _0x2bcf43=[];for(var _0x2a9282=0x0;_0x2a9282<_0x4fa289[_0x7416('0x34')];_0x2a9282+=0x1){if(!_0x2bcf43['includes'](_0x4fa289[_0x2a9282][_0x7416('0x35')])){_0x2bcf43[_0x7416('0x36')](_0x4fa289[_0x2a9282][_0x7416('0x35')]);_0x57947c[_0x7416('0x36')](_0x4fa289[_0x2a9282]['update'](_0x588d49[_0x7416('0x29')],{'transaction':_0x3dca52}));}}return BPromise[_0x7416('0x37')](_0x57947c);});})[_0x7416('0xd')](function(_0x1c152a){logger['info'](_0x7416('0x38'),_0x588d49);logger[_0x7416('0x10')]('GetContactDialer',_0x588d49,JSON['stringify'](_0x1c152a));_0x253069(_0x1c152a);})[_0x7416('0x18')](function(_0x3356e7){logger[_0x7416('0x13')](_0x7416('0x38'),_0x3356e7['message'],_0x588d49);_0x7db6a5(_0x115b14[_0x7416('0x13')](0x1f4,_0x3356e7[_0x7416('0x16')]));});});});};exports[_0x7416('0x39')]=function(_0x510844){var _0x199788=this;return new Promise(function(_0x3b9b2f,_0x3893c4){return db[_0x7416('0x2c')]['transaction'](function(_0x47d952){return db['CmHopperFinal'][_0x7416('0x26')](_0x510844[_0x7416('0x29')],{'raw':_0x510844[_0x7416('0x1c')]?_0x510844[_0x7416('0x1c')][_0x7416('0x25')]===undefined?!![]:![]:!![],'transaction':_0x47d952})[_0x7416('0xd')](function(){return db[_0x7416('0x1a')]['destroy']({'where':_0x510844[_0x7416('0x1c')]?_0x510844[_0x7416('0x1c')][_0x7416('0x1d')]||null:null,'transaction':_0x47d952});});})[_0x7416('0xd')](function(_0x32dbe1){logger[_0x7416('0xe')](_0x7416('0x39'),_0x510844);logger[_0x7416('0x10')](_0x7416('0x39'),_0x510844,JSON[_0x7416('0x12')](_0x32dbe1));_0x3b9b2f(_0x32dbe1);})[_0x7416('0x18')](function(_0x261d45){logger['error'](_0x7416('0x39'),_0x261d45['message'],_0x510844);_0x3893c4(_0x199788[_0x7416('0x13')](0x1f4,_0x261d45['message']));});});};exports['CountReScheduled']=function(_0x3d93c5){var _0x5b9955=this;return new Promise(function(_0x28e3ac,_0x4ca8e7){return db[_0x7416('0x1a')][_0x7416('0x1b')]({'raw':_0x3d93c5['options']?_0x3d93c5[_0x7416('0x1c')][_0x7416('0x25')]===undefined?!![]:![]:!![],'where':_0x3d93c5['options']?_0x3d93c5[_0x7416('0x1c')][_0x7416('0x1d')]||null:null,'attributes':[[db[_0x7416('0x2c')]['fn']('COUNT',db[_0x7416('0x2c')]['fn']('IF',db[_0x7416('0x2c')]['literal'](_0x7416('0x3a')+util[_0x7416('0x3b')](_0x7416('0x3c'),moment()['format'](_0x7416('0x3d')))+_0x7416('0x3e')))),_0x7416('0x3f')]]})['then'](function(_0xa3322a){logger[_0x7416('0xe')]('CountReScheduled',_0x3d93c5);logger[_0x7416('0x10')](_0x7416('0x40'),_0x3d93c5,JSON['stringify'](_0xa3322a));_0x28e3ac(_0xa3322a);})[_0x7416('0x18')](function(_0x1c702f){logger['error'](_0x7416('0x40'),_0x1c702f[_0x7416('0x16')],_0x3d93c5);_0x4ca8e7(_0x5b9955['error'](0x1f4,_0x1c702f[_0x7416('0x16')]));});});};exports[_0x7416('0x41')]=function(_0x4be89b){var _0x545536=this;return new Promise(function(_0x9f857f,_0x3a4fc6){return db[_0x7416('0x2b')][_0x7416('0x42')]()[_0x7416('0xd')](function(_0x5e7c54){return db[_0x7416('0x2c')][_0x7416('0x2d')](function(_0x13b763){return db['CmHopper'][_0x7416('0x1b')]({'where':_0x4be89b['options']?_0x4be89b[_0x7416('0x1c')][_0x7416('0x1d')]||null:null,'attributes':_0x4be89b[_0x7416('0x1c')]?_0x4be89b[_0x7416('0x1c')]['attributes']||null:null,'limit':0x1,'order':_0x4be89b[_0x7416('0x1c')]?_0x4be89b[_0x7416('0x1c')][_0x7416('0x2e')]||null:null,'group':db['CmHopper']['UserId'],'transaction':_0x13b763,'lock':_0x13b763['LOCK'][_0x7416('0x30')],'include':_0x4be89b[_0x7416('0x1c')]?_0x4be89b[_0x7416('0x1c')][_0x7416('0x20')]?_[_0x7416('0x21')](_0x4be89b[_0x7416('0x1c')][_0x7416('0x20')],function(_0x3899f2){return{'model':db[_0x3899f2['model']],'as':_0x3899f2['as'],'attributes':_0x3899f2[_0x7416('0x1e')],'include':_0x3899f2['include']?_['map'](_0x3899f2[_0x7416('0x20')],function(_0x2859a8){return{'model':db[_0x2859a8['model']],'as':_0x2859a8['as'],'attributes':_0x2859a8[_0x7416('0x1e')],'include':_0x2859a8[_0x7416('0x20')]?_[_0x7416('0x21')](_0x2859a8[_0x7416('0x20')],function(_0x2a49a9){return{'model':db[_0x2a49a9[_0x7416('0x22')]],'as':_0x2a49a9['as'],'attributes':_0x2a49a9[_0x7416('0x1e')]};}):[]};}):[]};}):[]:[]})['then'](function(_0xa19cb){var _0x41cb02=[];for(var _0x310a12=0x0;_0x310a12<_0xa19cb['length'];_0x310a12+=0x1){_0x41cb02[_0x7416('0x36')](_0xa19cb[_0x310a12][_0x7416('0x43')](_0x4be89b[_0x7416('0x29')],{'transaction':_0x13b763}));}return BPromise[_0x7416('0x37')](_0x41cb02);});})[_0x7416('0xd')](function(_0x1d7d9f){logger[_0x7416('0xe')]('GetContactRecallMe',_0x4be89b);logger[_0x7416('0x10')](_0x7416('0x41'),_0x4be89b,JSON[_0x7416('0x12')](_0x1d7d9f));_0x9f857f(_0x1d7d9f);})[_0x7416('0x18')](function(_0x16ae0b){logger[_0x7416('0x13')](_0x7416('0x41'),_0x16ae0b[_0x7416('0x16')],_0x4be89b);_0x3a4fc6(_0x545536[_0x7416('0x13')](0x1f4,_0x16ae0b[_0x7416('0x16')]));});});});};exports['GetCmHopperPreview']=function(_0x3abd17){var _0x5f558c=this;return new Promise(function(_0x10d525,_0x4b872e){db[_0x7416('0x2b')][_0x7416('0x42')]()[_0x7416('0xd')](function(_0x2d1c25){return db[_0x7416('0x1a')]['findAll']({'raw':_0x3abd17[_0x7416('0x1c')]?_0x3abd17[_0x7416('0x1c')]['raw']===undefined?!![]:![]:!![],'where':_0x3abd17['options']?_0x3abd17[_0x7416('0x1c')][_0x7416('0x1d')]||null:null,'attributes':_0x3abd17['options']?_0x3abd17[_0x7416('0x1c')][_0x7416('0x1e')]||null:null,'limit':_0x3abd17[_0x7416('0x1c')]?_0x3abd17[_0x7416('0x1c')]['limit']||null:null,'include':_0x3abd17['options']?_0x3abd17[_0x7416('0x1c')][_0x7416('0x20')]?_[_0x7416('0x21')](_0x3abd17[_0x7416('0x1c')][_0x7416('0x20')],function(_0x2537dd){return{'model':db[_0x2537dd['model']],'as':_0x2537dd['as'],'attributes':_0x2537dd['as']===_0x7416('0x31')?_[_0x7416('0x44')](_0x2d1c25):_0x2537dd[_0x7416('0x1e')],'include':_0x2537dd[_0x7416('0x20')]?_[_0x7416('0x21')](_0x2537dd[_0x7416('0x20')],function(_0x2c6fd6){return{'model':db[_0x2c6fd6['model']],'as':_0x2c6fd6['as'],'attributes':_0x2c6fd6[_0x7416('0x1e')],'include':_0x2c6fd6['include']?_[_0x7416('0x21')](_0x2c6fd6[_0x7416('0x20')],function(_0x440cf7){return{'model':db[_0x440cf7[_0x7416('0x22')]],'as':_0x440cf7['as'],'attributes':_0x440cf7[_0x7416('0x1e')]};}):[]};}):[]};}):[]:[]})[_0x7416('0xd')](function(_0x2486be){logger[_0x7416('0xe')]('GetCmHopper',_0x3abd17);logger['debug'](_0x7416('0x19'),_0x3abd17,JSON[_0x7416('0x12')](_0x2486be));_0x10d525(_0x2486be);})[_0x7416('0x18')](function(_0x1ba5ed){logger[_0x7416('0x13')](_0x7416('0x19'),_0x1ba5ed['message'],_0x3abd17);_0x4b872e(_0x5f558c[_0x7416('0x13')](0x1f4,_0x1ba5ed['message']));});});});};