Built motion from commit da617fac.|2.6.6
[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 _0x16d2=['debug','GetVoiceQueueHopperHistory','findAll','raw','campaign','name','outboundNoSuchCallsDay','outboundNoAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null','`state`\x20=\x2018,\x201,\x20null','`state`\x20=\x2020,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','GetCampaignHopperHistory','ivrTotalCallsDays','ivrAnswerCallsDay','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','http','request','then','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','CreateCmHopperHistory','CmHopperHistory','create','options','AvgHandleTime','where','sequelize','COUNT','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime'];(function(_0x1fc6f7,_0x34e9d7){var _0x50ab6b=function(_0x17328a){while(--_0x17328a){_0x1fc6f7['push'](_0x1fc6f7['shift']());}};_0x50ab6b(++_0x34e9d7);}(_0x16d2,0x123));var _0x216d=function(_0x25e812,_0x1342a2){_0x25e812=_0x25e812-0x0;var _0x727c56=_0x16d2[_0x25e812];return _0x727c56;};'use strict';var _=require(_0x216d('0x0'));var util=require(_0x216d('0x1'));var moment=require(_0x216d('0x2'));var BPromise=require(_0x216d('0x3'));var rs=require(_0x216d('0x4'));var fs=require('fs');var Redis=require(_0x216d('0x5'));var db=require(_0x216d('0x6'))['db'];var utils=require(_0x216d('0x7'));var logger=require(_0x216d('0x8'))('rpc');var config=require(_0x216d('0x9'));var jayson=require(_0x216d('0xa'));var client=jayson[_0x216d('0xb')][_0x216d('0xc')]({'port':0x232a});function respondWithRpcPromise(_0x1dd8e2,_0x24c831,_0x3e0ada){return new BPromise(function(_0x28da14,_0x57accc){return client[_0x216d('0xd')](_0x1dd8e2,_0x3e0ada)[_0x216d('0xe')](function(_0x35abcf){logger[_0x216d('0xf')](_0x216d('0x10'),_0x24c831,_0x216d('0x11'));logger['debug'](_0x216d('0x12'),_0x24c831,'request\x20sent',JSON[_0x216d('0x13')](_0x35abcf));if(_0x35abcf[_0x216d('0x14')]){if(_0x35abcf[_0x216d('0x14')][_0x216d('0x15')]===0x1f4){logger[_0x216d('0x14')](_0x216d('0x10'),_0x24c831,_0x35abcf['error'][_0x216d('0x16')]);return _0x57accc(_0x35abcf['error'][_0x216d('0x16')]);}logger[_0x216d('0x14')]('CmHopperHistory,\x20%s,\x20%s',_0x24c831,_0x35abcf[_0x216d('0x14')][_0x216d('0x16')]);return _0x28da14(_0x35abcf['error'][_0x216d('0x16')]);}else{logger['info'](_0x216d('0x10'),_0x24c831,_0x216d('0x11'));_0x28da14(_0x35abcf[_0x216d('0x17')][_0x216d('0x16')]);}})[_0x216d('0x18')](function(_0x304dfa){logger[_0x216d('0x14')](_0x216d('0x10'),_0x24c831,_0x304dfa);_0x57accc(_0x304dfa);});});}exports[_0x216d('0x19')]=function(_0x53d464){var _0x3b60dd=this;return new Promise(function(_0x5124ab,_0x4ddc51){return db[_0x216d('0x1a')][_0x216d('0x1b')](_0x53d464['body'],{'raw':_0x53d464[_0x216d('0x1c')]?_0x53d464[_0x216d('0x1c')]['raw']===undefined?!![]:![]:!![]})[_0x216d('0xe')](function(_0x13b8e0){logger[_0x216d('0xf')](_0x216d('0x19'),_0x53d464);logger['debug'](_0x216d('0x19'),_0x53d464,JSON[_0x216d('0x13')](_0x13b8e0));_0x5124ab(_0x13b8e0);})[_0x216d('0x18')](function(_0x438981){logger[_0x216d('0x14')]('CreateCmHopperHistory',_0x438981[_0x216d('0x16')],_0x53d464);_0x4ddc51(_0x3b60dd[_0x216d('0x14')](0x1f4,_0x438981[_0x216d('0x16')]));});});};exports[_0x216d('0x1d')]=function(_0x6fa4b3){var _0x54d96f=this;return new Promise(function(_0x68d7,_0xab672){return db[_0x216d('0x1a')]['findAll']({'raw':_0x6fa4b3['options']?_0x6fa4b3['options']['raw']===undefined?!![]:![]:!![],'where':_0x6fa4b3['options']?_0x6fa4b3[_0x216d('0x1c')][_0x216d('0x1e')]||null:null,'attributes':[[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['col']('id')),'predictiveIntervalTotalCalls'],[db[_0x216d('0x1f')]['fn']('COUNT',db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x22')))),_0x216d('0x23')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x24')))),_0x216d('0x25')],[db[_0x216d('0x1f')]['fn']('COUNT',db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')]('`state`\x20=\x2011,\x201,\x20null'))),_0x216d('0x26')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x27'),db[_0x216d('0x1f')]['fn']('IF',db['sequelize'][_0x216d('0x21')](_0x216d('0x28')))),_0x216d('0x29')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x27'),db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x2a')))),_0x216d('0x2b')]]})[_0x216d('0xe')](function(_0x4a2caa){logger[_0x216d('0xf')](_0x216d('0x1d'),_0x6fa4b3);logger[_0x216d('0x2c')]('AvgHandleTime',_0x6fa4b3,JSON[_0x216d('0x13')](_0x4a2caa));_0x68d7(_0x4a2caa);})[_0x216d('0x18')](function(_0x5701d2){logger[_0x216d('0x14')]('AvgHandleTime',_0x5701d2['message'],_0x6fa4b3);_0xab672(_0x54d96f[_0x216d('0x14')](0x1f4,_0x5701d2[_0x216d('0x16')]));});});};exports[_0x216d('0x2d')]=function(_0x2469e0){var _0x5c3f7c=this;return new Promise(function(_0x4fd477,_0x4e4c44){return db[_0x216d('0x1a')][_0x216d('0x2e')]({'raw':_0x2469e0['options']?_0x2469e0[_0x216d('0x1c')][_0x216d('0x2f')]===undefined?!![]:![]:!![],'where':_0x2469e0['options']?_0x2469e0[_0x216d('0x1c')][_0x216d('0x1e')]||null:null,'attributes':[[_0x216d('0x30'),_0x216d('0x31')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')]['literal']('`state`\x20=\x200,\x201,\x20null'))),_0x216d('0x32')],[db[_0x216d('0x1f')]['fn']('COUNT',db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')]('`state`\x20=\x203,\x201,\x20null'))),_0x216d('0x33')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['fn']('IF',db['sequelize'][_0x216d('0x21')](_0x216d('0x22')))),'outboundAnswerCallsDay'],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db['sequelize']['fn']('IF',db['sequelize'][_0x216d('0x21')](_0x216d('0x34')))),_0x216d('0x35')],[db['sequelize']['fn'](_0x216d('0x20'),db['sequelize']['fn']('IF',db['sequelize'][_0x216d('0x21')](_0x216d('0x36')))),_0x216d('0x37')],[db['sequelize']['fn'](_0x216d('0x20'),db['sequelize']['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x38')))),'outboundDropCallsDayTimeout'],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')]['literal']('`state`\x20=\x2011\x20,\x201,\x20null'))),'outboundDropCallsDayCallersExit'],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x39')))),_0x216d('0x3a')],[db[_0x216d('0x1f')]['fn']('COUNT',db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x3b')))),'outboundBlacklistCallsDay'],[db[_0x216d('0x1f')]['fn']('COUNT',db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')]('`state`\x20=\x2014,\x201,\x20null'))),'outboundOriginateFailureCallsDay'],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x3c')))),'outboundRejectCallsDay'],[db['sequelize']['fn'](_0x216d('0x20'),db['sequelize']['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')]('`state`\x20=\x2016,\x201,\x20null'))),'outboundAnswerAgiCallsDay'],[db['sequelize']['fn']('COUNT',db[_0x216d('0x1f')]['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x3d')))),_0x216d('0x3e')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db['sequelize']['fn']('IF',db[_0x216d('0x1f')][_0x216d('0x21')](_0x216d('0x3f')))),'outboundReCallsDay']],'group':[_0x216d('0x30')]})[_0x216d('0xe')](function(_0x2c7c67){logger[_0x216d('0xf')]('GetVoiceQueueHopperHistory',_0x2469e0);logger[_0x216d('0x2c')](_0x216d('0x2d'),_0x2469e0,JSON[_0x216d('0x13')](_0x2c7c67));_0x4fd477(_0x2c7c67);})[_0x216d('0x18')](function(_0x4d7705){logger[_0x216d('0x14')](_0x216d('0x2d'),_0x4d7705['message'],_0x2469e0);_0x4e4c44(_0x5c3f7c[_0x216d('0x14')](0x1f4,_0x4d7705['message']));});});};exports[_0x216d('0x40')]=function(_0x40d07b){var _0x22e025=this;return new Promise(function(_0xe65193,_0x345196){return db[_0x216d('0x1a')][_0x216d('0x2e')]({'raw':_0x40d07b[_0x216d('0x1c')]?_0x40d07b[_0x216d('0x1c')]['raw']===undefined?!![]:![]:!![],'where':_0x40d07b[_0x216d('0x1c')]?_0x40d07b[_0x216d('0x1c')]['where']||null:null,'attributes':[[_0x216d('0x30'),_0x216d('0x31')],[db['sequelize']['fn']('COUNT',db[_0x216d('0x1f')]['col']('id')),_0x216d('0x41')],[db[_0x216d('0x1f')]['fn'](_0x216d('0x20'),db['sequelize']['fn']('IF',db[_0x216d('0x1f')]['literal']('`state`\x20=\x204,\x201,\x20null'))),_0x216d('0x42')]],'group':[_0x216d('0x30')]})['then'](function(_0x181b8a){logger[_0x216d('0xf')](_0x216d('0x40'),_0x40d07b);logger[_0x216d('0x2c')](_0x216d('0x40'),_0x40d07b,JSON[_0x216d('0x13')](_0x181b8a));_0xe65193(_0x181b8a);})['catch'](function(_0x5d324e){logger[_0x216d('0x14')](_0x216d('0x40'),_0x5d324e[_0x216d('0x16')],_0x40d07b);_0x345196(_0x22e025[_0x216d('0x14')](0x1f4,_0x5d324e[_0x216d('0x16')]));});});};