Built motion from commit (unavailable).|2.5.28
[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 _0xe022=['`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','catch','GetVoiceQueueHopperHistory','campaign','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','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','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','name','ivrTotalCallsDays','ivrAnswerCallsDay','GetCampaignHopperHistory','lodash','moment','randomstring','ioredis','../../config/logger','rpc','jayson/promise','client','http','request','then','info','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','CreateCmHopperHistory','body','options','raw','AvgHandleTime','CmHopperHistory','findAll','where','sequelize','col','predictiveIntervalTotalCalls','COUNT','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','literal','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime'];(function(_0x38674f,_0x105669){var _0x515da8=function(_0x1a5d40){while(--_0x1a5d40){_0x38674f['push'](_0x38674f['shift']());}};_0x515da8(++_0x105669);}(_0xe022,0x175));var _0x2e02=function(_0x1063dd,_0x1d034b){_0x1063dd=_0x1063dd-0x0;var _0x24256e=_0xe022[_0x1063dd];return _0x24256e;};'use strict';var _=require(_0x2e02('0x0'));var util=require('util');var moment=require(_0x2e02('0x1'));var BPromise=require('bluebird');var rs=require(_0x2e02('0x2'));var fs=require('fs');var Redis=require(_0x2e02('0x3'));var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require(_0x2e02('0x4'))(_0x2e02('0x5'));var config=require('../../config/environment');var jayson=require(_0x2e02('0x6'));var client=jayson[_0x2e02('0x7')][_0x2e02('0x8')]({'port':0x232a});function respondWithRpcPromise(_0x565a82,_0x5ccc7b,_0x2ee178){return new BPromise(function(_0x58b81d,_0x1f64de){return client[_0x2e02('0x9')](_0x565a82,_0x2ee178)[_0x2e02('0xa')](function(_0x78364d){logger[_0x2e02('0xb')](_0x2e02('0xc'),_0x5ccc7b,_0x2e02('0xd'));logger[_0x2e02('0xe')]('CmHopperHistory,\x20%s,\x20%s,\x20%s',_0x5ccc7b,'request\x20sent',JSON[_0x2e02('0xf')](_0x78364d));if(_0x78364d[_0x2e02('0x10')]){if(_0x78364d['error'][_0x2e02('0x11')]===0x1f4){logger[_0x2e02('0x10')](_0x2e02('0xc'),_0x5ccc7b,_0x78364d[_0x2e02('0x10')]['message']);return _0x1f64de(_0x78364d[_0x2e02('0x10')][_0x2e02('0x12')]);}logger['error']('CmHopperHistory,\x20%s,\x20%s',_0x5ccc7b,_0x78364d['error'][_0x2e02('0x12')]);return _0x58b81d(_0x78364d[_0x2e02('0x10')]['message']);}else{logger[_0x2e02('0xb')]('CmHopperHistory,\x20%s,\x20%s',_0x5ccc7b,'request\x20sent');_0x58b81d(_0x78364d[_0x2e02('0x13')][_0x2e02('0x12')]);}})['catch'](function(_0x2fccac){logger['error'](_0x2e02('0xc'),_0x5ccc7b,_0x2fccac);_0x1f64de(_0x2fccac);});});}exports[_0x2e02('0x14')]=function(_0x369c89){var _0x2a5332=this;return new Promise(function(_0x4ca675,_0x4bb88c){return db['CmHopperHistory']['create'](_0x369c89[_0x2e02('0x15')],{'raw':_0x369c89['options']?_0x369c89[_0x2e02('0x16')][_0x2e02('0x17')]===undefined?!![]:![]:!![]})[_0x2e02('0xa')](function(_0x5ace3f){logger['info'](_0x2e02('0x14'),_0x369c89);logger[_0x2e02('0xe')](_0x2e02('0x14'),_0x369c89,JSON['stringify'](_0x5ace3f));_0x4ca675(_0x5ace3f);})['catch'](function(_0x3b5ce2){logger[_0x2e02('0x10')]('CreateCmHopperHistory',_0x3b5ce2[_0x2e02('0x12')],_0x369c89);_0x4bb88c(_0x2a5332['error'](0x1f4,_0x3b5ce2[_0x2e02('0x12')]));});});};exports[_0x2e02('0x18')]=function(_0x112649){var _0x18fb63=this;return new Promise(function(_0x391624,_0x58032f){return db[_0x2e02('0x19')][_0x2e02('0x1a')]({'raw':_0x112649['options']?_0x112649[_0x2e02('0x16')][_0x2e02('0x17')]===undefined?!![]:![]:!![],'where':_0x112649[_0x2e02('0x16')]?_0x112649[_0x2e02('0x16')][_0x2e02('0x1b')]||null:null,'attributes':[[db[_0x2e02('0x1c')]['fn']('COUNT',db[_0x2e02('0x1c')][_0x2e02('0x1d')]('id')),_0x2e02('0x1e')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')]['literal'](_0x2e02('0x20')))),_0x2e02('0x21')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')]['literal']('`state`\x20=\x2010,\x201,\x20null'))),_0x2e02('0x22')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db['sequelize']['fn']('IF',db['sequelize'][_0x2e02('0x23')](_0x2e02('0x24')))),_0x2e02('0x25')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x26'),db[_0x2e02('0x1c')]['fn']('IF',db['sequelize'][_0x2e02('0x23')](_0x2e02('0x27')))),_0x2e02('0x28')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x26'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x29')))),_0x2e02('0x2a')]]})[_0x2e02('0xa')](function(_0x3b7b6c){logger['info'](_0x2e02('0x18'),_0x112649);logger[_0x2e02('0xe')](_0x2e02('0x18'),_0x112649,JSON[_0x2e02('0xf')](_0x3b7b6c));_0x391624(_0x3b7b6c);})[_0x2e02('0x2b')](function(_0x522895){logger[_0x2e02('0x10')](_0x2e02('0x18'),_0x522895[_0x2e02('0x12')],_0x112649);_0x58032f(_0x18fb63['error'](0x1f4,_0x522895[_0x2e02('0x12')]));});});};exports[_0x2e02('0x2c')]=function(_0x5b682b){var _0x34a542=this;return new Promise(function(_0x330061,_0x17472d){return db[_0x2e02('0x19')][_0x2e02('0x1a')]({'raw':_0x5b682b[_0x2e02('0x16')]?_0x5b682b[_0x2e02('0x16')]['raw']===undefined?!![]:![]:!![],'where':_0x5b682b['options']?_0x5b682b[_0x2e02('0x16')]['where']||null:null,'attributes':[[_0x2e02('0x2d'),'name'],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x2e')))),_0x2e02('0x2f')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')]('`state`\x20=\x203,\x201,\x20null'))),'outboundNoAnswerCallsDay'],[db[_0x2e02('0x1c')]['fn']('COUNT',db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')]['literal'](_0x2e02('0x20')))),_0x2e02('0x30')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db['sequelize']['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x31')))),_0x2e02('0x32')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x33')))),_0x2e02('0x34')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db['sequelize']['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x35')))),_0x2e02('0x36')],[db['sequelize']['fn'](_0x2e02('0x1f'),db['sequelize']['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x37')))),_0x2e02('0x38')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x39')))),_0x2e02('0x3a')],[db[_0x2e02('0x1c')]['fn']('COUNT',db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x3b')))),'outboundBlacklistCallsDay'],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db['sequelize'][_0x2e02('0x23')]('`state`\x20=\x2014,\x201,\x20null'))),'outboundOriginateFailureCallsDay'],[db['sequelize']['fn'](_0x2e02('0x1f'),db['sequelize']['fn']('IF',db['sequelize'][_0x2e02('0x23')]('`state`\x20=\x2018,\x201,\x20null'))),'outboundRejectCallsDay'],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')]('`state`\x20=\x2016,\x201,\x20null'))),_0x2e02('0x3c')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db['sequelize']['fn']('IF',db['sequelize'][_0x2e02('0x23')](_0x2e02('0x3d')))),_0x2e02('0x3e')],[db[_0x2e02('0x1c')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x2e02('0x1c')][_0x2e02('0x23')](_0x2e02('0x3f')))),_0x2e02('0x40')]],'group':['campaign']})['then'](function(_0x2d6dde){logger[_0x2e02('0xb')](_0x2e02('0x2c'),_0x5b682b);logger[_0x2e02('0xe')]('GetVoiceQueueHopperHistory',_0x5b682b,JSON[_0x2e02('0xf')](_0x2d6dde));_0x330061(_0x2d6dde);})[_0x2e02('0x2b')](function(_0x34a282){logger[_0x2e02('0x10')](_0x2e02('0x2c'),_0x34a282[_0x2e02('0x12')],_0x5b682b);_0x17472d(_0x34a542[_0x2e02('0x10')](0x1f4,_0x34a282['message']));});});};exports['GetCampaignHopperHistory']=function(_0x3bb1b0){var _0x338b52=this;return new Promise(function(_0x148fd3,_0x401ebb){return db['CmHopperHistory'][_0x2e02('0x1a')]({'raw':_0x3bb1b0[_0x2e02('0x16')]?_0x3bb1b0[_0x2e02('0x16')][_0x2e02('0x17')]===undefined?!![]:![]:!![],'where':_0x3bb1b0[_0x2e02('0x16')]?_0x3bb1b0[_0x2e02('0x16')][_0x2e02('0x1b')]||null:null,'attributes':[[_0x2e02('0x2d'),_0x2e02('0x41')],[db[_0x2e02('0x1c')]['fn'](_0x2e02('0x1f'),db[_0x2e02('0x1c')]['col']('id')),_0x2e02('0x42')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0x2e02('0x23')](_0x2e02('0x20')))),_0x2e02('0x43')]],'group':[_0x2e02('0x2d')]})['then'](function(_0x395a76){logger[_0x2e02('0xb')]('GetCampaignHopperHistory',_0x3bb1b0);logger[_0x2e02('0xe')]('GetCampaignHopperHistory',_0x3bb1b0,JSON[_0x2e02('0xf')](_0x395a76));_0x148fd3(_0x395a76);})['catch'](function(_0x4436e4){logger['error'](_0x2e02('0x44'),_0x4436e4['message'],_0x3bb1b0);_0x401ebb(_0x338b52[_0x2e02('0x10')](0x1f4,_0x4436e4[_0x2e02('0x12')]));});});};