1c4ed23e1c7a508ba3bca1f39c7af582d8a283ac
[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 _0x7ae7=['outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','outboundReCallsDay','GetCampaignHopperHistory','campaign','ivrTotalCallsDays','lodash','util','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','request','then','info','request\x20sent','stringify','error','code','message','CmHopperHistory,\x20%s,\x20%s','result','catch','CreateCmHopperHistory','CmHopperHistory','create','body','options','raw','debug','AvgHandleTime','where','sequelize','col','predictiveIntervalTotalCalls','COUNT','`state`\x20=\x204,\x201,\x20null','literal','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','findAll','name','`state`\x20=\x200,\x201,\x20null','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x7ae7,0xd9));var _0x77ae=function(_0x177fb0,_0x210ea7){_0x177fb0=_0x177fb0-0x0;var _0xeb5ec5=_0x7ae7[_0x177fb0];return _0xeb5ec5;};'use strict';var _=require(_0x77ae('0x0'));var util=require(_0x77ae('0x1'));var moment=require('moment');var BPromise=require(_0x77ae('0x2'));var rs=require(_0x77ae('0x3'));var fs=require('fs');var Redis=require(_0x77ae('0x4'));var db=require(_0x77ae('0x5'))['db'];var utils=require(_0x77ae('0x6'));var logger=require(_0x77ae('0x7'))(_0x77ae('0x8'));var config=require(_0x77ae('0x9'));var jayson=require(_0x77ae('0xa'));var client=jayson[_0x77ae('0xb')][_0x77ae('0xc')]({'port':0x232a});function respondWithRpcPromise(_0x1fcff8,_0x2c33a5,_0x56197f){return new BPromise(function(_0x131f0b,_0x43f894){return client[_0x77ae('0xd')](_0x1fcff8,_0x56197f)[_0x77ae('0xe')](function(_0x27f9df){logger[_0x77ae('0xf')]('CmHopperHistory,\x20%s,\x20%s',_0x2c33a5,_0x77ae('0x10'));logger['debug']('CmHopperHistory,\x20%s,\x20%s,\x20%s',_0x2c33a5,_0x77ae('0x10'),JSON[_0x77ae('0x11')](_0x27f9df));if(_0x27f9df[_0x77ae('0x12')]){if(_0x27f9df['error'][_0x77ae('0x13')]===0x1f4){logger[_0x77ae('0x12')]('CmHopperHistory,\x20%s,\x20%s',_0x2c33a5,_0x27f9df[_0x77ae('0x12')][_0x77ae('0x14')]);return _0x43f894(_0x27f9df[_0x77ae('0x12')]['message']);}logger['error'](_0x77ae('0x15'),_0x2c33a5,_0x27f9df[_0x77ae('0x12')][_0x77ae('0x14')]);return _0x131f0b(_0x27f9df[_0x77ae('0x12')][_0x77ae('0x14')]);}else{logger[_0x77ae('0xf')]('CmHopperHistory,\x20%s,\x20%s',_0x2c33a5,'request\x20sent');_0x131f0b(_0x27f9df[_0x77ae('0x16')][_0x77ae('0x14')]);}})[_0x77ae('0x17')](function(_0x5af6b1){logger[_0x77ae('0x12')](_0x77ae('0x15'),_0x2c33a5,_0x5af6b1);_0x43f894(_0x5af6b1);});});}exports[_0x77ae('0x18')]=function(_0x1e520e){var _0x10cc1b=this;return new Promise(function(_0x5e4f9c,_0x4b524b){return db[_0x77ae('0x19')][_0x77ae('0x1a')](_0x1e520e[_0x77ae('0x1b')],{'raw':_0x1e520e[_0x77ae('0x1c')]?_0x1e520e[_0x77ae('0x1c')][_0x77ae('0x1d')]===undefined?!![]:![]:!![]})['then'](function(_0x5e293e){logger[_0x77ae('0xf')]('CreateCmHopperHistory',_0x1e520e);logger[_0x77ae('0x1e')](_0x77ae('0x18'),_0x1e520e,JSON[_0x77ae('0x11')](_0x5e293e));_0x5e4f9c(_0x5e293e);})[_0x77ae('0x17')](function(_0x17c79b){logger[_0x77ae('0x12')]('CreateCmHopperHistory',_0x17c79b['message'],_0x1e520e);_0x4b524b(_0x10cc1b['error'](0x1f4,_0x17c79b[_0x77ae('0x14')]));});});};exports[_0x77ae('0x1f')]=function(_0x4c64ba){var _0x4c06df=this;return new Promise(function(_0x288d0f,_0x174cc7){return db[_0x77ae('0x19')]['findAll']({'raw':_0x4c64ba[_0x77ae('0x1c')]?_0x4c64ba['options'][_0x77ae('0x1d')]===undefined?!![]:![]:!![],'where':_0x4c64ba[_0x77ae('0x1c')]?_0x4c64ba[_0x77ae('0x1c')][_0x77ae('0x20')]||null:null,'attributes':[[db['sequelize']['fn']('COUNT',db[_0x77ae('0x21')][_0x77ae('0x22')]('id')),_0x77ae('0x23')],[db['sequelize']['fn'](_0x77ae('0x24'),db['sequelize']['fn']('IF',db[_0x77ae('0x21')]['literal'](_0x77ae('0x25')))),'predictiveIntervalAnsweredCalls'],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db['sequelize'][_0x77ae('0x26')](_0x77ae('0x27')))),'predictiveIntervalDroppedCallsTimeout'],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db['sequelize']['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')]('`state`\x20=\x2011,\x201,\x20null'))),_0x77ae('0x28')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x29'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')](_0x77ae('0x2a')))),_0x77ae('0x2b')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x29'),db[_0x77ae('0x21')]['fn']('IF',db['sequelize'][_0x77ae('0x26')]('`state`\x20=\x204,\x20`talktime`,\x20null'))),_0x77ae('0x2c')]]})[_0x77ae('0xe')](function(_0x4a22bf){logger[_0x77ae('0xf')]('AvgHandleTime',_0x4c64ba);logger[_0x77ae('0x1e')](_0x77ae('0x1f'),_0x4c64ba,JSON[_0x77ae('0x11')](_0x4a22bf));_0x288d0f(_0x4a22bf);})[_0x77ae('0x17')](function(_0x4a3075){logger['error'](_0x77ae('0x1f'),_0x4a3075['message'],_0x4c64ba);_0x174cc7(_0x4c06df[_0x77ae('0x12')](0x1f4,_0x4a3075[_0x77ae('0x14')]));});});};exports[_0x77ae('0x2d')]=function(_0x228352){var _0x2714d1=this;return new Promise(function(_0x1efef7,_0x50e938){return db[_0x77ae('0x19')][_0x77ae('0x2e')]({'raw':_0x228352[_0x77ae('0x1c')]?_0x228352[_0x77ae('0x1c')][_0x77ae('0x1d')]===undefined?!![]:![]:!![],'where':_0x228352['options']?_0x228352[_0x77ae('0x1c')][_0x77ae('0x20')]||null:null,'attributes':[['campaign',_0x77ae('0x2f')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')]['literal'](_0x77ae('0x30')))),'outboundNoSuchCallsDay'],[db[_0x77ae('0x21')]['fn']('COUNT',db[_0x77ae('0x21')]['fn']('IF',db['sequelize'][_0x77ae('0x26')](_0x77ae('0x31')))),_0x77ae('0x32')],[db[_0x77ae('0x21')]['fn']('COUNT',db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')](_0x77ae('0x25')))),'outboundAnswerCallsDay'],[db['sequelize']['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')]['literal']('`state`\x20=\x205,\x201,\x20null'))),_0x77ae('0x33')],[db[_0x77ae('0x21')]['fn']('COUNT',db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')]['literal'](_0x77ae('0x34')))),_0x77ae('0x35')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')](_0x77ae('0x36')))),_0x77ae('0x37')],[db['sequelize']['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')]('`state`\x20=\x2011\x20,\x201,\x20null'))),_0x77ae('0x38')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db['sequelize']['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')](_0x77ae('0x39')))),_0x77ae('0x3a')],[db[_0x77ae('0x21')]['fn']('COUNT',db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')]('`state`\x20=\x2013,\x201,\x20null'))),_0x77ae('0x3b')],[db[_0x77ae('0x21')]['fn']('COUNT',db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')](_0x77ae('0x3c')))),'outboundOriginateFailureCallsDay'],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')]['literal'](_0x77ae('0x3d')))),_0x77ae('0x3e')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')](_0x77ae('0x3f')))),_0x77ae('0x40')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')]['literal']('`state`\x20=\x2020,\x201,\x20null'))),'outboundRejectCallsDay'],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')][_0x77ae('0x26')]('`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null'))),_0x77ae('0x41')]],'group':['campaign']})[_0x77ae('0xe')](function(_0x19b6b0){logger[_0x77ae('0xf')](_0x77ae('0x2d'),_0x228352);logger['debug'](_0x77ae('0x2d'),_0x228352,JSON[_0x77ae('0x11')](_0x19b6b0));_0x1efef7(_0x19b6b0);})['catch'](function(_0x2b798f){logger[_0x77ae('0x12')](_0x77ae('0x2d'),_0x2b798f[_0x77ae('0x14')],_0x228352);_0x50e938(_0x2714d1[_0x77ae('0x12')](0x1f4,_0x2b798f[_0x77ae('0x14')]));});});};exports[_0x77ae('0x42')]=function(_0x3d76d4){var _0x1e62fd=this;return new Promise(function(_0x552f4a,_0xd8d24e){return db['CmHopperHistory'][_0x77ae('0x2e')]({'raw':_0x3d76d4[_0x77ae('0x1c')]?_0x3d76d4['options'][_0x77ae('0x1d')]===undefined?!![]:![]:!![],'where':_0x3d76d4[_0x77ae('0x1c')]?_0x3d76d4[_0x77ae('0x1c')][_0x77ae('0x20')]||null:null,'attributes':[[_0x77ae('0x43'),_0x77ae('0x2f')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db['sequelize']['col']('id')),_0x77ae('0x44')],[db[_0x77ae('0x21')]['fn'](_0x77ae('0x24'),db[_0x77ae('0x21')]['fn']('IF',db[_0x77ae('0x21')]['literal']('`state`\x20=\x204,\x201,\x20null'))),'ivrAnswerCallsDay']],'group':[_0x77ae('0x43')]})[_0x77ae('0xe')](function(_0x23e398){logger[_0x77ae('0xf')](_0x77ae('0x42'),_0x3d76d4);logger['debug']('GetCampaignHopperHistory',_0x3d76d4,JSON[_0x77ae('0x11')](_0x23e398));_0x552f4a(_0x23e398);})[_0x77ae('0x17')](function(_0x41ea92){logger[_0x77ae('0x12')]('GetCampaignHopperHistory',_0x41ea92[_0x77ae('0x14')],_0x3d76d4);_0xd8d24e(_0x1e62fd[_0x77ae('0x12')](0x1f4,_0x41ea92[_0x77ae('0x14')]));});});};