Built motion from commit (unavailable).|2.5.26
[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 _0x6754=['predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','campaign','name','`state`\x20=\x200,\x201,\x20null','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','`state`\x20=\x2011\x20,\x201,\x20null','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetVoiceQueueHopperHistory','GetCampaignHopperHistory','ivrAnswerCallsDay','lodash','util','moment','bluebird','randomstring','../../mysqldb','../../config/utils','jayson/promise','http','request','then','info','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','CmHopperHistory,\x20%s,\x20%s','message','catch','CreateCmHopperHistory','CmHopperHistory','options','raw','AvgHandleTime','findAll','where','sequelize','col','COUNT','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null'];(function(_0x1d0458,_0x389f29){var _0x35eea4=function(_0x181770){while(--_0x181770){_0x1d0458['push'](_0x1d0458['shift']());}};_0x35eea4(++_0x389f29);}(_0x6754,0x9d));var _0x4675=function(_0xb47c6d,_0x108563){_0xb47c6d=_0xb47c6d-0x0;var _0x1687fd=_0x6754[_0xb47c6d];return _0x1687fd;};'use strict';var _=require(_0x4675('0x0'));var util=require(_0x4675('0x1'));var moment=require(_0x4675('0x2'));var BPromise=require(_0x4675('0x3'));var rs=require(_0x4675('0x4'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x4675('0x5'))['db'];var utils=require(_0x4675('0x6'));var logger=require('../../config/logger')('rpc');var config=require('../../config/environment');var jayson=require(_0x4675('0x7'));var client=jayson['client'][_0x4675('0x8')]({'port':0x232a});function respondWithRpcPromise(_0x3184b2,_0x1099c9,_0x2aaa19){return new BPromise(function(_0x53c79d,_0x111985){return client[_0x4675('0x9')](_0x3184b2,_0x2aaa19)[_0x4675('0xa')](function(_0x195eab){logger[_0x4675('0xb')]('CmHopperHistory,\x20%s,\x20%s',_0x1099c9,'request\x20sent');logger[_0x4675('0xc')](_0x4675('0xd'),_0x1099c9,_0x4675('0xe'),JSON[_0x4675('0xf')](_0x195eab));if(_0x195eab[_0x4675('0x10')]){if(_0x195eab[_0x4675('0x10')][_0x4675('0x11')]===0x1f4){logger[_0x4675('0x10')](_0x4675('0x12'),_0x1099c9,_0x195eab[_0x4675('0x10')][_0x4675('0x13')]);return _0x111985(_0x195eab[_0x4675('0x10')][_0x4675('0x13')]);}logger[_0x4675('0x10')](_0x4675('0x12'),_0x1099c9,_0x195eab[_0x4675('0x10')][_0x4675('0x13')]);return _0x53c79d(_0x195eab[_0x4675('0x10')][_0x4675('0x13')]);}else{logger['info'](_0x4675('0x12'),_0x1099c9,_0x4675('0xe'));_0x53c79d(_0x195eab['result'][_0x4675('0x13')]);}})[_0x4675('0x14')](function(_0x5eb4bf){logger[_0x4675('0x10')](_0x4675('0x12'),_0x1099c9,_0x5eb4bf);_0x111985(_0x5eb4bf);});});}exports[_0x4675('0x15')]=function(_0x474c76){var _0x38bbf8=this;return new Promise(function(_0x4575d4,_0x2f08c0){return db[_0x4675('0x16')]['create'](_0x474c76['body'],{'raw':_0x474c76[_0x4675('0x17')]?_0x474c76[_0x4675('0x17')][_0x4675('0x18')]===undefined?!![]:![]:!![]})['then'](function(_0x361444){logger[_0x4675('0xb')](_0x4675('0x15'),_0x474c76);logger['debug'](_0x4675('0x15'),_0x474c76,JSON[_0x4675('0xf')](_0x361444));_0x4575d4(_0x361444);})[_0x4675('0x14')](function(_0x3f63fb){logger['error'](_0x4675('0x15'),_0x3f63fb[_0x4675('0x13')],_0x474c76);_0x2f08c0(_0x38bbf8[_0x4675('0x10')](0x1f4,_0x3f63fb[_0x4675('0x13')]));});});};exports[_0x4675('0x19')]=function(_0x44fdfc){var _0x2b5bf4=this;return new Promise(function(_0x53d6a3,_0x127771){return db[_0x4675('0x16')][_0x4675('0x1a')]({'raw':_0x44fdfc[_0x4675('0x17')]?_0x44fdfc[_0x4675('0x17')][_0x4675('0x18')]===undefined?!![]:![]:!![],'where':_0x44fdfc[_0x4675('0x17')]?_0x44fdfc[_0x4675('0x17')][_0x4675('0x1b')]||null:null,'attributes':[[db[_0x4675('0x1c')]['fn']('COUNT',db[_0x4675('0x1c')][_0x4675('0x1d')]('id')),'predictiveIntervalTotalCalls'],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db['sequelize']['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x20')))),_0x4675('0x21')],[db['sequelize']['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db['sequelize'][_0x4675('0x1f')](_0x4675('0x22')))),_0x4675('0x23')],[db['sequelize']['fn']('COUNT',db[_0x4675('0x1c')]['fn']('IF',db['sequelize']['literal'](_0x4675('0x24')))),_0x4675('0x25')],[db[_0x4675('0x1c')]['fn'](_0x4675('0x26'),db['sequelize']['fn']('IF',db[_0x4675('0x1c')]['literal'](_0x4675('0x27')))),'predictiveIntervalAvgHoldtime'],[db['sequelize']['fn'](_0x4675('0x26'),db['sequelize']['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x28')))),_0x4675('0x29')]]})[_0x4675('0xa')](function(_0x2cc166){logger[_0x4675('0xb')]('AvgHandleTime',_0x44fdfc);logger[_0x4675('0xc')]('AvgHandleTime',_0x44fdfc,JSON[_0x4675('0xf')](_0x2cc166));_0x53d6a3(_0x2cc166);})[_0x4675('0x14')](function(_0x4fd42c){logger['error'](_0x4675('0x19'),_0x4fd42c[_0x4675('0x13')],_0x44fdfc);_0x127771(_0x2b5bf4['error'](0x1f4,_0x4fd42c['message']));});});};exports['GetVoiceQueueHopperHistory']=function(_0x42bed2){var _0x582f0d=this;return new Promise(function(_0x4f746c,_0x87afea){return db[_0x4675('0x16')][_0x4675('0x1a')]({'raw':_0x42bed2[_0x4675('0x17')]?_0x42bed2[_0x4675('0x17')][_0x4675('0x18')]===undefined?!![]:![]:!![],'where':_0x42bed2['options']?_0x42bed2[_0x4675('0x17')][_0x4675('0x1b')]||null:null,'attributes':[[_0x4675('0x2a'),_0x4675('0x2b')],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x2c')))),'outboundNoSuchCallsDay'],[db['sequelize']['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')]['literal']('`state`\x20=\x203,\x201,\x20null'))),'outboundNoAnswerCallsDay'],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db['sequelize'][_0x4675('0x1f')](_0x4675('0x20')))),'outboundAnswerCallsDay'],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x2d')))),_0x4675('0x2e')],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db['sequelize']['fn']('IF',db['sequelize'][_0x4675('0x1f')](_0x4675('0x2f')))),_0x4675('0x30')],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x31')))),'outboundDropCallsDayTimeout'],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db['sequelize']['literal'](_0x4675('0x32')))),'outboundDropCallsDayCallersExit'],[db['sequelize']['fn']('COUNT',db[_0x4675('0x1c')]['fn']('IF',db['sequelize'][_0x4675('0x1f')]('`state`\x20=\x2012,\x201,\x20null'))),'outboundUnknownCallsDay'],[db['sequelize']['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x33')))),_0x4675('0x34')],[db[_0x4675('0x1c')]['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0x4675('0x1f')](_0x4675('0x35')))),_0x4675('0x36')],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db['sequelize']['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x37')))),_0x4675('0x38')],[db[_0x4675('0x1c')]['fn']('COUNT',db[_0x4675('0x1c')]['fn']('IF',db['sequelize']['literal'](_0x4675('0x39')))),'outboundAnswerAgiCallsDay'],[db['sequelize']['fn']('COUNT',db[_0x4675('0x1c')]['fn']('IF',db['sequelize']['literal'](_0x4675('0x3a')))),'outboundRejectCallsDay'],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x3b')))),_0x4675('0x3c')]],'group':[_0x4675('0x2a')]})['then'](function(_0x1e0f71){logger[_0x4675('0xb')]('GetVoiceQueueHopperHistory',_0x42bed2);logger[_0x4675('0xc')](_0x4675('0x3d'),_0x42bed2,JSON['stringify'](_0x1e0f71));_0x4f746c(_0x1e0f71);})[_0x4675('0x14')](function(_0x41d463){logger['error']('GetVoiceQueueHopperHistory',_0x41d463['message'],_0x42bed2);_0x87afea(_0x582f0d[_0x4675('0x10')](0x1f4,_0x41d463['message']));});});};exports[_0x4675('0x3e')]=function(_0xb6cb0a){var _0x55e38f=this;return new Promise(function(_0x5f0d32,_0xc255ae){return db[_0x4675('0x16')][_0x4675('0x1a')]({'raw':_0xb6cb0a[_0x4675('0x17')]?_0xb6cb0a['options'][_0x4675('0x18')]===undefined?!![]:![]:!![],'where':_0xb6cb0a[_0x4675('0x17')]?_0xb6cb0a[_0x4675('0x17')][_0x4675('0x1b')]||null:null,'attributes':[['campaign',_0x4675('0x2b')],[db[_0x4675('0x1c')]['fn']('COUNT',db[_0x4675('0x1c')][_0x4675('0x1d')]('id')),'ivrTotalCallsDays'],[db[_0x4675('0x1c')]['fn'](_0x4675('0x1e'),db[_0x4675('0x1c')]['fn']('IF',db[_0x4675('0x1c')][_0x4675('0x1f')](_0x4675('0x20')))),_0x4675('0x3f')]],'group':[_0x4675('0x2a')]})[_0x4675('0xa')](function(_0x565601){logger['info'](_0x4675('0x3e'),_0xb6cb0a);logger['debug'](_0x4675('0x3e'),_0xb6cb0a,JSON[_0x4675('0xf')](_0x565601));_0x5f0d32(_0x565601);})[_0x4675('0x14')](function(_0x224b78){logger[_0x4675('0x10')]('GetCampaignHopperHistory',_0x224b78['message'],_0xb6cb0a);_0xc255ae(_0x55e38f[_0x4675('0x10')](0x1f4,_0x224b78[_0x4675('0x13')]));});});};