Built motion from commit b0a9a629.|2.6.33
[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 _0x2285=['predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','findAll','campaign','name','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundAnswerCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','`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','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','ivrTotalCallsDays','GetCampaignHopperHistory','util','moment','bluebird','randomstring','ioredis','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','request','then','info','CmHopperHistory,\x20%s,\x20%s','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','catch','CreateCmHopperHistory','CmHopperHistory','body','options','raw','AvgHandleTime','where','sequelize','COUNT','col','predictiveIntervalTotalCalls','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','`state`\x20=\x2011,\x201,\x20null','AVG'];(function(_0x2c0be1,_0x1e88f2){var _0x3d4bd2=function(_0x2b5497){while(--_0x2b5497){_0x2c0be1['push'](_0x2c0be1['shift']());}};_0x3d4bd2(++_0x1e88f2);}(_0x2285,0x177));var _0x5228=function(_0x1fcb15,_0x50ac01){_0x1fcb15=_0x1fcb15-0x0;var _0xcbc1c9=_0x2285[_0x1fcb15];return _0xcbc1c9;};'use strict';var _=require('lodash');var util=require(_0x5228('0x0'));var moment=require(_0x5228('0x1'));var BPromise=require(_0x5228('0x2'));var rs=require(_0x5228('0x3'));var fs=require('fs');var Redis=require(_0x5228('0x4'));var db=require('../../mysqldb')['db'];var utils=require(_0x5228('0x5'));var logger=require(_0x5228('0x6'))('rpc');var config=require(_0x5228('0x7'));var jayson=require(_0x5228('0x8'));var client=jayson[_0x5228('0x9')]['http']({'port':0x232a});function respondWithRpcPromise(_0x18b2db,_0x156977,_0x192393){return new BPromise(function(_0x322b86,_0x81c9c6){return client[_0x5228('0xa')](_0x18b2db,_0x192393)[_0x5228('0xb')](function(_0xbd1b8d){logger[_0x5228('0xc')](_0x5228('0xd'),_0x156977,'request\x20sent');logger[_0x5228('0xe')](_0x5228('0xf'),_0x156977,_0x5228('0x10'),JSON[_0x5228('0x11')](_0xbd1b8d));if(_0xbd1b8d['error']){if(_0xbd1b8d[_0x5228('0x12')][_0x5228('0x13')]===0x1f4){logger[_0x5228('0x12')](_0x5228('0xd'),_0x156977,_0xbd1b8d['error'][_0x5228('0x14')]);return _0x81c9c6(_0xbd1b8d[_0x5228('0x12')][_0x5228('0x14')]);}logger[_0x5228('0x12')](_0x5228('0xd'),_0x156977,_0xbd1b8d[_0x5228('0x12')]['message']);return _0x322b86(_0xbd1b8d[_0x5228('0x12')][_0x5228('0x14')]);}else{logger['info'](_0x5228('0xd'),_0x156977,_0x5228('0x10'));_0x322b86(_0xbd1b8d['result'][_0x5228('0x14')]);}})[_0x5228('0x15')](function(_0x1c4121){logger[_0x5228('0x12')]('CmHopperHistory,\x20%s,\x20%s',_0x156977,_0x1c4121);_0x81c9c6(_0x1c4121);});});}exports[_0x5228('0x16')]=function(_0x23419b){var _0x5c9abd=this;return new Promise(function(_0x41b812,_0x2c7dc4){return db[_0x5228('0x17')]['create'](_0x23419b[_0x5228('0x18')],{'raw':_0x23419b['options']?_0x23419b[_0x5228('0x19')][_0x5228('0x1a')]===undefined?!![]:![]:!![]})[_0x5228('0xb')](function(_0x52d49e){logger[_0x5228('0xc')](_0x5228('0x16'),_0x23419b);logger[_0x5228('0xe')](_0x5228('0x16'),_0x23419b,JSON['stringify'](_0x52d49e));_0x41b812(_0x52d49e);})['catch'](function(_0x28aba5){logger[_0x5228('0x12')]('CreateCmHopperHistory',_0x28aba5[_0x5228('0x14')],_0x23419b);_0x2c7dc4(_0x5c9abd[_0x5228('0x12')](0x1f4,_0x28aba5[_0x5228('0x14')]));});});};exports[_0x5228('0x1b')]=function(_0x63ce01){var _0x77d919=this;return new Promise(function(_0x2661a6,_0x5a3e6d){return db[_0x5228('0x17')]['findAll']({'raw':_0x63ce01[_0x5228('0x19')]?_0x63ce01[_0x5228('0x19')]['raw']===undefined?!![]:![]:!![],'where':_0x63ce01['options']?_0x63ce01['options'][_0x5228('0x1c')]||null:null,'attributes':[[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db['sequelize'][_0x5228('0x1f')]('id')),_0x5228('0x20')],[db[_0x5228('0x1d')]['fn']('COUNT',db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x22')))),_0x5228('0x23')],[db['sequelize']['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x24')))),'predictiveIntervalDroppedCallsTimeout'],[db['sequelize']['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db['sequelize']['literal'](_0x5228('0x25')))),'predictiveIntervalDroppedCallsCallersExit'],[db[_0x5228('0x1d')]['fn'](_0x5228('0x26'),db['sequelize']['fn']('IF',db[_0x5228('0x1d')]['literal']('`state`\x20=\x204,\x20`holdtime`,\x20null'))),_0x5228('0x27')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x26'),db[_0x5228('0x1d')]['fn']('IF',db['sequelize'][_0x5228('0x21')](_0x5228('0x28')))),_0x5228('0x29')]]})[_0x5228('0xb')](function(_0x2dfe4b){logger[_0x5228('0xc')]('AvgHandleTime',_0x63ce01);logger[_0x5228('0xe')]('AvgHandleTime',_0x63ce01,JSON[_0x5228('0x11')](_0x2dfe4b));_0x2661a6(_0x2dfe4b);})[_0x5228('0x15')](function(_0x488a65){logger['error']('AvgHandleTime',_0x488a65[_0x5228('0x14')],_0x63ce01);_0x5a3e6d(_0x77d919[_0x5228('0x12')](0x1f4,_0x488a65[_0x5228('0x14')]));});});};exports[_0x5228('0x2a')]=function(_0x2ec1f8){var _0x37a15e=this;return new Promise(function(_0x4d5ff2,_0x493a05){return db[_0x5228('0x17')][_0x5228('0x2b')]({'raw':_0x2ec1f8['options']?_0x2ec1f8[_0x5228('0x19')]['raw']===undefined?!![]:![]:!![],'where':_0x2ec1f8['options']?_0x2ec1f8[_0x5228('0x19')]['where']||null:null,'attributes':[[_0x5228('0x2c'),_0x5228('0x2d')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')]['literal']('`state`\x20=\x200,\x201,\x20null'))),_0x5228('0x2e')],[db['sequelize']['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x2f')))),'outboundNoAnswerCallsDay'],[db[_0x5228('0x1d')]['fn']('COUNT',db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x22')))),_0x5228('0x30')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db['sequelize']['fn']('IF',db[_0x5228('0x1d')]['literal']('`state`\x20=\x205,\x201,\x20null'))),'outboundBusyCallsDay'],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x31')))),_0x5228('0x32')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x33')))),_0x5228('0x34')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db['sequelize'][_0x5228('0x21')](_0x5228('0x35')))),_0x5228('0x36')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x37')))),_0x5228('0x38')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x5228('0x1d')]['literal'](_0x5228('0x39')))),_0x5228('0x3a')],[db[_0x5228('0x1d')]['fn']('COUNT',db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')]['literal'](_0x5228('0x3b')))),_0x5228('0x3c')],[db['sequelize']['fn']('COUNT',db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x3d')))),_0x5228('0x3e')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db['sequelize'][_0x5228('0x21')](_0x5228('0x3f')))),_0x5228('0x40')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db['sequelize']['fn']('IF',db[_0x5228('0x1d')]['literal'](_0x5228('0x41')))),_0x5228('0x3e')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x42')))),'outboundReCallsDay']],'group':[_0x5228('0x2c')]})[_0x5228('0xb')](function(_0x5883b8){logger[_0x5228('0xc')](_0x5228('0x2a'),_0x2ec1f8);logger[_0x5228('0xe')](_0x5228('0x2a'),_0x2ec1f8,JSON[_0x5228('0x11')](_0x5883b8));_0x4d5ff2(_0x5883b8);})[_0x5228('0x15')](function(_0x16ea83){logger['error'](_0x5228('0x2a'),_0x16ea83[_0x5228('0x14')],_0x2ec1f8);_0x493a05(_0x37a15e[_0x5228('0x12')](0x1f4,_0x16ea83[_0x5228('0x14')]));});});};exports['GetCampaignHopperHistory']=function(_0x587b82){var _0x3bba93=this;return new Promise(function(_0x480062,_0x54713f){return db[_0x5228('0x17')][_0x5228('0x2b')]({'raw':_0x587b82[_0x5228('0x19')]?_0x587b82[_0x5228('0x19')]['raw']===undefined?!![]:![]:!![],'where':_0x587b82[_0x5228('0x19')]?_0x587b82[_0x5228('0x19')][_0x5228('0x1c')]||null:null,'attributes':[[_0x5228('0x2c'),_0x5228('0x2d')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')][_0x5228('0x1f')]('id')),_0x5228('0x43')],[db[_0x5228('0x1d')]['fn'](_0x5228('0x1e'),db[_0x5228('0x1d')]['fn']('IF',db[_0x5228('0x1d')][_0x5228('0x21')](_0x5228('0x22')))),'ivrAnswerCallsDay']],'group':[_0x5228('0x2c')]})[_0x5228('0xb')](function(_0x2473e6){logger['info'](_0x5228('0x44'),_0x587b82);logger[_0x5228('0xe')](_0x5228('0x44'),_0x587b82,JSON[_0x5228('0x11')](_0x2473e6));_0x480062(_0x2473e6);})[_0x5228('0x15')](function(_0x344f2c){logger[_0x5228('0x12')](_0x5228('0x44'),_0x344f2c[_0x5228('0x14')],_0x587b82);_0x54713f(_0x3bba93[_0x5228('0x12')](0x1f4,_0x344f2c[_0x5228('0x14')]));});});};