Built motion from commit 85328c08.|2.5.50
[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 _0x9011=['ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','http','then','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','CreateCmHopperHistory','CmHopperHistory','create','options','raw','where','COUNT','sequelize','col','predictiveIntervalTotalCalls','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','predictiveIntervalAvgTalktime','findAll','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','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','`state`\x20=\x2013,\x201,\x20null','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','campaign','GetVoiceQueueHopperHistory','GetCampaignHopperHistory','name','ivrTotalCallsDays','ivrAnswerCallsDay','util','moment','bluebird','randomstring'];(function(_0x33de88,_0x581346){var _0x105957=function(_0x52752d){while(--_0x52752d){_0x33de88['push'](_0x33de88['shift']());}};_0x105957(++_0x581346);}(_0x9011,0x1f4));var _0x1901=function(_0xd646f6,_0x2c4baf){_0xd646f6=_0xd646f6-0x0;var _0x10ed12=_0x9011[_0xd646f6];return _0x10ed12;};'use strict';var _=require('lodash');var util=require(_0x1901('0x0'));var moment=require(_0x1901('0x1'));var BPromise=require(_0x1901('0x2'));var rs=require(_0x1901('0x3'));var fs=require('fs');var Redis=require(_0x1901('0x4'));var db=require(_0x1901('0x5'))['db'];var utils=require(_0x1901('0x6'));var logger=require(_0x1901('0x7'))('rpc');var config=require(_0x1901('0x8'));var jayson=require(_0x1901('0x9'));var client=jayson[_0x1901('0xa')][_0x1901('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x55260b,_0x30246e,_0x1baab6){return new BPromise(function(_0xa94186,_0x3f2260){return client['request'](_0x55260b,_0x1baab6)[_0x1901('0xc')](function(_0x51082d){logger[_0x1901('0xd')](_0x1901('0xe'),_0x30246e,_0x1901('0xf'));logger[_0x1901('0x10')](_0x1901('0x11'),_0x30246e,_0x1901('0xf'),JSON[_0x1901('0x12')](_0x51082d));if(_0x51082d[_0x1901('0x13')]){if(_0x51082d[_0x1901('0x13')][_0x1901('0x14')]===0x1f4){logger[_0x1901('0x13')](_0x1901('0xe'),_0x30246e,_0x51082d[_0x1901('0x13')][_0x1901('0x15')]);return _0x3f2260(_0x51082d[_0x1901('0x13')]['message']);}logger['error']('CmHopperHistory,\x20%s,\x20%s',_0x30246e,_0x51082d[_0x1901('0x13')][_0x1901('0x15')]);return _0xa94186(_0x51082d[_0x1901('0x13')][_0x1901('0x15')]);}else{logger[_0x1901('0xd')](_0x1901('0xe'),_0x30246e,'request\x20sent');_0xa94186(_0x51082d[_0x1901('0x16')]['message']);}})[_0x1901('0x17')](function(_0xf5748a){logger[_0x1901('0x13')]('CmHopperHistory,\x20%s,\x20%s',_0x30246e,_0xf5748a);_0x3f2260(_0xf5748a);});});}exports[_0x1901('0x18')]=function(_0x13063b){var _0x18298c=this;return new Promise(function(_0x14402b,_0x31a2cf){return db[_0x1901('0x19')][_0x1901('0x1a')](_0x13063b['body'],{'raw':_0x13063b[_0x1901('0x1b')]?_0x13063b['options'][_0x1901('0x1c')]===undefined?!![]:![]:!![]})[_0x1901('0xc')](function(_0x2a0586){logger[_0x1901('0xd')]('CreateCmHopperHistory',_0x13063b);logger[_0x1901('0x10')]('CreateCmHopperHistory',_0x13063b,JSON[_0x1901('0x12')](_0x2a0586));_0x14402b(_0x2a0586);})[_0x1901('0x17')](function(_0x1c98e9){logger['error'](_0x1901('0x18'),_0x1c98e9['message'],_0x13063b);_0x31a2cf(_0x18298c[_0x1901('0x13')](0x1f4,_0x1c98e9[_0x1901('0x15')]));});});};exports['AvgHandleTime']=function(_0x54f617){var _0x3b59e5=this;return new Promise(function(_0x27b941,_0x56c8f7){return db[_0x1901('0x19')]['findAll']({'raw':_0x54f617[_0x1901('0x1b')]?_0x54f617[_0x1901('0x1b')]['raw']===undefined?!![]:![]:!![],'where':_0x54f617[_0x1901('0x1b')]?_0x54f617[_0x1901('0x1b')][_0x1901('0x1d')]||null:null,'attributes':[[db['sequelize']['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')][_0x1901('0x20')]('id')),_0x1901('0x21')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x23')))),_0x1901('0x24')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')]('`state`\x20=\x2010,\x201,\x20null'))),_0x1901('0x25')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x26')))),_0x1901('0x27')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x28'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x29')))),_0x1901('0x2a')],[db['sequelize']['fn'](_0x1901('0x28'),db['sequelize']['fn']('IF',db[_0x1901('0x1f')]['literal']('`state`\x20=\x204,\x20`talktime`,\x20null'))),_0x1901('0x2b')]]})['then'](function(_0x4929fb){logger['info']('AvgHandleTime',_0x54f617);logger[_0x1901('0x10')]('AvgHandleTime',_0x54f617,JSON[_0x1901('0x12')](_0x4929fb));_0x27b941(_0x4929fb);})[_0x1901('0x17')](function(_0x51a798){logger['error']('AvgHandleTime',_0x51a798[_0x1901('0x15')],_0x54f617);_0x56c8f7(_0x3b59e5[_0x1901('0x13')](0x1f4,_0x51a798[_0x1901('0x15')]));});});};exports['GetVoiceQueueHopperHistory']=function(_0x93a64f){var _0x281070=this;return new Promise(function(_0x5d27fb,_0x1e8980){return db[_0x1901('0x19')][_0x1901('0x2c')]({'raw':_0x93a64f[_0x1901('0x1b')]?_0x93a64f[_0x1901('0x1b')]['raw']===undefined?!![]:![]:!![],'where':_0x93a64f['options']?_0x93a64f[_0x1901('0x1b')][_0x1901('0x1d')]||null:null,'attributes':[['campaign','name'],[db[_0x1901('0x1f')]['fn']('COUNT',db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x2d')))),_0x1901('0x2e')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db['sequelize']['literal']('`state`\x20=\x203,\x201,\x20null'))),_0x1901('0x2f')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db['sequelize']['fn']('IF',db['sequelize'][_0x1901('0x22')]('`state`\x20=\x204,\x201,\x20null'))),_0x1901('0x30')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x31')))),_0x1901('0x32')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')]['literal'](_0x1901('0x33')))),_0x1901('0x34')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db['sequelize'][_0x1901('0x22')](_0x1901('0x35')))),_0x1901('0x36')],[db['sequelize']['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')]['literal'](_0x1901('0x37')))),_0x1901('0x38')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x39')))),'outboundUnknownCallsDay'],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')]['literal'](_0x1901('0x3a')))),'outboundBlacklistCallsDay'],[db[_0x1901('0x1f')]['fn']('COUNT',db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x3b')))),_0x1901('0x3c')],[db['sequelize']['fn'](_0x1901('0x1e'),db['sequelize']['fn']('IF',db['sequelize'][_0x1901('0x22')](_0x1901('0x3d')))),_0x1901('0x3e')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db['sequelize']['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')](_0x1901('0x3f')))),_0x1901('0x40')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')]['literal'](_0x1901('0x41')))),_0x1901('0x3e')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db['sequelize']['fn']('IF',db[_0x1901('0x1f')][_0x1901('0x22')]('`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null'))),'outboundReCallsDay']],'group':[_0x1901('0x42')]})[_0x1901('0xc')](function(_0x163d9b){logger[_0x1901('0xd')](_0x1901('0x43'),_0x93a64f);logger[_0x1901('0x10')](_0x1901('0x43'),_0x93a64f,JSON['stringify'](_0x163d9b));_0x5d27fb(_0x163d9b);})[_0x1901('0x17')](function(_0x577187){logger[_0x1901('0x13')](_0x1901('0x43'),_0x577187[_0x1901('0x15')],_0x93a64f);_0x1e8980(_0x281070['error'](0x1f4,_0x577187[_0x1901('0x15')]));});});};exports[_0x1901('0x44')]=function(_0x3da60c){var _0xf3cfad=this;return new Promise(function(_0x4e588d,_0x4495cc){return db[_0x1901('0x19')]['findAll']({'raw':_0x3da60c[_0x1901('0x1b')]?_0x3da60c[_0x1901('0x1b')][_0x1901('0x1c')]===undefined?!![]:![]:!![],'where':_0x3da60c['options']?_0x3da60c['options'][_0x1901('0x1d')]||null:null,'attributes':[[_0x1901('0x42'),_0x1901('0x45')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')][_0x1901('0x20')]('id')),_0x1901('0x46')],[db[_0x1901('0x1f')]['fn'](_0x1901('0x1e'),db[_0x1901('0x1f')]['fn']('IF',db[_0x1901('0x1f')]['literal'](_0x1901('0x23')))),_0x1901('0x47')]],'group':[_0x1901('0x42')]})[_0x1901('0xc')](function(_0x4f1dd9){logger[_0x1901('0xd')](_0x1901('0x44'),_0x3da60c);logger[_0x1901('0x10')](_0x1901('0x44'),_0x3da60c,JSON[_0x1901('0x12')](_0x4f1dd9));_0x4e588d(_0x4f1dd9);})[_0x1901('0x17')](function(_0x13d4ad){logger[_0x1901('0x13')](_0x1901('0x44'),_0x13d4ad[_0x1901('0x15')],_0x3da60c);_0x4495cc(_0xf3cfad[_0x1901('0x13')](0x1f4,_0x13d4ad[_0x1901('0x15')]));});});};