Built motion from commit 497d3d92.|2.5.43
[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 _0xc1aa=['literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','where','campaign','name','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','`state`\x20=\x205,\x201,\x20null','`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','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','`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','outboundReCallsDay','GetCampaignHopperHistory','ivrTotalCallsDays','lodash','moment','bluebird','randomstring','../../mysqldb','../../config/utils','rpc','http','then','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','error','message','CmHopperHistory','create','options','CreateCmHopperHistory','stringify','catch','AvgHandleTime','findAll','raw','sequelize','col','predictiveIntervalTotalCalls','COUNT'];(function(_0xdd861e,_0x2a25fb){var _0x1b7744=function(_0x5acf06){while(--_0x5acf06){_0xdd861e['push'](_0xdd861e['shift']());}};_0x1b7744(++_0x2a25fb);}(_0xc1aa,0xa9));var _0xac1a=function(_0x5e72b2,_0x55dd2f){_0x5e72b2=_0x5e72b2-0x0;var _0x47e960=_0xc1aa[_0x5e72b2];return _0x47e960;};'use strict';var _=require(_0xac1a('0x0'));var util=require('util');var moment=require(_0xac1a('0x1'));var BPromise=require(_0xac1a('0x2'));var rs=require(_0xac1a('0x3'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0xac1a('0x4'))['db'];var utils=require(_0xac1a('0x5'));var logger=require('../../config/logger')(_0xac1a('0x6'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson['client'][_0xac1a('0x7')]({'port':0x232a});function respondWithRpcPromise(_0x115030,_0xcf0e5c,_0x2231c8){return new BPromise(function(_0x1f070b,_0x4a761f){return client['request'](_0x115030,_0x2231c8)[_0xac1a('0x8')](function(_0x538810){logger[_0xac1a('0x9')](_0xac1a('0xa'),_0xcf0e5c,_0xac1a('0xb'));logger[_0xac1a('0xc')](_0xac1a('0xd'),_0xcf0e5c,_0xac1a('0xb'),JSON['stringify'](_0x538810));if(_0x538810[_0xac1a('0xe')]){if(_0x538810[_0xac1a('0xe')]['code']===0x1f4){logger[_0xac1a('0xe')](_0xac1a('0xa'),_0xcf0e5c,_0x538810[_0xac1a('0xe')]['message']);return _0x4a761f(_0x538810[_0xac1a('0xe')]['message']);}logger[_0xac1a('0xe')](_0xac1a('0xa'),_0xcf0e5c,_0x538810[_0xac1a('0xe')][_0xac1a('0xf')]);return _0x1f070b(_0x538810[_0xac1a('0xe')][_0xac1a('0xf')]);}else{logger['info'](_0xac1a('0xa'),_0xcf0e5c,_0xac1a('0xb'));_0x1f070b(_0x538810['result'][_0xac1a('0xf')]);}})['catch'](function(_0x2cc52e){logger[_0xac1a('0xe')]('CmHopperHistory,\x20%s,\x20%s',_0xcf0e5c,_0x2cc52e);_0x4a761f(_0x2cc52e);});});}exports['CreateCmHopperHistory']=function(_0x4dcd02){var _0x53c1c4=this;return new Promise(function(_0x350d1a,_0x96e67){return db[_0xac1a('0x10')][_0xac1a('0x11')](_0x4dcd02['body'],{'raw':_0x4dcd02[_0xac1a('0x12')]?_0x4dcd02['options']['raw']===undefined?!![]:![]:!![]})[_0xac1a('0x8')](function(_0x368093){logger[_0xac1a('0x9')](_0xac1a('0x13'),_0x4dcd02);logger[_0xac1a('0xc')](_0xac1a('0x13'),_0x4dcd02,JSON[_0xac1a('0x14')](_0x368093));_0x350d1a(_0x368093);})[_0xac1a('0x15')](function(_0x5e4989){logger[_0xac1a('0xe')](_0xac1a('0x13'),_0x5e4989['message'],_0x4dcd02);_0x96e67(_0x53c1c4[_0xac1a('0xe')](0x1f4,_0x5e4989['message']));});});};exports[_0xac1a('0x16')]=function(_0x31a5ff){var _0x4c4601=this;return new Promise(function(_0x512722,_0x1b0bc4){return db[_0xac1a('0x10')][_0xac1a('0x17')]({'raw':_0x31a5ff[_0xac1a('0x12')]?_0x31a5ff[_0xac1a('0x12')][_0xac1a('0x18')]===undefined?!![]:![]:!![],'where':_0x31a5ff[_0xac1a('0x12')]?_0x31a5ff[_0xac1a('0x12')]['where']||null:null,'attributes':[[db[_0xac1a('0x19')]['fn']('COUNT',db[_0xac1a('0x19')][_0xac1a('0x1a')]('id')),_0xac1a('0x1b')],[db['sequelize']['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x1e')))),_0xac1a('0x1f')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x20')))),'predictiveIntervalDroppedCallsTimeout'],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x21')))),_0xac1a('0x22')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x23'),db['sequelize']['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x24')))),_0xac1a('0x25')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x23'),db['sequelize']['fn']('IF',db['sequelize'][_0xac1a('0x1d')](_0xac1a('0x26')))),_0xac1a('0x27')]]})[_0xac1a('0x8')](function(_0x2bc834){logger[_0xac1a('0x9')](_0xac1a('0x16'),_0x31a5ff);logger[_0xac1a('0xc')](_0xac1a('0x16'),_0x31a5ff,JSON[_0xac1a('0x14')](_0x2bc834));_0x512722(_0x2bc834);})[_0xac1a('0x15')](function(_0x2dbea3){logger[_0xac1a('0xe')](_0xac1a('0x16'),_0x2dbea3[_0xac1a('0xf')],_0x31a5ff);_0x1b0bc4(_0x4c4601['error'](0x1f4,_0x2dbea3[_0xac1a('0xf')]));});});};exports[_0xac1a('0x28')]=function(_0x244d25){var _0x38fc12=this;return new Promise(function(_0x51e886,_0x5835e3){return db[_0xac1a('0x10')][_0xac1a('0x17')]({'raw':_0x244d25[_0xac1a('0x12')]?_0x244d25[_0xac1a('0x12')][_0xac1a('0x18')]===undefined?!![]:![]:!![],'where':_0x244d25[_0xac1a('0x12')]?_0x244d25[_0xac1a('0x12')][_0xac1a('0x29')]||null:null,'attributes':[[_0xac1a('0x2a'),_0xac1a('0x2b')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db['sequelize']['fn']('IF',db['sequelize']['literal']('`state`\x20=\x200,\x201,\x20null'))),_0xac1a('0x2c')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db['sequelize'][_0xac1a('0x1d')](_0xac1a('0x2d')))),'outboundNoAnswerCallsDay'],[db['sequelize']['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x1e')))),'outboundAnswerCallsDay'],[db[_0xac1a('0x19')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x2e')))),'outboundBusyCallsDay'],[db[_0xac1a('0x19')]['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize']['literal'](_0xac1a('0x2f')))),_0xac1a('0x30')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db['sequelize']['literal'](_0xac1a('0x31')))),_0xac1a('0x32')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db['sequelize']['fn']('IF',db[_0xac1a('0x19')]['literal'](_0xac1a('0x33')))),_0xac1a('0x34')],[db[_0xac1a('0x19')]['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0xac1a('0x1d')](_0xac1a('0x35')))),'outboundUnknownCallsDay'],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db['sequelize'][_0xac1a('0x1d')](_0xac1a('0x36')))),_0xac1a('0x37')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x38')))),'outboundOriginateFailureCallsDay'],[db['sequelize']['fn'](_0xac1a('0x1c'),db['sequelize']['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x39')))),_0xac1a('0x3a')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db['sequelize'][_0xac1a('0x1d')](_0xac1a('0x3b')))),_0xac1a('0x3c')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db['sequelize']['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x3d')))),_0xac1a('0x3a')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')]['literal'](_0xac1a('0x3e')))),_0xac1a('0x3f')]],'group':[_0xac1a('0x2a')]})['then'](function(_0x373162){logger[_0xac1a('0x9')](_0xac1a('0x28'),_0x244d25);logger['debug']('GetVoiceQueueHopperHistory',_0x244d25,JSON[_0xac1a('0x14')](_0x373162));_0x51e886(_0x373162);})[_0xac1a('0x15')](function(_0x19bba1){logger['error']('GetVoiceQueueHopperHistory',_0x19bba1[_0xac1a('0xf')],_0x244d25);_0x5835e3(_0x38fc12[_0xac1a('0xe')](0x1f4,_0x19bba1[_0xac1a('0xf')]));});});};exports[_0xac1a('0x40')]=function(_0xaa06bd){var _0x5050a9=this;return new Promise(function(_0x3f1380,_0x502d12){return db[_0xac1a('0x10')][_0xac1a('0x17')]({'raw':_0xaa06bd[_0xac1a('0x12')]?_0xaa06bd[_0xac1a('0x12')][_0xac1a('0x18')]===undefined?!![]:![]:!![],'where':_0xaa06bd['options']?_0xaa06bd[_0xac1a('0x12')][_0xac1a('0x29')]||null:null,'attributes':[[_0xac1a('0x2a'),_0xac1a('0x2b')],[db[_0xac1a('0x19')]['fn']('COUNT',db['sequelize'][_0xac1a('0x1a')]('id')),_0xac1a('0x41')],[db[_0xac1a('0x19')]['fn'](_0xac1a('0x1c'),db[_0xac1a('0x19')]['fn']('IF',db[_0xac1a('0x19')][_0xac1a('0x1d')](_0xac1a('0x1e')))),'ivrAnswerCallsDay']],'group':[_0xac1a('0x2a')]})['then'](function(_0xfaab8b){logger[_0xac1a('0x9')](_0xac1a('0x40'),_0xaa06bd);logger[_0xac1a('0xc')](_0xac1a('0x40'),_0xaa06bd,JSON[_0xac1a('0x14')](_0xfaab8b));_0x3f1380(_0xfaab8b);})[_0xac1a('0x15')](function(_0x2a77c0){logger['error'](_0xac1a('0x40'),_0x2a77c0[_0xac1a('0xf')],_0xaa06bd);_0x502d12(_0x5050a9[_0xac1a('0xe')](0x1f4,_0x2a77c0[_0xac1a('0xf')]));});});};