Built motion from commit (unavailable).|2.3.4
[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 _0x5566=['predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','outboundAnswerCallsDay','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','outboundUnknownCallsDay','outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','outboundReCallsDay','where','ivrAnswerCallsDay','GetCampaignHopperHistory','lodash','moment','bluebird','randomstring','../../mysqldb','../../config/utils','rpc','../../config/environment','client','http','request','then','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','catch','CreateCmHopperHistory','CmHopperHistory','create','options','AvgHandleTime','findAll','raw','sequelize','COUNT','col','predictiveIntervalTotalCalls','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null'];(function(_0x341e0f,_0x4a09d0){var _0x59555a=function(_0x4343a8){while(--_0x4343a8){_0x341e0f['push'](_0x341e0f['shift']());}};_0x59555a(++_0x4a09d0);}(_0x5566,0x179));var _0x6556=function(_0x58c007,_0x4147a4){_0x58c007=_0x58c007-0x0;var _0x362e05=_0x5566[_0x58c007];return _0x362e05;};'use strict';var _=require(_0x6556('0x0'));var util=require('util');var moment=require(_0x6556('0x1'));var BPromise=require(_0x6556('0x2'));var rs=require(_0x6556('0x3'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x6556('0x4'))['db'];var utils=require(_0x6556('0x5'));var logger=require('../../config/logger')(_0x6556('0x6'));var config=require(_0x6556('0x7'));var jayson=require('jayson/promise');var client=jayson[_0x6556('0x8')][_0x6556('0x9')]({'port':0x232a});function respondWithRpcPromise(_0xfd376a,_0x55c99d,_0x2d5063){return new BPromise(function(_0x35d991,_0x51659b){return client[_0x6556('0xa')](_0xfd376a,_0x2d5063)[_0x6556('0xb')](function(_0x4ad16f){logger['info'](_0x6556('0xc'),_0x55c99d,_0x6556('0xd'));logger[_0x6556('0xe')](_0x6556('0xf'),_0x55c99d,_0x6556('0xd'),JSON[_0x6556('0x10')](_0x4ad16f));if(_0x4ad16f[_0x6556('0x11')]){if(_0x4ad16f[_0x6556('0x11')][_0x6556('0x12')]===0x1f4){logger[_0x6556('0x11')](_0x6556('0xc'),_0x55c99d,_0x4ad16f['error'][_0x6556('0x13')]);return _0x51659b(_0x4ad16f['error'][_0x6556('0x13')]);}logger[_0x6556('0x11')](_0x6556('0xc'),_0x55c99d,_0x4ad16f[_0x6556('0x11')][_0x6556('0x13')]);return _0x35d991(_0x4ad16f['error'][_0x6556('0x13')]);}else{logger[_0x6556('0x14')](_0x6556('0xc'),_0x55c99d,'request\x20sent');_0x35d991(_0x4ad16f['result'][_0x6556('0x13')]);}})[_0x6556('0x15')](function(_0x12962b){logger[_0x6556('0x11')](_0x6556('0xc'),_0x55c99d,_0x12962b);_0x51659b(_0x12962b);});});}exports[_0x6556('0x16')]=function(_0x2cbd0e){var _0x4cbe0c=this;return new Promise(function(_0x21d6e6,_0x565d52){return db[_0x6556('0x17')][_0x6556('0x18')](_0x2cbd0e['body'],{'raw':_0x2cbd0e[_0x6556('0x19')]?_0x2cbd0e[_0x6556('0x19')]['raw']===undefined?!![]:![]:!![]})[_0x6556('0xb')](function(_0x3438aa){logger[_0x6556('0x14')](_0x6556('0x16'),_0x2cbd0e);logger[_0x6556('0xe')](_0x6556('0x16'),_0x2cbd0e,JSON['stringify'](_0x3438aa));_0x21d6e6(_0x3438aa);})['catch'](function(_0x34bff7){logger[_0x6556('0x11')](_0x6556('0x16'),_0x34bff7['message'],_0x2cbd0e);_0x565d52(_0x4cbe0c[_0x6556('0x11')](0x1f4,_0x34bff7['message']));});});};exports[_0x6556('0x1a')]=function(_0x1a7ced){var _0x5dcee0=this;return new Promise(function(_0xc45e5c,_0x2c0aac){return db[_0x6556('0x17')][_0x6556('0x1b')]({'raw':_0x1a7ced[_0x6556('0x19')]?_0x1a7ced[_0x6556('0x19')][_0x6556('0x1c')]===undefined?!![]:![]:!![],'where':_0x1a7ced[_0x6556('0x19')]?_0x1a7ced[_0x6556('0x19')]['where']||null:null,'attributes':[[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')][_0x6556('0x1f')]('id')),_0x6556('0x20')],[db['sequelize']['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x22')))),_0x6556('0x23')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x24')))),_0x6556('0x25')],[db['sequelize']['fn']('COUNT',db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x26')))),_0x6556('0x27')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x28'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')]['literal']('`state`\x20=\x204,\x20`holdtime`,\x20null'))),_0x6556('0x29')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x28'),db['sequelize']['fn']('IF',db[_0x6556('0x1d')]['literal'](_0x6556('0x2a')))),_0x6556('0x2b')]]})[_0x6556('0xb')](function(_0x375357){logger[_0x6556('0x14')](_0x6556('0x1a'),_0x1a7ced);logger[_0x6556('0xe')](_0x6556('0x1a'),_0x1a7ced,JSON[_0x6556('0x10')](_0x375357));_0xc45e5c(_0x375357);})[_0x6556('0x15')](function(_0x19904a){logger['error']('AvgHandleTime',_0x19904a[_0x6556('0x13')],_0x1a7ced);_0x2c0aac(_0x5dcee0['error'](0x1f4,_0x19904a['message']));});});};exports[_0x6556('0x2c')]=function(_0x586e0a){var _0x21fd30=this;return new Promise(function(_0x59a48a,_0x3ecdbd){return db[_0x6556('0x17')][_0x6556('0x1b')]({'raw':_0x586e0a[_0x6556('0x19')]?_0x586e0a[_0x6556('0x19')][_0x6556('0x1c')]===undefined?!![]:![]:!![],'where':_0x586e0a['options']?_0x586e0a['options']['where']||null:null,'attributes':[[_0x6556('0x2d'),_0x6556('0x2e')],[db['sequelize']['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db['sequelize'][_0x6556('0x21')](_0x6556('0x2f')))),_0x6556('0x30')],[db['sequelize']['fn'](_0x6556('0x1e'),db['sequelize']['fn']('IF',db['sequelize'][_0x6556('0x21')](_0x6556('0x31')))),_0x6556('0x32')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x22')))),_0x6556('0x33')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')]('`state`\x20=\x205,\x201,\x20null'))),_0x6556('0x34')],[db['sequelize']['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x35')))),_0x6556('0x36')],[db['sequelize']['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db['sequelize']['literal'](_0x6556('0x37')))),_0x6556('0x38')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db['sequelize']['fn']('IF',db['sequelize'][_0x6556('0x21')]('`state`\x20=\x2011\x20,\x201,\x20null'))),'outboundDropCallsDayCallersExit'],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db['sequelize']['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')]('`state`\x20=\x2012,\x201,\x20null'))),_0x6556('0x39')],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db['sequelize']['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')]('`state`\x20=\x2013,\x201,\x20null'))),_0x6556('0x3a')],[db['sequelize']['fn'](_0x6556('0x1e'),db['sequelize']['fn']('IF',db['sequelize'][_0x6556('0x21')](_0x6556('0x3b')))),_0x6556('0x3c')],[db[_0x6556('0x1d')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x3d')))),'outboundRejectCallsDay'],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db['sequelize']['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x3e')))),_0x6556('0x3f')],[db[_0x6556('0x1d')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')](_0x6556('0x40')))),'outboundRejectCallsDay'],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')]('`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null'))),_0x6556('0x41')]],'group':[_0x6556('0x2d')]})[_0x6556('0xb')](function(_0x289bdf){logger[_0x6556('0x14')](_0x6556('0x2c'),_0x586e0a);logger[_0x6556('0xe')](_0x6556('0x2c'),_0x586e0a,JSON[_0x6556('0x10')](_0x289bdf));_0x59a48a(_0x289bdf);})[_0x6556('0x15')](function(_0x2b47f3){logger[_0x6556('0x11')](_0x6556('0x2c'),_0x2b47f3[_0x6556('0x13')],_0x586e0a);_0x3ecdbd(_0x21fd30[_0x6556('0x11')](0x1f4,_0x2b47f3['message']));});});};exports['GetCampaignHopperHistory']=function(_0x4d466a){var _0x340bab=this;return new Promise(function(_0x33396e,_0xcbd509){return db['CmHopperHistory'][_0x6556('0x1b')]({'raw':_0x4d466a[_0x6556('0x19')]?_0x4d466a[_0x6556('0x19')][_0x6556('0x1c')]===undefined?!![]:![]:!![],'where':_0x4d466a[_0x6556('0x19')]?_0x4d466a[_0x6556('0x19')][_0x6556('0x42')]||null:null,'attributes':[[_0x6556('0x2d'),_0x6556('0x2e')],[db['sequelize']['fn']('COUNT',db['sequelize']['col']('id')),'ivrTotalCallsDays'],[db[_0x6556('0x1d')]['fn'](_0x6556('0x1e'),db[_0x6556('0x1d')]['fn']('IF',db[_0x6556('0x1d')][_0x6556('0x21')]('`state`\x20=\x204,\x201,\x20null'))),_0x6556('0x43')]],'group':[_0x6556('0x2d')]})[_0x6556('0xb')](function(_0x3df647){logger[_0x6556('0x14')](_0x6556('0x44'),_0x4d466a);logger[_0x6556('0xe')](_0x6556('0x44'),_0x4d466a,JSON[_0x6556('0x10')](_0x3df647));_0x33396e(_0x3df647);})[_0x6556('0x15')](function(_0x3ad52c){logger[_0x6556('0x11')](_0x6556('0x44'),_0x3ad52c[_0x6556('0x13')],_0x4d466a);_0xcbd509(_0x340bab[_0x6556('0x11')](0x1f4,_0x3ad52c[_0x6556('0x13')]));});});};