47368780f56fe5be5cb2d8e9cee05b1ae801249b
[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 _0x0f73=['findAll','sequelize','COUNT','col','predictiveIntervalTotalCalls','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','AVG','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','where','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundAnswerCallsDay','`state`\x20=\x208,\x201,\x20null','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayCallersExit','`state`\x20=\x2012,\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','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetCampaignHopperHistory','ivrTotalCallsDays','ivrAnswerCallsDay','lodash','util','moment','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise','request','then','info','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','CmHopperHistory,\x20%s,\x20%s','message','result','catch','CreateCmHopperHistory','CmHopperHistory','create','body','options','raw','AvgHandleTime'];(function(_0x536fb3,_0x3c3201){var _0x182cbf=function(_0x394f2b){while(--_0x394f2b){_0x536fb3['push'](_0x536fb3['shift']());}};_0x182cbf(++_0x3c3201);}(_0x0f73,0x146));var _0x30f7=function(_0x3d5806,_0x1e01e2){_0x3d5806=_0x3d5806-0x0;var _0x50cb96=_0x0f73[_0x3d5806];return _0x50cb96;};'use strict';var _=require(_0x30f7('0x0'));var util=require(_0x30f7('0x1'));var moment=require(_0x30f7('0x2'));var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x30f7('0x3'));var db=require(_0x30f7('0x4'))['db'];var utils=require(_0x30f7('0x5'));var logger=require(_0x30f7('0x6'))(_0x30f7('0x7'));var config=require('../../config/environment');var jayson=require(_0x30f7('0x8'));var client=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x38ad1d,_0x1c90cb,_0x2de5e7){return new BPromise(function(_0x7e377e,_0x5c5cf3){return client[_0x30f7('0x9')](_0x38ad1d,_0x2de5e7)[_0x30f7('0xa')](function(_0x5eedb2){logger[_0x30f7('0xb')]('CmHopperHistory,\x20%s,\x20%s',_0x1c90cb,'request\x20sent');logger[_0x30f7('0xc')](_0x30f7('0xd'),_0x1c90cb,_0x30f7('0xe'),JSON[_0x30f7('0xf')](_0x5eedb2));if(_0x5eedb2['error']){if(_0x5eedb2[_0x30f7('0x10')][_0x30f7('0x11')]===0x1f4){logger['error'](_0x30f7('0x12'),_0x1c90cb,_0x5eedb2[_0x30f7('0x10')][_0x30f7('0x13')]);return _0x5c5cf3(_0x5eedb2['error'][_0x30f7('0x13')]);}logger[_0x30f7('0x10')]('CmHopperHistory,\x20%s,\x20%s',_0x1c90cb,_0x5eedb2[_0x30f7('0x10')][_0x30f7('0x13')]);return _0x7e377e(_0x5eedb2[_0x30f7('0x10')][_0x30f7('0x13')]);}else{logger[_0x30f7('0xb')]('CmHopperHistory,\x20%s,\x20%s',_0x1c90cb,'request\x20sent');_0x7e377e(_0x5eedb2[_0x30f7('0x14')][_0x30f7('0x13')]);}})[_0x30f7('0x15')](function(_0x1a5565){logger['error'](_0x30f7('0x12'),_0x1c90cb,_0x1a5565);_0x5c5cf3(_0x1a5565);});});}exports[_0x30f7('0x16')]=function(_0x1efb71){var _0x1083e3=this;return new Promise(function(_0x1e7777,_0x21f3d1){return db[_0x30f7('0x17')][_0x30f7('0x18')](_0x1efb71[_0x30f7('0x19')],{'raw':_0x1efb71['options']?_0x1efb71[_0x30f7('0x1a')][_0x30f7('0x1b')]===undefined?!![]:![]:!![]})[_0x30f7('0xa')](function(_0x12cdf1){logger[_0x30f7('0xb')](_0x30f7('0x16'),_0x1efb71);logger['debug'](_0x30f7('0x16'),_0x1efb71,JSON[_0x30f7('0xf')](_0x12cdf1));_0x1e7777(_0x12cdf1);})['catch'](function(_0x570d52){logger[_0x30f7('0x10')]('CreateCmHopperHistory',_0x570d52['message'],_0x1efb71);_0x21f3d1(_0x1083e3['error'](0x1f4,_0x570d52[_0x30f7('0x13')]));});});};exports[_0x30f7('0x1c')]=function(_0x4c686d){var _0x4b77ec=this;return new Promise(function(_0x2ad9e5,_0x86b4f8){return db['CmHopperHistory'][_0x30f7('0x1d')]({'raw':_0x4c686d[_0x30f7('0x1a')]?_0x4c686d[_0x30f7('0x1a')]['raw']===undefined?!![]:![]:!![],'where':_0x4c686d[_0x30f7('0x1a')]?_0x4c686d[_0x30f7('0x1a')]['where']||null:null,'attributes':[[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db['sequelize'][_0x30f7('0x20')]('id')),_0x30f7('0x21')],[db['sequelize']['fn'](_0x30f7('0x1f'),db['sequelize']['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x23')))),_0x30f7('0x24')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x25')))),'predictiveIntervalDroppedCallsTimeout'],[db[_0x30f7('0x1e')]['fn']('COUNT',db[_0x30f7('0x1e')]['fn']('IF',db['sequelize'][_0x30f7('0x22')](_0x30f7('0x26')))),_0x30f7('0x27')],[db[_0x30f7('0x1e')]['fn']('AVG',db['sequelize']['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x28')))),_0x30f7('0x29')],[db['sequelize']['fn'](_0x30f7('0x2a'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x2b')))),_0x30f7('0x2c')]]})[_0x30f7('0xa')](function(_0x16c791){logger[_0x30f7('0xb')]('AvgHandleTime',_0x4c686d);logger[_0x30f7('0xc')](_0x30f7('0x1c'),_0x4c686d,JSON[_0x30f7('0xf')](_0x16c791));_0x2ad9e5(_0x16c791);})[_0x30f7('0x15')](function(_0x579f46){logger[_0x30f7('0x10')](_0x30f7('0x1c'),_0x579f46[_0x30f7('0x13')],_0x4c686d);_0x86b4f8(_0x4b77ec['error'](0x1f4,_0x579f46[_0x30f7('0x13')]));});});};exports[_0x30f7('0x2d')]=function(_0x32214e){var _0x1e46ba=this;return new Promise(function(_0x1f4d3f,_0x31253a){return db[_0x30f7('0x17')][_0x30f7('0x1d')]({'raw':_0x32214e['options']?_0x32214e[_0x30f7('0x1a')][_0x30f7('0x1b')]===undefined?!![]:![]:!![],'where':_0x32214e['options']?_0x32214e[_0x30f7('0x1a')][_0x30f7('0x2e')]||null:null,'attributes':[[_0x30f7('0x2f'),_0x30f7('0x30')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x31')))),_0x30f7('0x32')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')]['literal'](_0x30f7('0x33')))),'outboundNoAnswerCallsDay'],[db['sequelize']['fn']('COUNT',db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x23')))),_0x30f7('0x34')],[db[_0x30f7('0x1e')]['fn']('COUNT',db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')]['literal']('`state`\x20=\x205,\x201,\x20null'))),'outboundBusyCallsDay'],[db['sequelize']['fn'](_0x30f7('0x1f'),db['sequelize']['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x35')))),'outboundCongestionCallsDay'],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x36')))),'outboundDropCallsDayTimeout'],[db['sequelize']['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')]('`state`\x20=\x2011\x20,\x201,\x20null'))),_0x30f7('0x37')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db['sequelize']['fn']('IF',db['sequelize'][_0x30f7('0x22')](_0x30f7('0x38')))),'outboundUnknownCallsDay'],[db[_0x30f7('0x1e')]['fn']('COUNT',db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x39')))),_0x30f7('0x3a')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x3b')))),_0x30f7('0x3c')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x3d')))),_0x30f7('0x3e')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db['sequelize']['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x3f')))),_0x30f7('0x40')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x41')))),_0x30f7('0x3e')],[db[_0x30f7('0x1e')]['fn']('COUNT',db[_0x30f7('0x1e')]['fn']('IF',db['sequelize'][_0x30f7('0x22')](_0x30f7('0x42')))),_0x30f7('0x43')]],'group':['campaign']})[_0x30f7('0xa')](function(_0x9fc9f){logger[_0x30f7('0xb')]('GetVoiceQueueHopperHistory',_0x32214e);logger['debug'](_0x30f7('0x2d'),_0x32214e,JSON[_0x30f7('0xf')](_0x9fc9f));_0x1f4d3f(_0x9fc9f);})['catch'](function(_0x5c00f2){logger[_0x30f7('0x10')](_0x30f7('0x2d'),_0x5c00f2['message'],_0x32214e);_0x31253a(_0x1e46ba[_0x30f7('0x10')](0x1f4,_0x5c00f2[_0x30f7('0x13')]));});});};exports[_0x30f7('0x44')]=function(_0x314e74){var _0x2a16f7=this;return new Promise(function(_0x1455d7,_0x2180aa){return db[_0x30f7('0x17')][_0x30f7('0x1d')]({'raw':_0x314e74[_0x30f7('0x1a')]?_0x314e74['options'][_0x30f7('0x1b')]===undefined?!![]:![]:!![],'where':_0x314e74['options']?_0x314e74[_0x30f7('0x1a')][_0x30f7('0x2e')]||null:null,'attributes':[[_0x30f7('0x2f'),_0x30f7('0x30')],[db[_0x30f7('0x1e')]['fn'](_0x30f7('0x1f'),db['sequelize'][_0x30f7('0x20')]('id')),_0x30f7('0x45')],[db['sequelize']['fn']('COUNT',db[_0x30f7('0x1e')]['fn']('IF',db[_0x30f7('0x1e')][_0x30f7('0x22')](_0x30f7('0x23')))),_0x30f7('0x46')]],'group':[_0x30f7('0x2f')]})[_0x30f7('0xa')](function(_0x27bf73){logger[_0x30f7('0xb')](_0x30f7('0x44'),_0x314e74);logger[_0x30f7('0xc')](_0x30f7('0x44'),_0x314e74,JSON[_0x30f7('0xf')](_0x27bf73));_0x1455d7(_0x27bf73);})[_0x30f7('0x15')](function(_0x3d1ba1){logger[_0x30f7('0x10')](_0x30f7('0x44'),_0x3d1ba1[_0x30f7('0x13')],_0x314e74);_0x2180aa(_0x2a16f7[_0x30f7('0x10')](0x1f4,_0x3d1ba1[_0x30f7('0x13')]));});});};