92e1b787920d60997c142d1b8ab685ad42a99493
[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 _0x3574=['push','body','all','MoveContactManagedDialer','sequelize','transaction','CmHopperFinal','destroy','CountReScheduled','COUNT','`scheduledat`\x20>=\x20','format','\x22%s\x22','YYYY-MM-DD\x20HH:mm:ss','contactsRescheduled','GetContactRecallMe','UserId','lodash','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise','client','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','raw','options','limit','include','map','model','attributes','ShowCmHopper','find','where','CreateCmHopper','create','UpdateCmHopper','update','DestroyCmHopper','GetContactDialer','CmContact','describe','order','LOCK','Contact','keys','length'];(function(_0x26d2e6,_0x52562f){var _0x250a03=function(_0x599572){while(--_0x599572){_0x26d2e6['push'](_0x26d2e6['shift']());}};_0x250a03(++_0x52562f);}(_0x3574,0x99));var _0x4357=function(_0x1805b0,_0x37b3b1){_0x1805b0=_0x1805b0-0x0;var _0x1f2a5f=_0x3574[_0x1805b0];return _0x1f2a5f;};'use strict';var _=require(_0x4357('0x0'));var util=require('util');var moment=require(_0x4357('0x1'));var BPromise=require(_0x4357('0x2'));var rs=require(_0x4357('0x3'));var fs=require('fs');var Redis=require(_0x4357('0x4'));var db=require(_0x4357('0x5'))['db'];var utils=require(_0x4357('0x6'));var logger=require(_0x4357('0x7'))(_0x4357('0x8'));var config=require('../../config/environment');var jayson=require(_0x4357('0x9'));var client=jayson[_0x4357('0xa')][_0x4357('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x3df829,_0x6aff86,_0x5de91d){return new BPromise(function(_0x2af221,_0x1405fd){return client[_0x4357('0xc')](_0x3df829,_0x5de91d)[_0x4357('0xd')](function(_0x366c97){logger[_0x4357('0xe')](_0x4357('0xf'),_0x6aff86,_0x4357('0x10'));logger[_0x4357('0x11')](_0x4357('0x12'),_0x6aff86,_0x4357('0x10'),JSON[_0x4357('0x13')](_0x366c97));if(_0x366c97['error']){if(_0x366c97[_0x4357('0x14')][_0x4357('0x15')]===0x1f4){logger[_0x4357('0x14')]('CmHopper,\x20%s,\x20%s',_0x6aff86,_0x366c97[_0x4357('0x14')]['message']);return _0x1405fd(_0x366c97[_0x4357('0x14')][_0x4357('0x16')]);}logger[_0x4357('0x14')]('CmHopper,\x20%s,\x20%s',_0x6aff86,_0x366c97[_0x4357('0x14')][_0x4357('0x16')]);return _0x2af221(_0x366c97[_0x4357('0x14')][_0x4357('0x16')]);}else{logger[_0x4357('0xe')](_0x4357('0xf'),_0x6aff86,_0x4357('0x10'));_0x2af221(_0x366c97[_0x4357('0x17')]['message']);}})[_0x4357('0x18')](function(_0x57204d){logger['error'](_0x4357('0xf'),_0x6aff86,_0x57204d);_0x1405fd(_0x57204d);});});}exports[_0x4357('0x19')]=function(_0x4d9e02){var _0xd8bf34=this;return new Promise(function(_0x800700,_0x3e731c){return db[_0x4357('0x1a')][_0x4357('0x1b')]({'raw':_0x4d9e02['options']?_0x4d9e02['options'][_0x4357('0x1c')]===undefined?!![]:![]:!![],'where':_0x4d9e02['options']?_0x4d9e02[_0x4357('0x1d')]['where']||null:null,'attributes':_0x4d9e02[_0x4357('0x1d')]?_0x4d9e02[_0x4357('0x1d')]['attributes']||null:null,'limit':_0x4d9e02[_0x4357('0x1d')]?_0x4d9e02[_0x4357('0x1d')][_0x4357('0x1e')]||null:null,'include':_0x4d9e02[_0x4357('0x1d')]?_0x4d9e02[_0x4357('0x1d')][_0x4357('0x1f')]?_[_0x4357('0x20')](_0x4d9e02[_0x4357('0x1d')][_0x4357('0x1f')],function(_0x1acd67){return{'model':db[_0x1acd67[_0x4357('0x21')]],'as':_0x1acd67['as'],'attributes':_0x1acd67[_0x4357('0x22')],'include':_0x1acd67['include']?_[_0x4357('0x20')](_0x1acd67[_0x4357('0x1f')],function(_0xdc964c){return{'model':db[_0xdc964c['model']],'as':_0xdc964c['as'],'attributes':_0xdc964c['attributes'],'include':_0xdc964c[_0x4357('0x1f')]?_['map'](_0xdc964c[_0x4357('0x1f')],function(_0x15c4eb){return{'model':db[_0x15c4eb[_0x4357('0x21')]],'as':_0x15c4eb['as'],'attributes':_0x15c4eb[_0x4357('0x22')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x31be80){logger[_0x4357('0xe')](_0x4357('0x19'),_0x4d9e02);logger[_0x4357('0x11')](_0x4357('0x19'),_0x4d9e02,JSON[_0x4357('0x13')](_0x31be80));_0x800700(_0x31be80);})[_0x4357('0x18')](function(_0x4e2bdc){logger[_0x4357('0x14')](_0x4357('0x19'),_0x4e2bdc[_0x4357('0x16')],_0x4d9e02);_0x3e731c(_0xd8bf34['error'](0x1f4,_0x4e2bdc[_0x4357('0x16')]));});});};exports[_0x4357('0x23')]=function(_0x13f7c7){var _0x51500c=this;return new Promise(function(_0x114b4b,_0x3103ad){return db[_0x4357('0x1a')][_0x4357('0x24')]({'raw':_0x13f7c7[_0x4357('0x1d')]?_0x13f7c7[_0x4357('0x1d')]['raw']===undefined?!![]:![]:!![],'where':_0x13f7c7[_0x4357('0x1d')]?_0x13f7c7['options'][_0x4357('0x25')]||null:null,'attributes':_0x13f7c7[_0x4357('0x1d')]?_0x13f7c7[_0x4357('0x1d')][_0x4357('0x22')]||null:null,'include':_0x13f7c7[_0x4357('0x1d')]?_0x13f7c7[_0x4357('0x1d')][_0x4357('0x1f')]?_[_0x4357('0x20')](_0x13f7c7[_0x4357('0x1d')][_0x4357('0x1f')],function(_0xc4ebed){return{'model':db[_0xc4ebed[_0x4357('0x21')]],'as':_0xc4ebed['as'],'attributes':_0xc4ebed[_0x4357('0x22')],'include':_0xc4ebed['include']?_[_0x4357('0x20')](_0xc4ebed[_0x4357('0x1f')],function(_0x4d0405){return{'model':db[_0x4d0405[_0x4357('0x21')]],'as':_0x4d0405['as'],'attributes':_0x4d0405[_0x4357('0x22')],'include':_0x4d0405['include']?_[_0x4357('0x20')](_0x4d0405[_0x4357('0x1f')],function(_0x30bf76){return{'model':db[_0x30bf76[_0x4357('0x21')]],'as':_0x30bf76['as'],'attributes':_0x30bf76[_0x4357('0x22')]};}):[]};}):[]};}):[]:[]})[_0x4357('0xd')](function(_0x4b55fb){logger['info']('ShowCmHopper',_0x13f7c7);logger[_0x4357('0x11')](_0x4357('0x23'),_0x13f7c7,JSON[_0x4357('0x13')](_0x4b55fb));_0x114b4b(_0x4b55fb);})[_0x4357('0x18')](function(_0x228a3f){logger['error'](_0x4357('0x23'),_0x228a3f[_0x4357('0x16')],_0x13f7c7);_0x3103ad(_0x51500c[_0x4357('0x14')](0x1f4,_0x228a3f[_0x4357('0x16')]));});});};exports[_0x4357('0x26')]=function(_0x5f379d){var _0xb9b3c4=this;return new Promise(function(_0x4a15ca,_0x41c365){return db[_0x4357('0x1a')][_0x4357('0x27')](_0x5f379d['body'],{'raw':_0x5f379d['options']?_0x5f379d[_0x4357('0x1d')]['raw']===undefined?!![]:![]:!![]})['then'](function(_0x1f6158){logger[_0x4357('0xe')](_0x4357('0x26'),_0x5f379d);logger[_0x4357('0x11')](_0x4357('0x26'),_0x5f379d,JSON[_0x4357('0x13')](_0x1f6158));_0x4a15ca(_0x1f6158);})[_0x4357('0x18')](function(_0x48a42e){logger[_0x4357('0x14')](_0x4357('0x26'),_0x48a42e[_0x4357('0x16')],_0x5f379d);_0x41c365(_0xb9b3c4[_0x4357('0x14')](0x1f4,_0x48a42e['message']));});});};exports[_0x4357('0x28')]=function(_0xb337f7){var _0x5031f9=this;return new Promise(function(_0x3e4110,_0x436179){return db[_0x4357('0x1a')][_0x4357('0x29')](_0xb337f7['body'],{'raw':_0xb337f7[_0x4357('0x1d')]?_0xb337f7['options'][_0x4357('0x1c')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0xb337f7[_0x4357('0x1d')]?_0xb337f7[_0x4357('0x1d')][_0x4357('0x25')]||null:null,'attributes':_0xb337f7[_0x4357('0x1d')]?_0xb337f7['options'][_0x4357('0x22')]||null:null,'limit':_0xb337f7['options']?_0xb337f7[_0x4357('0x1d')][_0x4357('0x1e')]||null:null})[_0x4357('0xd')](function(_0x2c9c34){logger['info'](_0x4357('0x28'),_0xb337f7);logger[_0x4357('0x11')](_0x4357('0x28'),_0xb337f7,JSON[_0x4357('0x13')](_0x2c9c34));_0x3e4110(_0x2c9c34);})['catch'](function(_0x4f2bc6){logger[_0x4357('0x14')](_0x4357('0x28'),_0x4f2bc6[_0x4357('0x16')],_0xb337f7);_0x436179(_0x5031f9[_0x4357('0x14')](0x1f4,_0x4f2bc6['message']));});});};exports[_0x4357('0x2a')]=function(_0x5d5a16){var _0x43c973=this;return new Promise(function(_0x2e5857,_0x4fe410){return db[_0x4357('0x1a')]['destroy']({'where':_0x5d5a16[_0x4357('0x1d')]?_0x5d5a16[_0x4357('0x1d')][_0x4357('0x25')]||null:null})[_0x4357('0xd')](function(_0x337142){logger[_0x4357('0xe')](_0x4357('0x2a'),_0x5d5a16);logger['debug'](_0x4357('0x2a'),_0x5d5a16,JSON[_0x4357('0x13')](_0x337142));_0x2e5857(_0x337142);})[_0x4357('0x18')](function(_0xf50eb3){logger[_0x4357('0x14')](_0x4357('0x2a'),_0xf50eb3['message'],_0x5d5a16);_0x4fe410(_0x43c973[_0x4357('0x14')](0x1f4,_0xf50eb3[_0x4357('0x16')]));});});};exports[_0x4357('0x2b')]=function(_0x1f10df){var _0x17e5d4=this;return new Promise(function(_0x362a10,_0x395271){return db[_0x4357('0x2c')][_0x4357('0x2d')]()[_0x4357('0xd')](function(_0x402a65){return db['sequelize']['transaction'](function(_0x7e9d8a){return db[_0x4357('0x1a')][_0x4357('0x1b')]({'where':_0x1f10df[_0x4357('0x1d')]?_0x1f10df[_0x4357('0x1d')][_0x4357('0x25')]||null:null,'attributes':_0x1f10df[_0x4357('0x1d')]?_0x1f10df[_0x4357('0x1d')][_0x4357('0x22')]||null:null,'limit':_0x1f10df[_0x4357('0x1d')]?_0x1f10df[_0x4357('0x1d')][_0x4357('0x1e')]||null:null,'order':_0x1f10df[_0x4357('0x1d')]?_0x1f10df[_0x4357('0x1d')][_0x4357('0x2e')]||null:null,'transaction':_0x7e9d8a,'lock':_0x7e9d8a[_0x4357('0x2f')]['UPDATE'],'include':[{'model':db[_0x4357('0x2c')],'as':_0x4357('0x30'),'attributes':_[_0x4357('0x31')](_0x402a65)}]})[_0x4357('0xd')](function(_0x3a258f){var _0x264a01=[];for(var _0x4e378c=0x0;_0x4e378c<_0x3a258f[_0x4357('0x32')];_0x4e378c+=0x1){_0x264a01[_0x4357('0x33')](_0x3a258f[_0x4e378c][_0x4357('0x29')](_0x1f10df[_0x4357('0x34')],{'transaction':_0x7e9d8a}));}return BPromise[_0x4357('0x35')](_0x264a01);});})[_0x4357('0xd')](function(_0x5e8c0f){logger['info'](_0x4357('0x2b'),_0x1f10df);logger['debug'](_0x4357('0x2b'),_0x1f10df,JSON['stringify'](_0x5e8c0f));_0x362a10(_0x5e8c0f);})[_0x4357('0x18')](function(_0xaff146){logger['error'](_0x4357('0x2b'),_0xaff146[_0x4357('0x16')],_0x1f10df);_0x395271(_0x17e5d4['error'](0x1f4,_0xaff146[_0x4357('0x16')]));});});});};exports[_0x4357('0x36')]=function(_0xbb3b78){var _0x3b1ea2=this;return new Promise(function(_0x386331,_0x2b5058){return db[_0x4357('0x37')][_0x4357('0x38')](function(_0x4aa355){return db[_0x4357('0x39')][_0x4357('0x27')](_0xbb3b78['body'],{'raw':_0xbb3b78['options']?_0xbb3b78[_0x4357('0x1d')][_0x4357('0x1c')]===undefined?!![]:![]:!![],'transaction':_0x4aa355})['then'](function(){return db[_0x4357('0x1a')][_0x4357('0x3a')]({'where':_0xbb3b78[_0x4357('0x1d')]?_0xbb3b78[_0x4357('0x1d')][_0x4357('0x25')]||null:null,'transaction':_0x4aa355});});})[_0x4357('0xd')](function(_0x50d723){logger[_0x4357('0xe')]('MoveContactManagedDialer',_0xbb3b78);logger[_0x4357('0x11')](_0x4357('0x36'),_0xbb3b78,JSON[_0x4357('0x13')](_0x50d723));_0x386331(_0x50d723);})['catch'](function(_0x346642){logger[_0x4357('0x14')](_0x4357('0x36'),_0x346642['message'],_0xbb3b78);_0x2b5058(_0x3b1ea2[_0x4357('0x14')](0x1f4,_0x346642[_0x4357('0x16')]));});});};exports[_0x4357('0x3b')]=function(_0x278636){var _0x1dcd2f=this;return new Promise(function(_0x62f059,_0x46cf3e){return db[_0x4357('0x1a')][_0x4357('0x1b')]({'raw':_0x278636['options']?_0x278636['options']['raw']===undefined?!![]:![]:!![],'where':_0x278636['options']?_0x278636[_0x4357('0x1d')][_0x4357('0x25')]||null:null,'attributes':[[db[_0x4357('0x37')]['fn'](_0x4357('0x3c'),db[_0x4357('0x37')]['fn']('IF',db['sequelize']['literal'](_0x4357('0x3d')+util[_0x4357('0x3e')](_0x4357('0x3f'),moment()[_0x4357('0x3e')](_0x4357('0x40')))+'\x20,\x201,\x20null'))),_0x4357('0x41')]]})[_0x4357('0xd')](function(_0x49b39b){logger[_0x4357('0xe')]('CountReScheduled',_0x278636);logger[_0x4357('0x11')](_0x4357('0x3b'),_0x278636,JSON['stringify'](_0x49b39b));_0x62f059(_0x49b39b);})['catch'](function(_0x2c90b6){logger[_0x4357('0x14')]('CountReScheduled',_0x2c90b6[_0x4357('0x16')],_0x278636);_0x46cf3e(_0x1dcd2f['error'](0x1f4,_0x2c90b6[_0x4357('0x16')]));});});};exports[_0x4357('0x42')]=function(_0xa87819){var _0x4f7454=this;return new Promise(function(_0x5af152,_0x45e503){return db[_0x4357('0x2c')][_0x4357('0x2d')]()['then'](function(_0x5050de){return db['sequelize']['transaction'](function(_0xcd61e8){return db[_0x4357('0x1a')][_0x4357('0x1b')]({'where':_0xa87819[_0x4357('0x1d')]?_0xa87819['options'][_0x4357('0x25')]||null:null,'attributes':_0xa87819[_0x4357('0x1d')]?_0xa87819['options'][_0x4357('0x22')]||null:null,'limit':0x1,'order':_0xa87819[_0x4357('0x1d')]?_0xa87819[_0x4357('0x1d')][_0x4357('0x2e')]||null:null,'group':db[_0x4357('0x1a')][_0x4357('0x43')],'transaction':_0xcd61e8,'lock':_0xcd61e8['LOCK']['UPDATE'],'include':_0xa87819[_0x4357('0x1d')]?_0xa87819['options'][_0x4357('0x1f')]?_['map'](_0xa87819[_0x4357('0x1d')][_0x4357('0x1f')],function(_0x4edc35){return{'model':db[_0x4edc35[_0x4357('0x21')]],'as':_0x4edc35['as'],'attributes':_0x4edc35['attributes'],'include':_0x4edc35[_0x4357('0x1f')]?_[_0x4357('0x20')](_0x4edc35[_0x4357('0x1f')],function(_0xbb0a54){return{'model':db[_0xbb0a54[_0x4357('0x21')]],'as':_0xbb0a54['as'],'attributes':_0xbb0a54[_0x4357('0x22')],'include':_0xbb0a54[_0x4357('0x1f')]?_[_0x4357('0x20')](_0xbb0a54[_0x4357('0x1f')],function(_0x5214b3){return{'model':db[_0x5214b3[_0x4357('0x21')]],'as':_0x5214b3['as'],'attributes':_0x5214b3[_0x4357('0x22')]};}):[]};}):[]};}):[]:[]})[_0x4357('0xd')](function(_0x2e2ca2){var _0x378b4d=[];for(var _0x7fa59c=0x0;_0x7fa59c<_0x2e2ca2[_0x4357('0x32')];_0x7fa59c+=0x1){_0x378b4d[_0x4357('0x33')](_0x2e2ca2[_0x7fa59c][_0x4357('0x29')](_0xa87819[_0x4357('0x34')],{'transaction':_0xcd61e8}));}return BPromise[_0x4357('0x35')](_0x378b4d);});})[_0x4357('0xd')](function(_0x4be62d){logger['info'](_0x4357('0x42'),_0xa87819);logger['debug'](_0x4357('0x42'),_0xa87819,JSON[_0x4357('0x13')](_0x4be62d));_0x5af152(_0x4be62d);})[_0x4357('0x18')](function(_0x2b2ddd){logger[_0x4357('0x14')](_0x4357('0x42'),_0x2b2ddd['message'],_0xa87819);_0x45e503(_0x4f7454[_0x4357('0x14')](0x1f4,_0x2b2ddd[_0x4357('0x16')]));});});});};