Built motion from commit 3c2ce842.|2.6.31
[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 _0xbee3=['outboundDropCallsDayTimeout','`state`\x20=\x2011\x20,\x201,\x20null','`state`\x20=\x2012,\x201,\x20null','`state`\x20=\x2013,\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','GetVoiceQueueHopperHistory','GetCampaignHopperHistory','ivrTotalCallsDays','ivrAnswerCallsDay','util','randomstring','ioredis','../../config/utils','../../config/logger','rpc','jayson/promise','client','request','then','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','error','code','message','catch','CreateCmHopperHistory','CmHopperHistory','create','body','options','raw','stringify','AvgHandleTime','findAll','where','sequelize','COUNT','col','predictiveIntervalTotalCalls','literal','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','AVG','campaign','name','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','`state`\x20=\x2010\x20,\x201,\x20null'];(function(_0x46adcd,_0x15c37b){var _0x2f9454=function(_0x49234a){while(--_0x49234a){_0x46adcd['push'](_0x46adcd['shift']());}};_0x2f9454(++_0x15c37b);}(_0xbee3,0xd5));var _0x3bee=function(_0x133673,_0x3b50c9){_0x133673=_0x133673-0x0;var _0x6ac4cc=_0xbee3[_0x133673];return _0x6ac4cc;};'use strict';var _=require('lodash');var util=require(_0x3bee('0x0'));var moment=require('moment');var BPromise=require('bluebird');var rs=require(_0x3bee('0x1'));var fs=require('fs');var Redis=require(_0x3bee('0x2'));var db=require('../../mysqldb')['db'];var utils=require(_0x3bee('0x3'));var logger=require(_0x3bee('0x4'))(_0x3bee('0x5'));var config=require('../../config/environment');var jayson=require(_0x3bee('0x6'));var client=jayson[_0x3bee('0x7')]['http']({'port':0x232a});function respondWithRpcPromise(_0x2fdeec,_0x28d912,_0x1b510d){return new BPromise(function(_0x339223,_0xbdd5d5){return client[_0x3bee('0x8')](_0x2fdeec,_0x1b510d)[_0x3bee('0x9')](function(_0x518e2d){logger[_0x3bee('0xa')](_0x3bee('0xb'),_0x28d912,_0x3bee('0xc'));logger[_0x3bee('0xd')](_0x3bee('0xe'),_0x28d912,_0x3bee('0xc'),JSON['stringify'](_0x518e2d));if(_0x518e2d[_0x3bee('0xf')]){if(_0x518e2d['error'][_0x3bee('0x10')]===0x1f4){logger[_0x3bee('0xf')](_0x3bee('0xb'),_0x28d912,_0x518e2d[_0x3bee('0xf')][_0x3bee('0x11')]);return _0xbdd5d5(_0x518e2d[_0x3bee('0xf')][_0x3bee('0x11')]);}logger['error'](_0x3bee('0xb'),_0x28d912,_0x518e2d[_0x3bee('0xf')][_0x3bee('0x11')]);return _0x339223(_0x518e2d[_0x3bee('0xf')][_0x3bee('0x11')]);}else{logger['info']('CmHopperHistory,\x20%s,\x20%s',_0x28d912,_0x3bee('0xc'));_0x339223(_0x518e2d['result'][_0x3bee('0x11')]);}})[_0x3bee('0x12')](function(_0x57d42c){logger['error'](_0x3bee('0xb'),_0x28d912,_0x57d42c);_0xbdd5d5(_0x57d42c);});});}exports[_0x3bee('0x13')]=function(_0xfdba3b){var _0x631ff8=this;return new Promise(function(_0x49095a,_0x30a1de){return db[_0x3bee('0x14')][_0x3bee('0x15')](_0xfdba3b[_0x3bee('0x16')],{'raw':_0xfdba3b[_0x3bee('0x17')]?_0xfdba3b[_0x3bee('0x17')][_0x3bee('0x18')]===undefined?!![]:![]:!![]})['then'](function(_0x4f36af){logger[_0x3bee('0xa')](_0x3bee('0x13'),_0xfdba3b);logger['debug'](_0x3bee('0x13'),_0xfdba3b,JSON[_0x3bee('0x19')](_0x4f36af));_0x49095a(_0x4f36af);})[_0x3bee('0x12')](function(_0x179e62){logger[_0x3bee('0xf')](_0x3bee('0x13'),_0x179e62[_0x3bee('0x11')],_0xfdba3b);_0x30a1de(_0x631ff8['error'](0x1f4,_0x179e62[_0x3bee('0x11')]));});});};exports[_0x3bee('0x1a')]=function(_0x1fed5a){var _0x3bb884=this;return new Promise(function(_0x500664,_0x45249c){return db[_0x3bee('0x14')][_0x3bee('0x1b')]({'raw':_0x1fed5a['options']?_0x1fed5a['options'][_0x3bee('0x18')]===undefined?!![]:![]:!![],'where':_0x1fed5a[_0x3bee('0x17')]?_0x1fed5a['options'][_0x3bee('0x1c')]||null:null,'attributes':[[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db['sequelize'][_0x3bee('0x1f')]('id')),_0x3bee('0x20')],[db[_0x3bee('0x1d')]['fn']('COUNT',db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')]('`state`\x20=\x204,\x201,\x20null'))),_0x3bee('0x22')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')]['literal']('`state`\x20=\x2010,\x201,\x20null'))),_0x3bee('0x23')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db['sequelize']['literal'](_0x3bee('0x24')))),_0x3bee('0x25')],[db['sequelize']['fn']('AVG',db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x26')))),_0x3bee('0x27')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x28'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')]('`state`\x20=\x204,\x20`talktime`,\x20null'))),'predictiveIntervalAvgTalktime']]})[_0x3bee('0x9')](function(_0x4a4706){logger['info'](_0x3bee('0x1a'),_0x1fed5a);logger[_0x3bee('0xd')](_0x3bee('0x1a'),_0x1fed5a,JSON[_0x3bee('0x19')](_0x4a4706));_0x500664(_0x4a4706);})[_0x3bee('0x12')](function(_0x232fac){logger[_0x3bee('0xf')](_0x3bee('0x1a'),_0x232fac['message'],_0x1fed5a);_0x45249c(_0x3bb884[_0x3bee('0xf')](0x1f4,_0x232fac[_0x3bee('0x11')]));});});};exports['GetVoiceQueueHopperHistory']=function(_0x3711e4){var _0x28181b=this;return new Promise(function(_0x106ce6,_0x13d2d5){return db[_0x3bee('0x14')]['findAll']({'raw':_0x3711e4['options']?_0x3711e4[_0x3bee('0x17')][_0x3bee('0x18')]===undefined?!![]:![]:!![],'where':_0x3711e4[_0x3bee('0x17')]?_0x3711e4[_0x3bee('0x17')][_0x3bee('0x1c')]||null:null,'attributes':[[_0x3bee('0x29'),_0x3bee('0x2a')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')]('`state`\x20=\x200,\x201,\x20null'))),_0x3bee('0x2b')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x2c')))),_0x3bee('0x2d')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')]('`state`\x20=\x204,\x201,\x20null'))),_0x3bee('0x2e')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x2f')))),_0x3bee('0x30')],[db['sequelize']['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')]['literal'](_0x3bee('0x31')))),'outboundCongestionCallsDay'],[db[_0x3bee('0x1d')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x32')))),_0x3bee('0x33')],[db[_0x3bee('0x1d')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x3bee('0x1d')]['literal'](_0x3bee('0x34')))),'outboundDropCallsDayCallersExit'],[db[_0x3bee('0x1d')]['fn']('COUNT',db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x35')))),'outboundUnknownCallsDay'],[db['sequelize']['fn'](_0x3bee('0x1e'),db['sequelize']['fn']('IF',db['sequelize']['literal'](_0x3bee('0x36')))),'outboundBlacklistCallsDay'],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db['sequelize'][_0x3bee('0x21')]('`state`\x20=\x2014,\x201,\x20null'))),_0x3bee('0x37')],[db['sequelize']['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')]['literal'](_0x3bee('0x38')))),_0x3bee('0x39')],[db[_0x3bee('0x1d')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x3a')))),_0x3bee('0x3b')],[db[_0x3bee('0x1d')]['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db['sequelize'][_0x3bee('0x21')](_0x3bee('0x3c')))),'outboundRejectCallsDay'],[db['sequelize']['fn'](_0x3bee('0x1e'),db['sequelize']['fn']('IF',db[_0x3bee('0x1d')][_0x3bee('0x21')](_0x3bee('0x3d')))),'outboundReCallsDay']],'group':[_0x3bee('0x29')]})[_0x3bee('0x9')](function(_0x127cb8){logger['info'](_0x3bee('0x3e'),_0x3711e4);logger[_0x3bee('0xd')]('GetVoiceQueueHopperHistory',_0x3711e4,JSON[_0x3bee('0x19')](_0x127cb8));_0x106ce6(_0x127cb8);})[_0x3bee('0x12')](function(_0x53c881){logger[_0x3bee('0xf')](_0x3bee('0x3e'),_0x53c881[_0x3bee('0x11')],_0x3711e4);_0x13d2d5(_0x28181b[_0x3bee('0xf')](0x1f4,_0x53c881[_0x3bee('0x11')]));});});};exports[_0x3bee('0x3f')]=function(_0xf7f9c3){var _0x72c2c4=this;return new Promise(function(_0x4c981f,_0x51fd46){return db[_0x3bee('0x14')]['findAll']({'raw':_0xf7f9c3[_0x3bee('0x17')]?_0xf7f9c3[_0x3bee('0x17')][_0x3bee('0x18')]===undefined?!![]:![]:!![],'where':_0xf7f9c3['options']?_0xf7f9c3[_0x3bee('0x17')][_0x3bee('0x1c')]||null:null,'attributes':[[_0x3bee('0x29'),'name'],[db[_0x3bee('0x1d')]['fn']('COUNT',db[_0x3bee('0x1d')][_0x3bee('0x1f')]('id')),_0x3bee('0x40')],[db['sequelize']['fn'](_0x3bee('0x1e'),db[_0x3bee('0x1d')]['fn']('IF',db[_0x3bee('0x1d')]['literal']('`state`\x20=\x204,\x201,\x20null'))),_0x3bee('0x41')]],'group':[_0x3bee('0x29')]})[_0x3bee('0x9')](function(_0x4e6b22){logger['info'](_0x3bee('0x3f'),_0xf7f9c3);logger['debug']('GetCampaignHopperHistory',_0xf7f9c3,JSON[_0x3bee('0x19')](_0x4e6b22));_0x4c981f(_0x4e6b22);})[_0x3bee('0x12')](function(_0x43d3bc){logger['error']('GetCampaignHopperHistory',_0x43d3bc[_0x3bee('0x11')],_0xf7f9c3);_0x51fd46(_0x72c2c4[_0x3bee('0xf')](0x1f4,_0x43d3bc['message']));});});};