Built motion from commit (unavailable).|2.5.23
[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 _0x22b3=['http','request','then','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','message','result','catch','CmHopperHistory','create','body','options','raw','CreateCmHopperHistory','findAll','where','sequelize','predictiveIntervalTotalCalls','COUNT','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','AvgHandleTime','GetVoiceQueueHopperHistory','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundAnswerCallsDay','outboundBusyCallsDay','`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','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2020,\x201,\x20null','outboundReCallsDay','campaign','GetCampaignHopperHistory','col','lodash','util','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise'];(function(_0x51ab83,_0x2721b9){var _0x14b6de=function(_0x243483){while(--_0x243483){_0x51ab83['push'](_0x51ab83['shift']());}};_0x14b6de(++_0x2721b9);}(_0x22b3,0x13d));var _0x322b=function(_0x26bf1b,_0x596f02){_0x26bf1b=_0x26bf1b-0x0;var _0xd4b0f=_0x22b3[_0x26bf1b];return _0xd4b0f;};'use strict';var _=require(_0x322b('0x0'));var util=require(_0x322b('0x1'));var moment=require('moment');var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x322b('0x2'));var db=require(_0x322b('0x3'))['db'];var utils=require(_0x322b('0x4'));var logger=require(_0x322b('0x5'))(_0x322b('0x6'));var config=require('../../config/environment');var jayson=require(_0x322b('0x7'));var client=jayson['client'][_0x322b('0x8')]({'port':0x232a});function respondWithRpcPromise(_0x5b0848,_0x559f96,_0x193943){return new BPromise(function(_0x41b963,_0x3b8d6e){return client[_0x322b('0x9')](_0x5b0848,_0x193943)[_0x322b('0xa')](function(_0x10d4a4){logger[_0x322b('0xb')](_0x322b('0xc'),_0x559f96,_0x322b('0xd'));logger[_0x322b('0xe')](_0x322b('0xf'),_0x559f96,_0x322b('0xd'),JSON[_0x322b('0x10')](_0x10d4a4));if(_0x10d4a4[_0x322b('0x11')]){if(_0x10d4a4['error']['code']===0x1f4){logger[_0x322b('0x11')](_0x322b('0xc'),_0x559f96,_0x10d4a4['error'][_0x322b('0x12')]);return _0x3b8d6e(_0x10d4a4[_0x322b('0x11')][_0x322b('0x12')]);}logger[_0x322b('0x11')](_0x322b('0xc'),_0x559f96,_0x10d4a4[_0x322b('0x11')][_0x322b('0x12')]);return _0x41b963(_0x10d4a4['error'][_0x322b('0x12')]);}else{logger['info'](_0x322b('0xc'),_0x559f96,_0x322b('0xd'));_0x41b963(_0x10d4a4[_0x322b('0x13')][_0x322b('0x12')]);}})[_0x322b('0x14')](function(_0x1b9729){logger[_0x322b('0x11')](_0x322b('0xc'),_0x559f96,_0x1b9729);_0x3b8d6e(_0x1b9729);});});}exports['CreateCmHopperHistory']=function(_0x42184d){var _0x53631f=this;return new Promise(function(_0x5f238c,_0x37abfc){return db[_0x322b('0x15')][_0x322b('0x16')](_0x42184d[_0x322b('0x17')],{'raw':_0x42184d['options']?_0x42184d[_0x322b('0x18')][_0x322b('0x19')]===undefined?!![]:![]:!![]})[_0x322b('0xa')](function(_0x371ebc){logger[_0x322b('0xb')](_0x322b('0x1a'),_0x42184d);logger[_0x322b('0xe')](_0x322b('0x1a'),_0x42184d,JSON[_0x322b('0x10')](_0x371ebc));_0x5f238c(_0x371ebc);})[_0x322b('0x14')](function(_0x5a2785){logger[_0x322b('0x11')](_0x322b('0x1a'),_0x5a2785[_0x322b('0x12')],_0x42184d);_0x37abfc(_0x53631f['error'](0x1f4,_0x5a2785[_0x322b('0x12')]));});});};exports['AvgHandleTime']=function(_0xd4810b){var _0x443f07=this;return new Promise(function(_0x336981,_0x564c04){return db[_0x322b('0x15')][_0x322b('0x1b')]({'raw':_0xd4810b['options']?_0xd4810b[_0x322b('0x18')][_0x322b('0x19')]===undefined?!![]:![]:!![],'where':_0xd4810b[_0x322b('0x18')]?_0xd4810b[_0x322b('0x18')][_0x322b('0x1c')]||null:null,'attributes':[[db[_0x322b('0x1d')]['fn']('COUNT',db[_0x322b('0x1d')]['col']('id')),_0x322b('0x1e')],[db['sequelize']['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x21')))),_0x322b('0x22')],[db['sequelize']['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db['sequelize'][_0x322b('0x20')]('`state`\x20=\x2010,\x201,\x20null'))),_0x322b('0x23')],[db[_0x322b('0x1d')]['fn']('COUNT',db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')]('`state`\x20=\x2011,\x201,\x20null'))),_0x322b('0x24')],[db[_0x322b('0x1d')]['fn'](_0x322b('0x25'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')]['literal'](_0x322b('0x26')))),'predictiveIntervalAvgHoldtime'],[db[_0x322b('0x1d')]['fn']('AVG',db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')]('`state`\x20=\x204,\x20`talktime`,\x20null'))),'predictiveIntervalAvgTalktime']]})['then'](function(_0x3aa456){logger[_0x322b('0xb')](_0x322b('0x27'),_0xd4810b);logger['debug']('AvgHandleTime',_0xd4810b,JSON[_0x322b('0x10')](_0x3aa456));_0x336981(_0x3aa456);})[_0x322b('0x14')](function(_0x3bfb15){logger[_0x322b('0x11')](_0x322b('0x27'),_0x3bfb15['message'],_0xd4810b);_0x564c04(_0x443f07[_0x322b('0x11')](0x1f4,_0x3bfb15[_0x322b('0x12')]));});});};exports[_0x322b('0x28')]=function(_0x1fee6b){var _0x2514b1=this;return new Promise(function(_0x4cf1d1,_0x372a35){return db[_0x322b('0x15')][_0x322b('0x1b')]({'raw':_0x1fee6b['options']?_0x1fee6b['options'][_0x322b('0x19')]===undefined?!![]:![]:!![],'where':_0x1fee6b[_0x322b('0x18')]?_0x1fee6b[_0x322b('0x18')][_0x322b('0x1c')]||null:null,'attributes':[['campaign',_0x322b('0x29')],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x2a')))),_0x322b('0x2b')],[db['sequelize']['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x2c')))),'outboundNoAnswerCallsDay'],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db['sequelize'][_0x322b('0x20')](_0x322b('0x21')))),_0x322b('0x2d')],[db['sequelize']['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')]['literal']('`state`\x20=\x205,\x201,\x20null'))),_0x322b('0x2e')],[db[_0x322b('0x1d')]['fn']('COUNT',db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')]['literal'](_0x322b('0x2f')))),_0x322b('0x30')],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x31')))),_0x322b('0x32')],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x33')))),_0x322b('0x34')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x322b('0x1d')]['literal'](_0x322b('0x35')))),_0x322b('0x36')],[db[_0x322b('0x1d')]['fn']('COUNT',db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x37')))),_0x322b('0x38')],[db[_0x322b('0x1d')]['fn']('COUNT',db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')]('`state`\x20=\x2014,\x201,\x20null'))),_0x322b('0x39')],[db['sequelize']['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')]['literal'](_0x322b('0x3a')))),_0x322b('0x3b')],[db['sequelize']['fn']('COUNT',db[_0x322b('0x1d')]['fn']('IF',db['sequelize'][_0x322b('0x20')]('`state`\x20=\x2016,\x201,\x20null'))),'outboundAnswerAgiCallsDay'],[db[_0x322b('0x1d')]['fn']('COUNT',db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x3c')))),_0x322b('0x3b')],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')]('`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null'))),_0x322b('0x3d')]],'group':[_0x322b('0x3e')]})['then'](function(_0x3364ac){logger[_0x322b('0xb')](_0x322b('0x28'),_0x1fee6b);logger[_0x322b('0xe')](_0x322b('0x28'),_0x1fee6b,JSON[_0x322b('0x10')](_0x3364ac));_0x4cf1d1(_0x3364ac);})[_0x322b('0x14')](function(_0x2bbd95){logger['error'](_0x322b('0x28'),_0x2bbd95[_0x322b('0x12')],_0x1fee6b);_0x372a35(_0x2514b1[_0x322b('0x11')](0x1f4,_0x2bbd95[_0x322b('0x12')]));});});};exports[_0x322b('0x3f')]=function(_0x202460){var _0x1eefdd=this;return new Promise(function(_0x7810c6,_0x59868d){return db[_0x322b('0x15')][_0x322b('0x1b')]({'raw':_0x202460[_0x322b('0x18')]?_0x202460[_0x322b('0x18')][_0x322b('0x19')]===undefined?!![]:![]:!![],'where':_0x202460['options']?_0x202460[_0x322b('0x18')]['where']||null:null,'attributes':[['campaign',_0x322b('0x29')],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')][_0x322b('0x40')]('id')),'ivrTotalCallsDays'],[db[_0x322b('0x1d')]['fn'](_0x322b('0x1f'),db[_0x322b('0x1d')]['fn']('IF',db[_0x322b('0x1d')][_0x322b('0x20')](_0x322b('0x21')))),'ivrAnswerCallsDay']],'group':[_0x322b('0x3e')]})['then'](function(_0x1507e0){logger[_0x322b('0xb')](_0x322b('0x3f'),_0x202460);logger[_0x322b('0xe')](_0x322b('0x3f'),_0x202460,JSON['stringify'](_0x1507e0));_0x7810c6(_0x1507e0);})[_0x322b('0x14')](function(_0xed7411){logger[_0x322b('0x11')](_0x322b('0x3f'),_0xed7411[_0x322b('0x12')],_0x202460);_0x59868d(_0x1eefdd[_0x322b('0x11')](0x1f4,_0xed7411[_0x322b('0x12')]));});});};