30ed68c909bfe8376d3917d407fd8051b56b6c0d
[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 _0xfac4=['catch','CreateCmHopperHistory','CmHopperHistory','create','body','options','raw','debug','AvgHandleTime','where','sequelize','COUNT','predictiveIntervalTotalCalls','literal','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','info','GetVoiceQueueHopperHistory','findAll','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayCallersExit','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','outboundOriginateFailureCallsDay','outboundRejectCallsDay','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','`state`\x20=\x204,\x201,\x20null','ivrAnswerCallsDay','GetCampaignHopperHistory','moment','bluebird','randomstring','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','client','http','request','then','CmHopperHistory,\x20%s,\x20%s','request\x20sent','stringify','message','error','result'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0xfac4,0xb1));var _0x4fac=function(_0x23ac34,_0x20eb6c){_0x23ac34=_0x23ac34-0x0;var _0x2bfe6e=_0xfac4[_0x23ac34];return _0x2bfe6e;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0x4fac('0x0'));var BPromise=require(_0x4fac('0x1'));var rs=require(_0x4fac('0x2'));var fs=require('fs');var Redis=require(_0x4fac('0x3'));var db=require('../../mysqldb')['db'];var utils=require(_0x4fac('0x4'));var logger=require(_0x4fac('0x5'))(_0x4fac('0x6'));var config=require(_0x4fac('0x7'));var jayson=require('jayson/promise');var client=jayson[_0x4fac('0x8')][_0x4fac('0x9')]({'port':0x232a});function respondWithRpcPromise(_0x2c624e,_0x183254,_0x357d34){return new BPromise(function(_0x3b5c0f,_0xa0e95e){return client[_0x4fac('0xa')](_0x2c624e,_0x357d34)[_0x4fac('0xb')](function(_0x5aabcb){logger['info'](_0x4fac('0xc'),_0x183254,_0x4fac('0xd'));logger['debug']('CmHopperHistory,\x20%s,\x20%s,\x20%s',_0x183254,_0x4fac('0xd'),JSON[_0x4fac('0xe')](_0x5aabcb));if(_0x5aabcb['error']){if(_0x5aabcb['error']['code']===0x1f4){logger['error'](_0x4fac('0xc'),_0x183254,_0x5aabcb['error'][_0x4fac('0xf')]);return _0xa0e95e(_0x5aabcb[_0x4fac('0x10')][_0x4fac('0xf')]);}logger['error'](_0x4fac('0xc'),_0x183254,_0x5aabcb[_0x4fac('0x10')][_0x4fac('0xf')]);return _0x3b5c0f(_0x5aabcb['error'][_0x4fac('0xf')]);}else{logger['info'](_0x4fac('0xc'),_0x183254,_0x4fac('0xd'));_0x3b5c0f(_0x5aabcb[_0x4fac('0x11')][_0x4fac('0xf')]);}})[_0x4fac('0x12')](function(_0x5ace99){logger[_0x4fac('0x10')](_0x4fac('0xc'),_0x183254,_0x5ace99);_0xa0e95e(_0x5ace99);});});}exports[_0x4fac('0x13')]=function(_0x46ffb4){var _0xdc76a9=this;return new Promise(function(_0x3bf5d7,_0x4a1f4d){return db[_0x4fac('0x14')][_0x4fac('0x15')](_0x46ffb4[_0x4fac('0x16')],{'raw':_0x46ffb4[_0x4fac('0x17')]?_0x46ffb4[_0x4fac('0x17')][_0x4fac('0x18')]===undefined?!![]:![]:!![]})[_0x4fac('0xb')](function(_0x527225){logger['info'](_0x4fac('0x13'),_0x46ffb4);logger[_0x4fac('0x19')](_0x4fac('0x13'),_0x46ffb4,JSON[_0x4fac('0xe')](_0x527225));_0x3bf5d7(_0x527225);})[_0x4fac('0x12')](function(_0x24029a){logger[_0x4fac('0x10')](_0x4fac('0x13'),_0x24029a[_0x4fac('0xf')],_0x46ffb4);_0x4a1f4d(_0xdc76a9['error'](0x1f4,_0x24029a[_0x4fac('0xf')]));});});};exports[_0x4fac('0x1a')]=function(_0x28028c){var _0x4da76b=this;return new Promise(function(_0x23d89f,_0x21688e){return db['CmHopperHistory']['findAll']({'raw':_0x28028c[_0x4fac('0x17')]?_0x28028c['options']['raw']===undefined?!![]:![]:!![],'where':_0x28028c['options']?_0x28028c[_0x4fac('0x17')][_0x4fac('0x1b')]||null:null,'attributes':[[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['col']('id')),_0x4fac('0x1e')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')]('`state`\x20=\x204,\x201,\x20null'))),_0x4fac('0x20')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')]['literal'](_0x4fac('0x21')))),_0x4fac('0x22')],[db['sequelize']['fn'](_0x4fac('0x1d'),db['sequelize']['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')]('`state`\x20=\x2011,\x201,\x20null'))),_0x4fac('0x23')],[db['sequelize']['fn'](_0x4fac('0x24'),db['sequelize']['fn']('IF',db[_0x4fac('0x1c')]['literal'](_0x4fac('0x25')))),_0x4fac('0x26')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x24'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')](_0x4fac('0x27')))),_0x4fac('0x28')]]})[_0x4fac('0xb')](function(_0x156a00){logger[_0x4fac('0x29')]('AvgHandleTime',_0x28028c);logger[_0x4fac('0x19')]('AvgHandleTime',_0x28028c,JSON['stringify'](_0x156a00));_0x23d89f(_0x156a00);})['catch'](function(_0x4ba79e){logger[_0x4fac('0x10')](_0x4fac('0x1a'),_0x4ba79e[_0x4fac('0xf')],_0x28028c);_0x21688e(_0x4da76b[_0x4fac('0x10')](0x1f4,_0x4ba79e['message']));});});};exports[_0x4fac('0x2a')]=function(_0x2187f0){var _0x8ae539=this;return new Promise(function(_0x2c2f44,_0x2eed62){return db[_0x4fac('0x14')][_0x4fac('0x2b')]({'raw':_0x2187f0[_0x4fac('0x17')]?_0x2187f0[_0x4fac('0x17')][_0x4fac('0x18')]===undefined?!![]:![]:!![],'where':_0x2187f0[_0x4fac('0x17')]?_0x2187f0[_0x4fac('0x17')][_0x4fac('0x1b')]||null:null,'attributes':[[_0x4fac('0x2c'),_0x4fac('0x2d')],[db['sequelize']['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')](_0x4fac('0x2e')))),_0x4fac('0x2f')],[db[_0x4fac('0x1c')]['fn']('COUNT',db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')]['literal']('`state`\x20=\x203,\x201,\x20null'))),_0x4fac('0x30')],[db[_0x4fac('0x1c')]['fn']('COUNT',db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')]['literal']('`state`\x20=\x204,\x201,\x20null'))),_0x4fac('0x31')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')]('`state`\x20=\x205,\x201,\x20null'))),'outboundBusyCallsDay'],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db['sequelize'][_0x4fac('0x1f')](_0x4fac('0x32')))),_0x4fac('0x33')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')](_0x4fac('0x34')))),'outboundDropCallsDayTimeout'],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')]('`state`\x20=\x2011\x20,\x201,\x20null'))),_0x4fac('0x35')],[db['sequelize']['fn'](_0x4fac('0x1d'),db['sequelize']['fn']('IF',db[_0x4fac('0x1c')]['literal']('`state`\x20=\x2012,\x201,\x20null'))),_0x4fac('0x36')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')](_0x4fac('0x37')))),_0x4fac('0x38')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')]('`state`\x20=\x2014,\x201,\x20null'))),_0x4fac('0x39')],[db['sequelize']['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')]('`state`\x20=\x2018,\x201,\x20null'))),_0x4fac('0x3a')],[db[_0x4fac('0x1c')]['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0x4fac('0x1f')]('`state`\x20=\x2016,\x201,\x20null'))),'outboundAnswerAgiCallsDay'],[db['sequelize']['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')](_0x4fac('0x3b')))),_0x4fac('0x3a')],[db[_0x4fac('0x1c')]['fn']('COUNT',db[_0x4fac('0x1c')]['fn']('IF',db[_0x4fac('0x1c')][_0x4fac('0x1f')](_0x4fac('0x3c')))),_0x4fac('0x3d')]],'group':[_0x4fac('0x2c')]})[_0x4fac('0xb')](function(_0x32002d){logger[_0x4fac('0x29')](_0x4fac('0x2a'),_0x2187f0);logger['debug'](_0x4fac('0x2a'),_0x2187f0,JSON[_0x4fac('0xe')](_0x32002d));_0x2c2f44(_0x32002d);})[_0x4fac('0x12')](function(_0x42403a){logger[_0x4fac('0x10')](_0x4fac('0x2a'),_0x42403a[_0x4fac('0xf')],_0x2187f0);_0x2eed62(_0x8ae539[_0x4fac('0x10')](0x1f4,_0x42403a[_0x4fac('0xf')]));});});};exports['GetCampaignHopperHistory']=function(_0x19fa5f){var _0x38756d=this;return new Promise(function(_0x54b517,_0x13a18c){return db['CmHopperHistory'][_0x4fac('0x2b')]({'raw':_0x19fa5f[_0x4fac('0x17')]?_0x19fa5f[_0x4fac('0x17')]['raw']===undefined?!![]:![]:!![],'where':_0x19fa5f['options']?_0x19fa5f[_0x4fac('0x17')][_0x4fac('0x1b')]||null:null,'attributes':[['campaign',_0x4fac('0x2d')],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['col']('id')),'ivrTotalCallsDays'],[db[_0x4fac('0x1c')]['fn'](_0x4fac('0x1d'),db[_0x4fac('0x1c')]['fn']('IF',db['sequelize']['literal'](_0x4fac('0x3e')))),_0x4fac('0x3f')]],'group':[_0x4fac('0x2c')]})[_0x4fac('0xb')](function(_0x1ec30b){logger['info'](_0x4fac('0x40'),_0x19fa5f);logger[_0x4fac('0x19')]('GetCampaignHopperHistory',_0x19fa5f,JSON['stringify'](_0x1ec30b));_0x54b517(_0x1ec30b);})[_0x4fac('0x12')](function(_0x1b80fb){logger[_0x4fac('0x10')]('GetCampaignHopperHistory',_0x1b80fb[_0x4fac('0xf')],_0x19fa5f);_0x13a18c(_0x38756d[_0x4fac('0x10')](0x1f4,_0x1b80fb[_0x4fac('0xf')]));});});};