48fbc7eec3ccd43316b91690465d802bf5c73c05
[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 _0x13f6=['lodash','util','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','../../config/environment','client','http','request','then','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','info','result','CreateCmHopperHistory','CmHopperHistory','create','body','raw','catch','AvgHandleTime','findAll','options','sequelize','predictiveIntervalTotalCalls','COUNT','literal','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','predictiveIntervalAvgHoldtime','AVG','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','`state`\x20=\x204,\x201,\x20null','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','`state`\x20=\x2011\x20,\x201,\x20null','outboundDropCallsDayCallersExit','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','outboundAnswerAgiCallsDay','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetCampaignHopperHistory','where','col','ivrTotalCallsDays','ivrAnswerCallsDay'];(function(_0x17bc56,_0x136941){var _0x347ba6=function(_0x1ae259){while(--_0x1ae259){_0x17bc56['push'](_0x17bc56['shift']());}};_0x347ba6(++_0x136941);}(_0x13f6,0x124));var _0x613f=function(_0x251b02,_0x38c0f7){_0x251b02=_0x251b02-0x0;var _0x14017c=_0x13f6[_0x251b02];return _0x14017c;};'use strict';var _=require(_0x613f('0x0'));var util=require(_0x613f('0x1'));var moment=require('moment');var BPromise=require('bluebird');var rs=require(_0x613f('0x2'));var fs=require('fs');var Redis=require(_0x613f('0x3'));var db=require(_0x613f('0x4'))['db'];var utils=require('../../config/utils');var logger=require(_0x613f('0x5'))(_0x613f('0x6'));var config=require(_0x613f('0x7'));var jayson=require('jayson/promise');var client=jayson[_0x613f('0x8')][_0x613f('0x9')]({'port':0x232a});function respondWithRpcPromise(_0x5618fa,_0x4b546b,_0x5a84f2){return new BPromise(function(_0x5c93c0,_0x2d5973){return client[_0x613f('0xa')](_0x5618fa,_0x5a84f2)[_0x613f('0xb')](function(_0x35b672){logger['info'](_0x613f('0xc'),_0x4b546b,_0x613f('0xd'));logger[_0x613f('0xe')]('CmHopperHistory,\x20%s,\x20%s,\x20%s',_0x4b546b,_0x613f('0xd'),JSON[_0x613f('0xf')](_0x35b672));if(_0x35b672[_0x613f('0x10')]){if(_0x35b672['error'][_0x613f('0x11')]===0x1f4){logger[_0x613f('0x10')]('CmHopperHistory,\x20%s,\x20%s',_0x4b546b,_0x35b672['error']['message']);return _0x2d5973(_0x35b672[_0x613f('0x10')][_0x613f('0x12')]);}logger[_0x613f('0x10')](_0x613f('0xc'),_0x4b546b,_0x35b672[_0x613f('0x10')][_0x613f('0x12')]);return _0x5c93c0(_0x35b672[_0x613f('0x10')][_0x613f('0x12')]);}else{logger[_0x613f('0x13')](_0x613f('0xc'),_0x4b546b,'request\x20sent');_0x5c93c0(_0x35b672[_0x613f('0x14')]['message']);}})['catch'](function(_0x1bc605){logger[_0x613f('0x10')]('CmHopperHistory,\x20%s,\x20%s',_0x4b546b,_0x1bc605);_0x2d5973(_0x1bc605);});});}exports[_0x613f('0x15')]=function(_0x4f9dae){var _0x62ebfe=this;return new Promise(function(_0x1e5a11,_0x431266){return db[_0x613f('0x16')][_0x613f('0x17')](_0x4f9dae[_0x613f('0x18')],{'raw':_0x4f9dae['options']?_0x4f9dae['options'][_0x613f('0x19')]===undefined?!![]:![]:!![]})['then'](function(_0x48493c){logger[_0x613f('0x13')](_0x613f('0x15'),_0x4f9dae);logger['debug'](_0x613f('0x15'),_0x4f9dae,JSON[_0x613f('0xf')](_0x48493c));_0x1e5a11(_0x48493c);})[_0x613f('0x1a')](function(_0x48b28a){logger['error'](_0x613f('0x15'),_0x48b28a[_0x613f('0x12')],_0x4f9dae);_0x431266(_0x62ebfe[_0x613f('0x10')](0x1f4,_0x48b28a['message']));});});};exports[_0x613f('0x1b')]=function(_0x33e0c6){var _0x30de90=this;return new Promise(function(_0x1ee050,_0x3013a1){return db['CmHopperHistory'][_0x613f('0x1c')]({'raw':_0x33e0c6[_0x613f('0x1d')]?_0x33e0c6['options'][_0x613f('0x19')]===undefined?!![]:![]:!![],'where':_0x33e0c6[_0x613f('0x1d')]?_0x33e0c6[_0x613f('0x1d')]['where']||null:null,'attributes':[[db['sequelize']['fn']('COUNT',db[_0x613f('0x1e')]['col']('id')),_0x613f('0x1f')],[db[_0x613f('0x1e')]['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')]['literal']('`state`\x20=\x204,\x201,\x20null'))),'predictiveIntervalAnsweredCalls'],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db['sequelize'][_0x613f('0x21')](_0x613f('0x22')))),_0x613f('0x23')],[db[_0x613f('0x1e')]['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x24')))),_0x613f('0x25')],[db[_0x613f('0x1e')]['fn']('AVG',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')]('`state`\x20=\x204,\x20`holdtime`,\x20null'))),_0x613f('0x26')],[db['sequelize']['fn'](_0x613f('0x27'),db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x28')))),_0x613f('0x29')]]})['then'](function(_0x1a18ce){logger[_0x613f('0x13')](_0x613f('0x1b'),_0x33e0c6);logger[_0x613f('0xe')](_0x613f('0x1b'),_0x33e0c6,JSON['stringify'](_0x1a18ce));_0x1ee050(_0x1a18ce);})['catch'](function(_0x4eea2c){logger[_0x613f('0x10')](_0x613f('0x1b'),_0x4eea2c[_0x613f('0x12')],_0x33e0c6);_0x3013a1(_0x30de90[_0x613f('0x10')](0x1f4,_0x4eea2c['message']));});});};exports[_0x613f('0x2a')]=function(_0xaedbbd){var _0x4ed25f=this;return new Promise(function(_0x45e6df,_0x550cea){return db[_0x613f('0x16')]['findAll']({'raw':_0xaedbbd[_0x613f('0x1d')]?_0xaedbbd['options'][_0x613f('0x19')]===undefined?!![]:![]:!![],'where':_0xaedbbd[_0x613f('0x1d')]?_0xaedbbd[_0x613f('0x1d')]['where']||null:null,'attributes':[[_0x613f('0x2b'),_0x613f('0x2c')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x2d')))),_0x613f('0x2e')],[db[_0x613f('0x1e')]['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x2f')))),_0x613f('0x30')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db['sequelize']['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x31')))),_0x613f('0x32')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db['sequelize'][_0x613f('0x21')](_0x613f('0x33')))),_0x613f('0x34')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x35')))),_0x613f('0x36')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db['sequelize'][_0x613f('0x21')](_0x613f('0x37')))),_0x613f('0x38')],[db[_0x613f('0x1e')]['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x39')))),_0x613f('0x3a')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')]('`state`\x20=\x2012,\x201,\x20null'))),'outboundUnknownCallsDay'],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db['sequelize']['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x3b')))),_0x613f('0x3c')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x3d')))),_0x613f('0x3e')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x3f')))),_0x613f('0x40')],[db['sequelize']['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')]['literal']('`state`\x20=\x2016,\x201,\x20null'))),_0x613f('0x41')],[db['sequelize']['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')]('`state`\x20=\x2020,\x201,\x20null'))),_0x613f('0x40')],[db[_0x613f('0x1e')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x613f('0x1e')][_0x613f('0x21')](_0x613f('0x42')))),_0x613f('0x43')]],'group':[_0x613f('0x2b')]})[_0x613f('0xb')](function(_0x24d162){logger['info']('GetVoiceQueueHopperHistory',_0xaedbbd);logger[_0x613f('0xe')]('GetVoiceQueueHopperHistory',_0xaedbbd,JSON['stringify'](_0x24d162));_0x45e6df(_0x24d162);})[_0x613f('0x1a')](function(_0x52c2a6){logger[_0x613f('0x10')]('GetVoiceQueueHopperHistory',_0x52c2a6[_0x613f('0x12')],_0xaedbbd);_0x550cea(_0x4ed25f[_0x613f('0x10')](0x1f4,_0x52c2a6[_0x613f('0x12')]));});});};exports[_0x613f('0x44')]=function(_0x11e4a4){var _0x2cb4a1=this;return new Promise(function(_0x346e2c,_0x4a49a1){return db[_0x613f('0x16')]['findAll']({'raw':_0x11e4a4[_0x613f('0x1d')]?_0x11e4a4[_0x613f('0x1d')][_0x613f('0x19')]===undefined?!![]:![]:!![],'where':_0x11e4a4[_0x613f('0x1d')]?_0x11e4a4[_0x613f('0x1d')][_0x613f('0x45')]||null:null,'attributes':[[_0x613f('0x2b'),_0x613f('0x2c')],[db[_0x613f('0x1e')]['fn'](_0x613f('0x20'),db[_0x613f('0x1e')][_0x613f('0x46')]('id')),_0x613f('0x47')],[db['sequelize']['fn']('COUNT',db[_0x613f('0x1e')]['fn']('IF',db['sequelize'][_0x613f('0x21')](_0x613f('0x31')))),_0x613f('0x48')]],'group':[_0x613f('0x2b')]})[_0x613f('0xb')](function(_0x46a945){logger[_0x613f('0x13')](_0x613f('0x44'),_0x11e4a4);logger[_0x613f('0xe')](_0x613f('0x44'),_0x11e4a4,JSON[_0x613f('0xf')](_0x46a945));_0x346e2c(_0x46a945);})['catch'](function(_0xbc2c8f){logger[_0x613f('0x10')](_0x613f('0x44'),_0xbc2c8f[_0x613f('0x12')],_0x11e4a4);_0x4a49a1(_0x2cb4a1['error'](0x1f4,_0xbc2c8f[_0x613f('0x12')]));});});};