20ca53ecc99971b290628ec190a471445b3b7309
[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 _0xc026=['stringify','error','code','message','request\x20sent','result','CreateCmHopperHistory','create','options','raw','then','findAll','sequelize','col','predictiveIntervalTotalCalls','COUNT','literal','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','AVG','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','AvgHandleTime','GetVoiceQueueHopperHistory','where','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','`state`\x20=\x204,\x201,\x20null','outboundAnswerCallsDay','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','`state`\x20=\x2011\x20,\x201,\x20null','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay','outboundBlacklistCallsDay','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','outboundReCallsDay','catch','GetCampaignHopperHistory','CmHopperHistory','ivrTotalCallsDays','lodash','moment','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','request','info','CmHopperHistory,\x20%s,\x20%s','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s'];(function(_0xcc9235,_0x5a199f){var _0x2f1f81=function(_0x18e63f){while(--_0x18e63f){_0xcc9235['push'](_0xcc9235['shift']());}};_0x2f1f81(++_0x5a199f);}(_0xc026,0x7b));var _0x6c02=function(_0x5ab5dd,_0x5929f4){_0x5ab5dd=_0x5ab5dd-0x0;var _0x6892d2=_0xc026[_0x5ab5dd];return _0x6892d2;};'use strict';var _=require(_0x6c02('0x0'));var util=require('util');var moment=require(_0x6c02('0x1'));var BPromise=require(_0x6c02('0x2'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x6c02('0x3'));var db=require(_0x6c02('0x4'))['db'];var utils=require(_0x6c02('0x5'));var logger=require(_0x6c02('0x6'))(_0x6c02('0x7'));var config=require(_0x6c02('0x8'));var jayson=require(_0x6c02('0x9'));var client=jayson[_0x6c02('0xa')][_0x6c02('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x36fc1e,_0x3e132e,_0x3abefa){return new BPromise(function(_0x16736f,_0x41afbf){return client[_0x6c02('0xc')](_0x36fc1e,_0x3abefa)['then'](function(_0x3b139f){logger[_0x6c02('0xd')](_0x6c02('0xe'),_0x3e132e,'request\x20sent');logger[_0x6c02('0xf')](_0x6c02('0x10'),_0x3e132e,'request\x20sent',JSON[_0x6c02('0x11')](_0x3b139f));if(_0x3b139f[_0x6c02('0x12')]){if(_0x3b139f[_0x6c02('0x12')][_0x6c02('0x13')]===0x1f4){logger[_0x6c02('0x12')](_0x6c02('0xe'),_0x3e132e,_0x3b139f[_0x6c02('0x12')][_0x6c02('0x14')]);return _0x41afbf(_0x3b139f[_0x6c02('0x12')][_0x6c02('0x14')]);}logger[_0x6c02('0x12')](_0x6c02('0xe'),_0x3e132e,_0x3b139f[_0x6c02('0x12')][_0x6c02('0x14')]);return _0x16736f(_0x3b139f[_0x6c02('0x12')]['message']);}else{logger[_0x6c02('0xd')]('CmHopperHistory,\x20%s,\x20%s',_0x3e132e,_0x6c02('0x15'));_0x16736f(_0x3b139f[_0x6c02('0x16')][_0x6c02('0x14')]);}})['catch'](function(_0x5edfa6){logger[_0x6c02('0x12')](_0x6c02('0xe'),_0x3e132e,_0x5edfa6);_0x41afbf(_0x5edfa6);});});}exports[_0x6c02('0x17')]=function(_0x484346){var _0x159fce=this;return new Promise(function(_0x4e4e31,_0x5c4dbe){return db['CmHopperHistory'][_0x6c02('0x18')](_0x484346['body'],{'raw':_0x484346[_0x6c02('0x19')]?_0x484346[_0x6c02('0x19')][_0x6c02('0x1a')]===undefined?!![]:![]:!![]})[_0x6c02('0x1b')](function(_0x5e5019){logger['info'](_0x6c02('0x17'),_0x484346);logger[_0x6c02('0xf')](_0x6c02('0x17'),_0x484346,JSON[_0x6c02('0x11')](_0x5e5019));_0x4e4e31(_0x5e5019);})['catch'](function(_0x192f1d){logger[_0x6c02('0x12')](_0x6c02('0x17'),_0x192f1d['message'],_0x484346);_0x5c4dbe(_0x159fce[_0x6c02('0x12')](0x1f4,_0x192f1d[_0x6c02('0x14')]));});});};exports['AvgHandleTime']=function(_0x414316){var _0xe5808a=this;return new Promise(function(_0x486e41,_0x4203ec){return db['CmHopperHistory'][_0x6c02('0x1c')]({'raw':_0x414316[_0x6c02('0x19')]?_0x414316[_0x6c02('0x19')][_0x6c02('0x1a')]===undefined?!![]:![]:!![],'where':_0x414316[_0x6c02('0x19')]?_0x414316[_0x6c02('0x19')]['where']||null:null,'attributes':[[db[_0x6c02('0x1d')]['fn']('COUNT',db[_0x6c02('0x1d')][_0x6c02('0x1e')]('id')),_0x6c02('0x1f')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db['sequelize']['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')]('`state`\x20=\x204,\x201,\x20null'))),_0x6c02('0x22')],[db[_0x6c02('0x1d')]['fn']('COUNT',db[_0x6c02('0x1d')]['fn']('IF',db['sequelize'][_0x6c02('0x21')]('`state`\x20=\x2010,\x201,\x20null'))),_0x6c02('0x23')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db['sequelize']['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x24')))),_0x6c02('0x25')],[db[_0x6c02('0x1d')]['fn']('AVG',db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x26')))),_0x6c02('0x27')],[db['sequelize']['fn'](_0x6c02('0x28'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x29')))),_0x6c02('0x2a')]]})[_0x6c02('0x1b')](function(_0x3eaf7c){logger[_0x6c02('0xd')](_0x6c02('0x2b'),_0x414316);logger[_0x6c02('0xf')](_0x6c02('0x2b'),_0x414316,JSON['stringify'](_0x3eaf7c));_0x486e41(_0x3eaf7c);})['catch'](function(_0x41c4e0){logger[_0x6c02('0x12')](_0x6c02('0x2b'),_0x41c4e0['message'],_0x414316);_0x4203ec(_0xe5808a[_0x6c02('0x12')](0x1f4,_0x41c4e0[_0x6c02('0x14')]));});});};exports[_0x6c02('0x2c')]=function(_0x40b271){var _0x4948f5=this;return new Promise(function(_0x36d849,_0x2dab14){return db['CmHopperHistory'][_0x6c02('0x1c')]({'raw':_0x40b271[_0x6c02('0x19')]?_0x40b271[_0x6c02('0x19')][_0x6c02('0x1a')]===undefined?!![]:![]:!![],'where':_0x40b271[_0x6c02('0x19')]?_0x40b271[_0x6c02('0x19')][_0x6c02('0x2d')]||null:null,'attributes':[[_0x6c02('0x2e'),_0x6c02('0x2f')],[db['sequelize']['fn']('COUNT',db[_0x6c02('0x1d')]['fn']('IF',db['sequelize']['literal'](_0x6c02('0x30')))),_0x6c02('0x31')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x32')))),'outboundNoAnswerCallsDay'],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x33')))),_0x6c02('0x34')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')]('`state`\x20=\x205,\x201,\x20null'))),'outboundBusyCallsDay'],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')]('`state`\x20=\x208,\x201,\x20null'))),_0x6c02('0x35')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x36')))),_0x6c02('0x37')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')]['literal'](_0x6c02('0x38')))),'outboundDropCallsDayCallersExit'],[db['sequelize']['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')](_0x6c02('0x39')))),_0x6c02('0x3a')],[db['sequelize']['fn'](_0x6c02('0x20'),db['sequelize']['fn']('IF',db[_0x6c02('0x1d')]['literal']('`state`\x20=\x2013,\x201,\x20null'))),_0x6c02('0x3b')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')]('`state`\x20=\x2014,\x201,\x20null'))),_0x6c02('0x3c')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db['sequelize']['literal'](_0x6c02('0x3d')))),_0x6c02('0x3e')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')]['literal'](_0x6c02('0x3f')))),_0x6c02('0x40')],[db['sequelize']['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')][_0x6c02('0x21')]('`state`\x20=\x2020,\x201,\x20null'))),_0x6c02('0x3e')],[db[_0x6c02('0x1d')]['fn']('COUNT',db[_0x6c02('0x1d')]['fn']('IF',db['sequelize']['literal']('`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null'))),_0x6c02('0x41')]],'group':[_0x6c02('0x2e')]})['then'](function(_0x4e8216){logger[_0x6c02('0xd')](_0x6c02('0x2c'),_0x40b271);logger['debug'](_0x6c02('0x2c'),_0x40b271,JSON['stringify'](_0x4e8216));_0x36d849(_0x4e8216);})[_0x6c02('0x42')](function(_0x41f664){logger[_0x6c02('0x12')](_0x6c02('0x2c'),_0x41f664[_0x6c02('0x14')],_0x40b271);_0x2dab14(_0x4948f5[_0x6c02('0x12')](0x1f4,_0x41f664[_0x6c02('0x14')]));});});};exports[_0x6c02('0x43')]=function(_0x3ba7c0){var _0x7ef661=this;return new Promise(function(_0x3c3018,_0x44f58f){return db[_0x6c02('0x44')][_0x6c02('0x1c')]({'raw':_0x3ba7c0['options']?_0x3ba7c0[_0x6c02('0x19')][_0x6c02('0x1a')]===undefined?!![]:![]:!![],'where':_0x3ba7c0[_0x6c02('0x19')]?_0x3ba7c0['options'][_0x6c02('0x2d')]||null:null,'attributes':[['campaign',_0x6c02('0x2f')],[db[_0x6c02('0x1d')]['fn'](_0x6c02('0x20'),db['sequelize']['col']('id')),_0x6c02('0x45')],[db['sequelize']['fn'](_0x6c02('0x20'),db[_0x6c02('0x1d')]['fn']('IF',db[_0x6c02('0x1d')]['literal'](_0x6c02('0x33')))),'ivrAnswerCallsDay']],'group':[_0x6c02('0x2e')]})['then'](function(_0x9d57a4){logger[_0x6c02('0xd')](_0x6c02('0x43'),_0x3ba7c0);logger[_0x6c02('0xf')](_0x6c02('0x43'),_0x3ba7c0,JSON[_0x6c02('0x11')](_0x9d57a4));_0x3c3018(_0x9d57a4);})[_0x6c02('0x42')](function(_0x315dc2){logger[_0x6c02('0x12')](_0x6c02('0x43'),_0x315dc2[_0x6c02('0x14')],_0x3ba7c0);_0x44f58f(_0x7ef661[_0x6c02('0x12')](0x1f4,_0x315dc2['message']));});});};