c33fe0777b4e877ae943778e15f000fa5ba34e26
[motion2.git] / server / api / cmHopperHistory / cmHopperHistory.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 _0x34b2=['../../config/logger','rpc','../../config/environment','jayson/promise','client','request','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','CreateCmHopperHistory','CmHopperHistory','create','body','options','raw','then','AvgHandleTime','findAll','where','sequelize','COUNT','col','predictiveIntervalTotalCalls','literal','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','GetVoiceQueueHopperHistory','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','`state`\x20=\x204,\x201,\x20null','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','outboundAnswerAgiCallsDay','outboundReCallsDay','GetCampaignHopperHistory','ivrTotalCallsDays','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils'];(function(_0x57a424,_0x4057be){var _0x361d1a=function(_0x452864){while(--_0x452864){_0x57a424['push'](_0x57a424['shift']());}};_0x361d1a(++_0x4057be);}(_0x34b2,0x11c));var _0x234b=function(_0x14f6db,_0x4d9f26){_0x14f6db=_0x14f6db-0x0;var _0x45344d=_0x34b2[_0x14f6db];return _0x45344d;};'use strict';var _=require(_0x234b('0x0'));var util=require(_0x234b('0x1'));var moment=require(_0x234b('0x2'));var BPromise=require(_0x234b('0x3'));var rs=require(_0x234b('0x4'));var fs=require('fs');var Redis=require(_0x234b('0x5'));var db=require(_0x234b('0x6'))['db'];var utils=require(_0x234b('0x7'));var logger=require(_0x234b('0x8'))(_0x234b('0x9'));var config=require(_0x234b('0xa'));var jayson=require(_0x234b('0xb'));var client=jayson[_0x234b('0xc')]['http']({'port':0x232a});function respondWithRpcPromise(_0x52fac7,_0x5e71ac,_0x2eb07e){return new BPromise(function(_0x84f1f0,_0x153974){return client[_0x234b('0xd')](_0x52fac7,_0x2eb07e)['then'](function(_0x4f4899){logger[_0x234b('0xe')](_0x234b('0xf'),_0x5e71ac,_0x234b('0x10'));logger[_0x234b('0x11')](_0x234b('0x12'),_0x5e71ac,_0x234b('0x10'),JSON[_0x234b('0x13')](_0x4f4899));if(_0x4f4899[_0x234b('0x14')]){if(_0x4f4899[_0x234b('0x14')][_0x234b('0x15')]===0x1f4){logger[_0x234b('0x14')](_0x234b('0xf'),_0x5e71ac,_0x4f4899[_0x234b('0x14')]['message']);return _0x153974(_0x4f4899[_0x234b('0x14')][_0x234b('0x16')]);}logger['error'](_0x234b('0xf'),_0x5e71ac,_0x4f4899[_0x234b('0x14')]['message']);return _0x84f1f0(_0x4f4899[_0x234b('0x14')][_0x234b('0x16')]);}else{logger[_0x234b('0xe')](_0x234b('0xf'),_0x5e71ac,_0x234b('0x10'));_0x84f1f0(_0x4f4899[_0x234b('0x17')][_0x234b('0x16')]);}})[_0x234b('0x18')](function(_0x1fb3d8){logger['error'](_0x234b('0xf'),_0x5e71ac,_0x1fb3d8);_0x153974(_0x1fb3d8);});});}exports[_0x234b('0x19')]=function(_0x18153a){var _0x22696d=this;return new Promise(function(_0x4424a1,_0x530e4a){return db[_0x234b('0x1a')][_0x234b('0x1b')](_0x18153a[_0x234b('0x1c')],{'raw':_0x18153a[_0x234b('0x1d')]?_0x18153a['options'][_0x234b('0x1e')]===undefined?!![]:![]:!![]})[_0x234b('0x1f')](function(_0x2a47e1){logger[_0x234b('0xe')](_0x234b('0x19'),_0x18153a);logger['debug'](_0x234b('0x19'),_0x18153a,JSON[_0x234b('0x13')](_0x2a47e1));_0x4424a1(_0x2a47e1);})['catch'](function(_0x184e98){logger[_0x234b('0x14')](_0x234b('0x19'),_0x184e98[_0x234b('0x16')],_0x18153a);_0x530e4a(_0x22696d[_0x234b('0x14')](0x1f4,_0x184e98[_0x234b('0x16')]));});});};exports[_0x234b('0x20')]=function(_0x1b8ead){var _0x2d0f0c=this;return new Promise(function(_0x257453,_0x476fb7){return db['CmHopperHistory'][_0x234b('0x21')]({'raw':_0x1b8ead['options']?_0x1b8ead[_0x234b('0x1d')][_0x234b('0x1e')]===undefined?!![]:![]:!![],'where':_0x1b8ead[_0x234b('0x1d')]?_0x1b8ead[_0x234b('0x1d')][_0x234b('0x22')]||null:null,'attributes':[[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db['sequelize'][_0x234b('0x25')]('id')),_0x234b('0x26')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db['sequelize'][_0x234b('0x27')]('`state`\x20=\x204,\x201,\x20null'))),_0x234b('0x28')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db['sequelize']['fn']('IF',db['sequelize']['literal'](_0x234b('0x29')))),'predictiveIntervalDroppedCallsTimeout'],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')]['literal']('`state`\x20=\x2011,\x201,\x20null'))),'predictiveIntervalDroppedCallsCallersExit'],[db[_0x234b('0x23')]['fn'](_0x234b('0x2a'),db[_0x234b('0x23')]['fn']('IF',db['sequelize'][_0x234b('0x27')](_0x234b('0x2b')))),_0x234b('0x2c')],[db[_0x234b('0x23')]['fn'](_0x234b('0x2a'),db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')](_0x234b('0x2d')))),'predictiveIntervalAvgTalktime']]})[_0x234b('0x1f')](function(_0x454492){logger['info'](_0x234b('0x20'),_0x1b8ead);logger[_0x234b('0x11')]('AvgHandleTime',_0x1b8ead,JSON[_0x234b('0x13')](_0x454492));_0x257453(_0x454492);})[_0x234b('0x18')](function(_0x48170c){logger[_0x234b('0x14')](_0x234b('0x20'),_0x48170c[_0x234b('0x16')],_0x1b8ead);_0x476fb7(_0x2d0f0c['error'](0x1f4,_0x48170c[_0x234b('0x16')]));});});};exports[_0x234b('0x2e')]=function(_0x52cd1f){var _0xe4cef5=this;return new Promise(function(_0x47feec,_0x1509dc){return db['CmHopperHistory']['findAll']({'raw':_0x52cd1f['options']?_0x52cd1f[_0x234b('0x1d')][_0x234b('0x1e')]===undefined?!![]:![]:!![],'where':_0x52cd1f[_0x234b('0x1d')]?_0x52cd1f[_0x234b('0x1d')][_0x234b('0x22')]||null:null,'attributes':[[_0x234b('0x2f'),_0x234b('0x30')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db['sequelize'][_0x234b('0x27')](_0x234b('0x31')))),_0x234b('0x32')],[db['sequelize']['fn'](_0x234b('0x24'),db['sequelize']['fn']('IF',db['sequelize'][_0x234b('0x27')](_0x234b('0x33')))),'outboundNoAnswerCallsDay'],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')](_0x234b('0x34')))),_0x234b('0x35')],[db[_0x234b('0x23')]['fn']('COUNT',db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')](_0x234b('0x36')))),_0x234b('0x37')],[db[_0x234b('0x23')]['fn']('COUNT',db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')](_0x234b('0x38')))),_0x234b('0x39')],[db[_0x234b('0x23')]['fn']('COUNT',db[_0x234b('0x23')]['fn']('IF',db['sequelize']['literal'](_0x234b('0x3a')))),_0x234b('0x3b')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db['sequelize']['fn']('IF',db['sequelize'][_0x234b('0x27')]('`state`\x20=\x2011\x20,\x201,\x20null'))),_0x234b('0x3c')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db['sequelize']['fn']('IF',db[_0x234b('0x23')]['literal'](_0x234b('0x3d')))),_0x234b('0x3e')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db['sequelize']['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')](_0x234b('0x3f')))),_0x234b('0x40')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0x234b('0x27')](_0x234b('0x41')))),_0x234b('0x42')],[db['sequelize']['fn']('COUNT',db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')](_0x234b('0x43')))),_0x234b('0x44')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db['sequelize'][_0x234b('0x27')]('`state`\x20=\x2016,\x201,\x20null'))),_0x234b('0x45')],[db[_0x234b('0x23')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')]('`state`\x20=\x2020,\x201,\x20null'))),_0x234b('0x44')],[db['sequelize']['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')]['literal']('`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null'))),_0x234b('0x46')]],'group':[_0x234b('0x2f')]})['then'](function(_0x6560d1){logger['info']('GetVoiceQueueHopperHistory',_0x52cd1f);logger[_0x234b('0x11')](_0x234b('0x2e'),_0x52cd1f,JSON[_0x234b('0x13')](_0x6560d1));_0x47feec(_0x6560d1);})[_0x234b('0x18')](function(_0x5a0344){logger[_0x234b('0x14')]('GetVoiceQueueHopperHistory',_0x5a0344['message'],_0x52cd1f);_0x1509dc(_0xe4cef5[_0x234b('0x14')](0x1f4,_0x5a0344[_0x234b('0x16')]));});});};exports[_0x234b('0x47')]=function(_0x38dd1d){var _0x3d2072=this;return new Promise(function(_0x436c32,_0x4b9447){return db[_0x234b('0x1a')][_0x234b('0x21')]({'raw':_0x38dd1d[_0x234b('0x1d')]?_0x38dd1d[_0x234b('0x1d')]['raw']===undefined?!![]:![]:!![],'where':_0x38dd1d[_0x234b('0x1d')]?_0x38dd1d[_0x234b('0x1d')][_0x234b('0x22')]||null:null,'attributes':[['campaign',_0x234b('0x30')],[db[_0x234b('0x23')]['fn'](_0x234b('0x24'),db[_0x234b('0x23')][_0x234b('0x25')]('id')),_0x234b('0x48')],[db['sequelize']['fn'](_0x234b('0x24'),db[_0x234b('0x23')]['fn']('IF',db[_0x234b('0x23')][_0x234b('0x27')]('`state`\x20=\x204,\x201,\x20null'))),'ivrAnswerCallsDay']],'group':[_0x234b('0x2f')]})[_0x234b('0x1f')](function(_0x4e4543){logger[_0x234b('0xe')]('GetCampaignHopperHistory',_0x38dd1d);logger['debug'](_0x234b('0x47'),_0x38dd1d,JSON['stringify'](_0x4e4543));_0x436c32(_0x4e4543);})[_0x234b('0x18')](function(_0x548fa3){logger[_0x234b('0x14')](_0x234b('0x47'),_0x548fa3[_0x234b('0x16')],_0x38dd1d);_0x4b9447(_0x3d2072[_0x234b('0x14')](0x1f4,_0x548fa3[_0x234b('0x16')]));});});};