7701f4c218cc5b27e9de4284f81d91a2249fc1f0
[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 _0xc302=['request','then','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','AvgHandleTime','findAll','raw','where','sequelize','col','predictiveIntervalTotalCalls','COUNT','literal','`state`\x20=\x204,\x201,\x20null','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','`state`\x20=\x2011\x20,\x201,\x20null','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','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetVoiceQueueHopperHistory','GetCampaignHopperHistory','lodash','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','http'];(function(_0x3dafbc,_0x29359b){var _0x13d1e1=function(_0x25f8c4){while(--_0x25f8c4){_0x3dafbc['push'](_0x3dafbc['shift']());}};_0x13d1e1(++_0x29359b);}(_0xc302,0x17e));var _0x2c30=function(_0x2f8e57,_0x54f91a){_0x2f8e57=_0x2f8e57-0x0;var _0x5153ea=_0xc302[_0x2f8e57];return _0x5153ea;};'use strict';var _=require(_0x2c30('0x0'));var util=require('util');var moment=require('moment');var BPromise=require(_0x2c30('0x1'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x2c30('0x2'));var db=require(_0x2c30('0x3'))['db'];var utils=require(_0x2c30('0x4'));var logger=require(_0x2c30('0x5'))('rpc');var config=require(_0x2c30('0x6'));var jayson=require('jayson/promise');var client=jayson['client'][_0x2c30('0x7')]({'port':0x232a});function respondWithRpcPromise(_0xc9dd1e,_0xb41008,_0x387f98){return new BPromise(function(_0x4c48cd,_0x3fcac2){return client[_0x2c30('0x8')](_0xc9dd1e,_0x387f98)[_0x2c30('0x9')](function(_0xf52da4){logger[_0x2c30('0xa')](_0x2c30('0xb'),_0xb41008,_0x2c30('0xc'));logger[_0x2c30('0xd')](_0x2c30('0xe'),_0xb41008,_0x2c30('0xc'),JSON[_0x2c30('0xf')](_0xf52da4));if(_0xf52da4[_0x2c30('0x10')]){if(_0xf52da4[_0x2c30('0x10')][_0x2c30('0x11')]===0x1f4){logger[_0x2c30('0x10')](_0x2c30('0xb'),_0xb41008,_0xf52da4[_0x2c30('0x10')][_0x2c30('0x12')]);return _0x3fcac2(_0xf52da4[_0x2c30('0x10')][_0x2c30('0x12')]);}logger[_0x2c30('0x10')](_0x2c30('0xb'),_0xb41008,_0xf52da4[_0x2c30('0x10')][_0x2c30('0x12')]);return _0x4c48cd(_0xf52da4[_0x2c30('0x10')][_0x2c30('0x12')]);}else{logger[_0x2c30('0xa')]('CmHopperHistory,\x20%s,\x20%s',_0xb41008,_0x2c30('0xc'));_0x4c48cd(_0xf52da4[_0x2c30('0x13')][_0x2c30('0x12')]);}})[_0x2c30('0x14')](function(_0x24a1f2){logger[_0x2c30('0x10')](_0x2c30('0xb'),_0xb41008,_0x24a1f2);_0x3fcac2(_0x24a1f2);});});}exports[_0x2c30('0x15')]=function(_0x369dab){var _0x3b1914=this;return new Promise(function(_0x4e73d3,_0x164a24){return db[_0x2c30('0x16')][_0x2c30('0x17')](_0x369dab[_0x2c30('0x18')],{'raw':_0x369dab[_0x2c30('0x19')]?_0x369dab[_0x2c30('0x19')]['raw']===undefined?!![]:![]:!![]})[_0x2c30('0x9')](function(_0x2ed7d8){logger[_0x2c30('0xa')]('CreateCmHopperHistory',_0x369dab);logger[_0x2c30('0xd')](_0x2c30('0x15'),_0x369dab,JSON[_0x2c30('0xf')](_0x2ed7d8));_0x4e73d3(_0x2ed7d8);})['catch'](function(_0x85e21){logger[_0x2c30('0x10')](_0x2c30('0x15'),_0x85e21[_0x2c30('0x12')],_0x369dab);_0x164a24(_0x3b1914[_0x2c30('0x10')](0x1f4,_0x85e21['message']));});});};exports[_0x2c30('0x1a')]=function(_0x2cae4f){var _0x1aaddf=this;return new Promise(function(_0x15cd29,_0x15dca1){return db[_0x2c30('0x16')][_0x2c30('0x1b')]({'raw':_0x2cae4f[_0x2c30('0x19')]?_0x2cae4f[_0x2c30('0x19')][_0x2c30('0x1c')]===undefined?!![]:![]:!![],'where':_0x2cae4f[_0x2c30('0x19')]?_0x2cae4f[_0x2c30('0x19')][_0x2c30('0x1d')]||null:null,'attributes':[[db[_0x2c30('0x1e')]['fn']('COUNT',db[_0x2c30('0x1e')][_0x2c30('0x1f')]('id')),_0x2c30('0x20')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x23')))),'predictiveIntervalAnsweredCalls'],[db['sequelize']['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')]('`state`\x20=\x2010,\x201,\x20null'))),'predictiveIntervalDroppedCallsTimeout'],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x24')))),_0x2c30('0x25')],[db['sequelize']['fn'](_0x2c30('0x26'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')]['literal'](_0x2c30('0x27')))),'predictiveIntervalAvgHoldtime'],[db['sequelize']['fn'](_0x2c30('0x26'),db['sequelize']['fn']('IF',db['sequelize'][_0x2c30('0x22')]('`state`\x20=\x204,\x20`talktime`,\x20null'))),'predictiveIntervalAvgTalktime']]})[_0x2c30('0x9')](function(_0x20d889){logger['info'](_0x2c30('0x1a'),_0x2cae4f);logger[_0x2c30('0xd')](_0x2c30('0x1a'),_0x2cae4f,JSON['stringify'](_0x20d889));_0x15cd29(_0x20d889);})[_0x2c30('0x14')](function(_0x2c0cd6){logger[_0x2c30('0x10')](_0x2c30('0x1a'),_0x2c0cd6['message'],_0x2cae4f);_0x15dca1(_0x1aaddf[_0x2c30('0x10')](0x1f4,_0x2c0cd6[_0x2c30('0x12')]));});});};exports['GetVoiceQueueHopperHistory']=function(_0x11f1db){var _0x4cf056=this;return new Promise(function(_0x17d6fd,_0x238f29){return db[_0x2c30('0x16')][_0x2c30('0x1b')]({'raw':_0x11f1db[_0x2c30('0x19')]?_0x11f1db['options'][_0x2c30('0x1c')]===undefined?!![]:![]:!![],'where':_0x11f1db[_0x2c30('0x19')]?_0x11f1db['options'][_0x2c30('0x1d')]||null:null,'attributes':[[_0x2c30('0x28'),_0x2c30('0x29')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x2a')))),'outboundNoSuchCallsDay'],[db['sequelize']['fn'](_0x2c30('0x21'),db['sequelize']['fn']('IF',db[_0x2c30('0x1e')]['literal']('`state`\x20=\x203,\x201,\x20null'))),'outboundNoAnswerCallsDay'],[db[_0x2c30('0x1e')]['fn']('COUNT',db[_0x2c30('0x1e')]['fn']('IF',db['sequelize']['literal']('`state`\x20=\x204,\x201,\x20null'))),_0x2c30('0x2b')],[db[_0x2c30('0x1e')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x2c')))),_0x2c30('0x2d')],[db['sequelize']['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x2e')))),_0x2c30('0x2f')],[db['sequelize']['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x30')))),'outboundDropCallsDayTimeout'],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db['sequelize']['fn']('IF',db['sequelize']['literal'](_0x2c30('0x31')))),_0x2c30('0x32')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x33')))),_0x2c30('0x34')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')](_0x2c30('0x35')))),_0x2c30('0x36')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db['sequelize']['literal'](_0x2c30('0x37')))),_0x2c30('0x38')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db['sequelize']['fn']('IF',db['sequelize']['literal'](_0x2c30('0x39')))),_0x2c30('0x3a')],[db[_0x2c30('0x1e')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')]('`state`\x20=\x2016,\x201,\x20null'))),_0x2c30('0x3b')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')]['literal'](_0x2c30('0x3c')))),_0x2c30('0x3a')],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db['sequelize']['fn']('IF',db['sequelize'][_0x2c30('0x22')](_0x2c30('0x3d')))),_0x2c30('0x3e')]],'group':['campaign']})[_0x2c30('0x9')](function(_0xdde5dc){logger[_0x2c30('0xa')]('GetVoiceQueueHopperHistory',_0x11f1db);logger[_0x2c30('0xd')](_0x2c30('0x3f'),_0x11f1db,JSON[_0x2c30('0xf')](_0xdde5dc));_0x17d6fd(_0xdde5dc);})['catch'](function(_0x36a0c2){logger[_0x2c30('0x10')](_0x2c30('0x3f'),_0x36a0c2[_0x2c30('0x12')],_0x11f1db);_0x238f29(_0x4cf056[_0x2c30('0x10')](0x1f4,_0x36a0c2['message']));});});};exports[_0x2c30('0x40')]=function(_0xe4141a){var _0x3d50aa=this;return new Promise(function(_0x3d8960,_0x395af8){return db[_0x2c30('0x16')]['findAll']({'raw':_0xe4141a[_0x2c30('0x19')]?_0xe4141a[_0x2c30('0x19')][_0x2c30('0x1c')]===undefined?!![]:![]:!![],'where':_0xe4141a[_0x2c30('0x19')]?_0xe4141a[_0x2c30('0x19')][_0x2c30('0x1d')]||null:null,'attributes':[[_0x2c30('0x28'),_0x2c30('0x29')],[db['sequelize']['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')][_0x2c30('0x1f')]('id')),'ivrTotalCallsDays'],[db[_0x2c30('0x1e')]['fn'](_0x2c30('0x21'),db[_0x2c30('0x1e')]['fn']('IF',db[_0x2c30('0x1e')][_0x2c30('0x22')]('`state`\x20=\x204,\x201,\x20null'))),'ivrAnswerCallsDay']],'group':[_0x2c30('0x28')]})[_0x2c30('0x9')](function(_0x3e9299){logger[_0x2c30('0xa')]('GetCampaignHopperHistory',_0xe4141a);logger[_0x2c30('0xd')]('GetCampaignHopperHistory',_0xe4141a,JSON['stringify'](_0x3e9299));_0x3d8960(_0x3e9299);})[_0x2c30('0x14')](function(_0x15d163){logger['error']('GetCampaignHopperHistory',_0x15d163['message'],_0xe4141a);_0x395af8(_0x3d50aa[_0x2c30('0x10')](0x1f4,_0x15d163[_0x2c30('0x12')]));});});};