Built motion from commit (unavailable).|2.3.1
[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 _0x875c=['CmHopper,\x20%s,\x20%s','message','result','catch','CmHopper','findAll','options','raw','where','attributes','limit','include','model','map','info','GetCmHopper','stringify','find','ShowCmHopper','CreateCmHopper','create','body','debug','UpdateCmHopper','DestroyCmHopper','destroy','GetContactDialer','describe','sequelize','transaction','order','UPDATE','CmContact','Contact','keys','push','MoveContactManagedDialer','CmHopperFinal','COUNT','format','YYYY-MM-DD\x20HH:mm:ss','\x20,\x201,\x20null','contactsRescheduled','CountReScheduled','GetContactRecallMe','UserId','LOCK','update','all','util','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','http','request','then','CmHopper,\x20%s,\x20%s,\x20%s','request\x20sent','error','code'];(function(_0x1caf6a,_0x26a5bf){var _0x1bf493=function(_0x3982f5){while(--_0x3982f5){_0x1caf6a['push'](_0x1caf6a['shift']());}};_0x1bf493(++_0x26a5bf);}(_0x875c,0x1ab));var _0xc875=function(_0x32a9b9,_0x535fd1){_0x32a9b9=_0x32a9b9-0x0;var _0x2f53ec=_0x875c[_0x32a9b9];return _0x2f53ec;};'use strict';var _=require('lodash');var util=require(_0xc875('0x0'));var moment=require('moment');var BPromise=require(_0xc875('0x1'));var rs=require(_0xc875('0x2'));var fs=require('fs');var Redis=require(_0xc875('0x3'));var db=require(_0xc875('0x4'))['db'];var utils=require(_0xc875('0x5'));var logger=require(_0xc875('0x6'))('rpc');var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson['client'][_0xc875('0x7')]({'port':0x232a});function respondWithRpcPromise(_0x6889dd,_0x386e21,_0x50dd4e){return new BPromise(function(_0x358979,_0x2db092){return client[_0xc875('0x8')](_0x6889dd,_0x50dd4e)[_0xc875('0x9')](function(_0x573386){logger['info']('CmHopper,\x20%s,\x20%s',_0x386e21,'request\x20sent');logger['debug'](_0xc875('0xa'),_0x386e21,_0xc875('0xb'),JSON['stringify'](_0x573386));if(_0x573386[_0xc875('0xc')]){if(_0x573386[_0xc875('0xc')][_0xc875('0xd')]===0x1f4){logger[_0xc875('0xc')](_0xc875('0xe'),_0x386e21,_0x573386[_0xc875('0xc')][_0xc875('0xf')]);return _0x2db092(_0x573386[_0xc875('0xc')][_0xc875('0xf')]);}logger[_0xc875('0xc')](_0xc875('0xe'),_0x386e21,_0x573386[_0xc875('0xc')]['message']);return _0x358979(_0x573386[_0xc875('0xc')]['message']);}else{logger['info']('CmHopper,\x20%s,\x20%s',_0x386e21,_0xc875('0xb'));_0x358979(_0x573386[_0xc875('0x10')][_0xc875('0xf')]);}})[_0xc875('0x11')](function(_0x4a5ca5){logger[_0xc875('0xc')](_0xc875('0xe'),_0x386e21,_0x4a5ca5);_0x2db092(_0x4a5ca5);});});}exports['GetCmHopper']=function(_0x3a22b4){var _0x54fc78=this;return new Promise(function(_0x3496a7,_0x2aed52){return db[_0xc875('0x12')][_0xc875('0x13')]({'raw':_0x3a22b4[_0xc875('0x14')]?_0x3a22b4[_0xc875('0x14')][_0xc875('0x15')]===undefined?!![]:![]:!![],'where':_0x3a22b4['options']?_0x3a22b4[_0xc875('0x14')][_0xc875('0x16')]||null:null,'attributes':_0x3a22b4['options']?_0x3a22b4[_0xc875('0x14')][_0xc875('0x17')]||null:null,'limit':_0x3a22b4[_0xc875('0x14')]?_0x3a22b4[_0xc875('0x14')][_0xc875('0x18')]||null:null,'include':_0x3a22b4[_0xc875('0x14')]?_0x3a22b4['options'][_0xc875('0x19')]?_['map'](_0x3a22b4[_0xc875('0x14')]['include'],function(_0x37e27c){return{'model':db[_0x37e27c[_0xc875('0x1a')]],'as':_0x37e27c['as'],'attributes':_0x37e27c['attributes'],'include':_0x37e27c[_0xc875('0x19')]?_[_0xc875('0x1b')](_0x37e27c[_0xc875('0x19')],function(_0x340323){return{'model':db[_0x340323[_0xc875('0x1a')]],'as':_0x340323['as'],'attributes':_0x340323['attributes'],'include':_0x340323[_0xc875('0x19')]?_[_0xc875('0x1b')](_0x340323['include'],function(_0x4355f4){return{'model':db[_0x4355f4[_0xc875('0x1a')]],'as':_0x4355f4['as'],'attributes':_0x4355f4[_0xc875('0x17')]};}):[]};}):[]};}):[]:[]})[_0xc875('0x9')](function(_0x549cd9){logger[_0xc875('0x1c')](_0xc875('0x1d'),_0x3a22b4);logger['debug'](_0xc875('0x1d'),_0x3a22b4,JSON[_0xc875('0x1e')](_0x549cd9));_0x3496a7(_0x549cd9);})[_0xc875('0x11')](function(_0x38229b){logger[_0xc875('0xc')](_0xc875('0x1d'),_0x38229b[_0xc875('0xf')],_0x3a22b4);_0x2aed52(_0x54fc78[_0xc875('0xc')](0x1f4,_0x38229b[_0xc875('0xf')]));});});};exports['ShowCmHopper']=function(_0x5aacb2){var _0x94f483=this;return new Promise(function(_0x17bbdf,_0x4016e4){return db['CmHopper'][_0xc875('0x1f')]({'raw':_0x5aacb2[_0xc875('0x14')]?_0x5aacb2[_0xc875('0x14')][_0xc875('0x15')]===undefined?!![]:![]:!![],'where':_0x5aacb2[_0xc875('0x14')]?_0x5aacb2['options']['where']||null:null,'attributes':_0x5aacb2[_0xc875('0x14')]?_0x5aacb2[_0xc875('0x14')][_0xc875('0x17')]||null:null,'include':_0x5aacb2[_0xc875('0x14')]?_0x5aacb2[_0xc875('0x14')][_0xc875('0x19')]?_['map'](_0x5aacb2[_0xc875('0x14')][_0xc875('0x19')],function(_0x13b2a6){return{'model':db[_0x13b2a6[_0xc875('0x1a')]],'as':_0x13b2a6['as'],'attributes':_0x13b2a6[_0xc875('0x17')],'include':_0x13b2a6[_0xc875('0x19')]?_['map'](_0x13b2a6[_0xc875('0x19')],function(_0x1d8f7d){return{'model':db[_0x1d8f7d[_0xc875('0x1a')]],'as':_0x1d8f7d['as'],'attributes':_0x1d8f7d[_0xc875('0x17')],'include':_0x1d8f7d[_0xc875('0x19')]?_[_0xc875('0x1b')](_0x1d8f7d[_0xc875('0x19')],function(_0x398d00){return{'model':db[_0x398d00[_0xc875('0x1a')]],'as':_0x398d00['as'],'attributes':_0x398d00[_0xc875('0x17')]};}):[]};}):[]};}):[]:[]})[_0xc875('0x9')](function(_0x4c582a){logger[_0xc875('0x1c')](_0xc875('0x20'),_0x5aacb2);logger['debug'](_0xc875('0x20'),_0x5aacb2,JSON[_0xc875('0x1e')](_0x4c582a));_0x17bbdf(_0x4c582a);})['catch'](function(_0x233e97){logger['error'](_0xc875('0x20'),_0x233e97[_0xc875('0xf')],_0x5aacb2);_0x4016e4(_0x94f483['error'](0x1f4,_0x233e97[_0xc875('0xf')]));});});};exports[_0xc875('0x21')]=function(_0x3cd809){var _0x4761d2=this;return new Promise(function(_0x3a603a,_0x30c1f2){return db[_0xc875('0x12')][_0xc875('0x22')](_0x3cd809[_0xc875('0x23')],{'raw':_0x3cd809['options']?_0x3cd809[_0xc875('0x14')][_0xc875('0x15')]===undefined?!![]:![]:!![]})[_0xc875('0x9')](function(_0x3d7ab9){logger['info'](_0xc875('0x21'),_0x3cd809);logger[_0xc875('0x24')](_0xc875('0x21'),_0x3cd809,JSON['stringify'](_0x3d7ab9));_0x3a603a(_0x3d7ab9);})[_0xc875('0x11')](function(_0x2252cc){logger['error'](_0xc875('0x21'),_0x2252cc[_0xc875('0xf')],_0x3cd809);_0x30c1f2(_0x4761d2[_0xc875('0xc')](0x1f4,_0x2252cc[_0xc875('0xf')]));});});};exports[_0xc875('0x25')]=function(_0x4d08aa){var _0x4de181=this;return new Promise(function(_0x4bc8b8,_0x3efb2f){return db[_0xc875('0x12')]['update'](_0x4d08aa[_0xc875('0x23')],{'raw':_0x4d08aa[_0xc875('0x14')]?_0x4d08aa['options'][_0xc875('0x15')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x4d08aa[_0xc875('0x14')]?_0x4d08aa[_0xc875('0x14')][_0xc875('0x16')]||null:null,'attributes':_0x4d08aa[_0xc875('0x14')]?_0x4d08aa[_0xc875('0x14')]['attributes']||null:null,'limit':_0x4d08aa[_0xc875('0x14')]?_0x4d08aa[_0xc875('0x14')][_0xc875('0x18')]||null:null})[_0xc875('0x9')](function(_0x27aa60){logger[_0xc875('0x1c')](_0xc875('0x25'),_0x4d08aa);logger[_0xc875('0x24')](_0xc875('0x25'),_0x4d08aa,JSON[_0xc875('0x1e')](_0x27aa60));_0x4bc8b8(_0x27aa60);})[_0xc875('0x11')](function(_0x394299){logger[_0xc875('0xc')]('UpdateCmHopper',_0x394299[_0xc875('0xf')],_0x4d08aa);_0x3efb2f(_0x4de181[_0xc875('0xc')](0x1f4,_0x394299[_0xc875('0xf')]));});});};exports[_0xc875('0x26')]=function(_0x10eaa7){var _0x44c775=this;return new Promise(function(_0x412570,_0x58d1ac){return db[_0xc875('0x12')][_0xc875('0x27')]({'where':_0x10eaa7[_0xc875('0x14')]?_0x10eaa7[_0xc875('0x14')]['where']||null:null})['then'](function(_0x461b02){logger[_0xc875('0x1c')](_0xc875('0x26'),_0x10eaa7);logger[_0xc875('0x24')](_0xc875('0x26'),_0x10eaa7,JSON['stringify'](_0x461b02));_0x412570(_0x461b02);})['catch'](function(_0x5ea5cb){logger[_0xc875('0xc')](_0xc875('0x26'),_0x5ea5cb[_0xc875('0xf')],_0x10eaa7);_0x58d1ac(_0x44c775[_0xc875('0xc')](0x1f4,_0x5ea5cb[_0xc875('0xf')]));});});};exports[_0xc875('0x28')]=function(_0x21869d){var _0xa02c09=this;return new Promise(function(_0xccd432,_0x1efa56){return db['CmContact'][_0xc875('0x29')]()[_0xc875('0x9')](function(_0x213812){return db[_0xc875('0x2a')][_0xc875('0x2b')](function(_0x494c95){return db[_0xc875('0x12')][_0xc875('0x13')]({'where':_0x21869d[_0xc875('0x14')]?_0x21869d[_0xc875('0x14')]['where']||null:null,'attributes':_0x21869d[_0xc875('0x14')]?_0x21869d[_0xc875('0x14')][_0xc875('0x17')]||null:null,'limit':_0x21869d['options']?_0x21869d[_0xc875('0x14')]['limit']||null:null,'order':_0x21869d[_0xc875('0x14')]?_0x21869d[_0xc875('0x14')][_0xc875('0x2c')]||null:null,'transaction':_0x494c95,'lock':_0x494c95['LOCK'][_0xc875('0x2d')],'include':[{'model':db[_0xc875('0x2e')],'as':_0xc875('0x2f'),'attributes':_[_0xc875('0x30')](_0x213812)}]})[_0xc875('0x9')](function(_0x1f8b49){var _0x42ba36=[];for(var _0x6ee8e4=0x0;_0x6ee8e4<_0x1f8b49['length'];_0x6ee8e4+=0x1){_0x42ba36[_0xc875('0x31')](_0x1f8b49[_0x6ee8e4]['update'](_0x21869d['body'],{'transaction':_0x494c95}));}return BPromise['all'](_0x42ba36);});})[_0xc875('0x9')](function(_0x1d3fa4){logger[_0xc875('0x1c')](_0xc875('0x28'),_0x21869d);logger['debug'](_0xc875('0x28'),_0x21869d,JSON[_0xc875('0x1e')](_0x1d3fa4));_0xccd432(_0x1d3fa4);})[_0xc875('0x11')](function(_0x3f642b){logger['error'](_0xc875('0x28'),_0x3f642b['message'],_0x21869d);_0x1efa56(_0xa02c09[_0xc875('0xc')](0x1f4,_0x3f642b[_0xc875('0xf')]));});});});};exports[_0xc875('0x32')]=function(_0x16bac6){var _0x3a67f8=this;return new Promise(function(_0x400a6b,_0xd97af9){return db[_0xc875('0x2a')][_0xc875('0x2b')](function(_0x43d518){return db[_0xc875('0x33')][_0xc875('0x22')](_0x16bac6[_0xc875('0x23')],{'raw':_0x16bac6[_0xc875('0x14')]?_0x16bac6[_0xc875('0x14')][_0xc875('0x15')]===undefined?!![]:![]:!![],'transaction':_0x43d518})[_0xc875('0x9')](function(){return db[_0xc875('0x12')][_0xc875('0x27')]({'where':_0x16bac6[_0xc875('0x14')]?_0x16bac6[_0xc875('0x14')][_0xc875('0x16')]||null:null,'transaction':_0x43d518});});})[_0xc875('0x9')](function(_0x2f47d5){logger['info']('MoveContactManagedDialer',_0x16bac6);logger[_0xc875('0x24')](_0xc875('0x32'),_0x16bac6,JSON[_0xc875('0x1e')](_0x2f47d5));_0x400a6b(_0x2f47d5);})[_0xc875('0x11')](function(_0x24d8d3){logger[_0xc875('0xc')](_0xc875('0x32'),_0x24d8d3['message'],_0x16bac6);_0xd97af9(_0x3a67f8[_0xc875('0xc')](0x1f4,_0x24d8d3[_0xc875('0xf')]));});});};exports['CountReScheduled']=function(_0x148dcd){var _0x3c06c2=this;return new Promise(function(_0x1a19f9,_0x36c520){return db[_0xc875('0x12')]['findAll']({'raw':_0x148dcd[_0xc875('0x14')]?_0x148dcd[_0xc875('0x14')]['raw']===undefined?!![]:![]:!![],'where':_0x148dcd[_0xc875('0x14')]?_0x148dcd[_0xc875('0x14')][_0xc875('0x16')]||null:null,'attributes':[[db[_0xc875('0x2a')]['fn'](_0xc875('0x34'),db[_0xc875('0x2a')]['fn']('IF',db['sequelize']['literal']('`scheduledat`\x20>=\x20'+util[_0xc875('0x35')]('\x22%s\x22',moment()[_0xc875('0x35')](_0xc875('0x36')))+_0xc875('0x37')))),_0xc875('0x38')]]})[_0xc875('0x9')](function(_0x405d5a){logger[_0xc875('0x1c')](_0xc875('0x39'),_0x148dcd);logger[_0xc875('0x24')](_0xc875('0x39'),_0x148dcd,JSON['stringify'](_0x405d5a));_0x1a19f9(_0x405d5a);})[_0xc875('0x11')](function(_0x1824ab){logger[_0xc875('0xc')]('CountReScheduled',_0x1824ab['message'],_0x148dcd);_0x36c520(_0x3c06c2['error'](0x1f4,_0x1824ab['message']));});});};exports[_0xc875('0x3a')]=function(_0x2bfe3b){var _0x2b4f56=this;return new Promise(function(_0xb5dcfa,_0x3b69c6){return db['CmContact']['describe']()['then'](function(_0x2e7386){return db[_0xc875('0x2a')]['transaction'](function(_0x5379e7){return db['CmHopper'][_0xc875('0x13')]({'where':_0x2bfe3b['options']?_0x2bfe3b[_0xc875('0x14')]['where']||null:null,'attributes':_0x2bfe3b['options']?_0x2bfe3b['options'][_0xc875('0x17')]||null:null,'limit':0x1,'order':_0x2bfe3b[_0xc875('0x14')]?_0x2bfe3b[_0xc875('0x14')][_0xc875('0x2c')]||null:null,'group':db[_0xc875('0x12')][_0xc875('0x3b')],'transaction':_0x5379e7,'lock':_0x5379e7[_0xc875('0x3c')][_0xc875('0x2d')],'include':_0x2bfe3b['options']?_0x2bfe3b[_0xc875('0x14')][_0xc875('0x19')]?_[_0xc875('0x1b')](_0x2bfe3b[_0xc875('0x14')]['include'],function(_0x2b6c59){return{'model':db[_0x2b6c59['model']],'as':_0x2b6c59['as'],'attributes':_0x2b6c59[_0xc875('0x17')],'include':_0x2b6c59[_0xc875('0x19')]?_[_0xc875('0x1b')](_0x2b6c59[_0xc875('0x19')],function(_0x44ebb3){return{'model':db[_0x44ebb3[_0xc875('0x1a')]],'as':_0x44ebb3['as'],'attributes':_0x44ebb3[_0xc875('0x17')],'include':_0x44ebb3[_0xc875('0x19')]?_[_0xc875('0x1b')](_0x44ebb3[_0xc875('0x19')],function(_0x55e7ee){return{'model':db[_0x55e7ee[_0xc875('0x1a')]],'as':_0x55e7ee['as'],'attributes':_0x55e7ee[_0xc875('0x17')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x411c9a){var _0x2e6855=[];for(var _0x41c213=0x0;_0x41c213<_0x411c9a['length'];_0x41c213+=0x1){_0x2e6855['push'](_0x411c9a[_0x41c213][_0xc875('0x3d')](_0x2bfe3b[_0xc875('0x23')],{'transaction':_0x5379e7}));}return BPromise[_0xc875('0x3e')](_0x2e6855);});})['then'](function(_0x5b0351){logger['info']('GetContactRecallMe',_0x2bfe3b);logger['debug'](_0xc875('0x3a'),_0x2bfe3b,JSON[_0xc875('0x1e')](_0x5b0351));_0xb5dcfa(_0x5b0351);})['catch'](function(_0x143638){logger[_0xc875('0xc')]('GetContactRecallMe',_0x143638[_0xc875('0xf')],_0x2bfe3b);_0x3b69c6(_0x2b4f56[_0xc875('0xc')](0x1f4,_0x143638[_0xc875('0xf')]));});});});};