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 _0x0855=['outboundNoSuchCallsDay','outboundNoAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','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','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','findAll','name','col','ivrTotalCallsDays','GetCampaignHopperHistory','lodash','util','bluebird','../../mysqldb','../../config/utils','rpc','jayson/promise','client','http','request','then','info','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','code','CmHopperHistory,\x20%s,\x20%s','message','result','CreateCmHopperHistory','create','options','catch','raw','sequelize','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','COUNT','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','`state`\x20=\x204,\x20`talktime`,\x20null','AvgHandleTime','GetVoiceQueueHopperHistory','CmHopperHistory','where','campaign'];(function(_0x19950b,_0x53d0d7){var _0x3c6b41=function(_0x3924ad){while(--_0x3924ad){_0x19950b['push'](_0x19950b['shift']());}};_0x3c6b41(++_0x53d0d7);}(_0x0855,0x1de));var _0x5085=function(_0x1ce1f9,_0x32ec3f){_0x1ce1f9=_0x1ce1f9-0x0;var _0x49fa18=_0x0855[_0x1ce1f9];return _0x49fa18;};'use strict';var _=require(_0x5085('0x0'));var util=require(_0x5085('0x1'));var moment=require('moment');var BPromise=require(_0x5085('0x2'));var rs=require('randomstring');var fs=require('fs');var Redis=require('ioredis');var db=require(_0x5085('0x3'))['db'];var utils=require(_0x5085('0x4'));var logger=require('../../config/logger')(_0x5085('0x5'));var config=require('../../config/environment');var jayson=require(_0x5085('0x6'));var client=jayson[_0x5085('0x7')][_0x5085('0x8')]({'port':0x232a});function respondWithRpcPromise(_0x1891c4,_0x56cf10,_0x1c67ea){return new BPromise(function(_0x27680a,_0x348d47){return client[_0x5085('0x9')](_0x1891c4,_0x1c67ea)[_0x5085('0xa')](function(_0xf54cca){logger[_0x5085('0xb')]('CmHopperHistory,\x20%s,\x20%s',_0x56cf10,_0x5085('0xc'));logger[_0x5085('0xd')](_0x5085('0xe'),_0x56cf10,_0x5085('0xc'),JSON[_0x5085('0xf')](_0xf54cca));if(_0xf54cca[_0x5085('0x10')]){if(_0xf54cca['error'][_0x5085('0x11')]===0x1f4){logger[_0x5085('0x10')](_0x5085('0x12'),_0x56cf10,_0xf54cca[_0x5085('0x10')][_0x5085('0x13')]);return _0x348d47(_0xf54cca['error']['message']);}logger[_0x5085('0x10')](_0x5085('0x12'),_0x56cf10,_0xf54cca[_0x5085('0x10')][_0x5085('0x13')]);return _0x27680a(_0xf54cca[_0x5085('0x10')][_0x5085('0x13')]);}else{logger['info'](_0x5085('0x12'),_0x56cf10,'request\x20sent');_0x27680a(_0xf54cca[_0x5085('0x14')][_0x5085('0x13')]);}})['catch'](function(_0x447db9){logger[_0x5085('0x10')](_0x5085('0x12'),_0x56cf10,_0x447db9);_0x348d47(_0x447db9);});});}exports[_0x5085('0x15')]=function(_0x9bc1d6){var _0x3671fb=this;return new Promise(function(_0x72457c,_0x2df9e6){return db['CmHopperHistory'][_0x5085('0x16')](_0x9bc1d6['body'],{'raw':_0x9bc1d6[_0x5085('0x17')]?_0x9bc1d6['options']['raw']===undefined?!![]:![]:!![]})[_0x5085('0xa')](function(_0x2f365a){logger[_0x5085('0xb')](_0x5085('0x15'),_0x9bc1d6);logger['debug'](_0x5085('0x15'),_0x9bc1d6,JSON['stringify'](_0x2f365a));_0x72457c(_0x2f365a);})[_0x5085('0x18')](function(_0x34ec8d){logger[_0x5085('0x10')](_0x5085('0x15'),_0x34ec8d[_0x5085('0x13')],_0x9bc1d6);_0x2df9e6(_0x3671fb['error'](0x1f4,_0x34ec8d[_0x5085('0x13')]));});});};exports['AvgHandleTime']=function(_0x7c611){var _0x5051b1=this;return new Promise(function(_0x3f46ed,_0x1acce6){return db['CmHopperHistory']['findAll']({'raw':_0x7c611['options']?_0x7c611[_0x5085('0x17')][_0x5085('0x19')]===undefined?!![]:![]:!![],'where':_0x7c611[_0x5085('0x17')]?_0x7c611[_0x5085('0x17')]['where']||null:null,'attributes':[[db[_0x5085('0x1a')]['fn']('COUNT',db[_0x5085('0x1a')]['col']('id')),'predictiveIntervalTotalCalls'],[db['sequelize']['fn']('COUNT',db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x1c')))),_0x5085('0x1d')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db['sequelize']['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x1f')))),_0x5085('0x20')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x21')))),'predictiveIntervalDroppedCallsCallersExit'],[db[_0x5085('0x1a')]['fn'](_0x5085('0x22'),db[_0x5085('0x1a')]['fn']('IF',db['sequelize'][_0x5085('0x1b')](_0x5085('0x23')))),'predictiveIntervalAvgHoldtime'],[db['sequelize']['fn'](_0x5085('0x22'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x24')))),'predictiveIntervalAvgTalktime']]})[_0x5085('0xa')](function(_0x51ced9){logger['info'](_0x5085('0x25'),_0x7c611);logger[_0x5085('0xd')](_0x5085('0x25'),_0x7c611,JSON[_0x5085('0xf')](_0x51ced9));_0x3f46ed(_0x51ced9);})[_0x5085('0x18')](function(_0x1be6f8){logger['error']('AvgHandleTime',_0x1be6f8['message'],_0x7c611);_0x1acce6(_0x5051b1[_0x5085('0x10')](0x1f4,_0x1be6f8[_0x5085('0x13')]));});});};exports[_0x5085('0x26')]=function(_0x56ee93){var _0x1192cb=this;return new Promise(function(_0x354777,_0x907c6c){return db[_0x5085('0x27')]['findAll']({'raw':_0x56ee93[_0x5085('0x17')]?_0x56ee93[_0x5085('0x17')][_0x5085('0x19')]===undefined?!![]:![]:!![],'where':_0x56ee93[_0x5085('0x17')]?_0x56ee93[_0x5085('0x17')][_0x5085('0x28')]||null:null,'attributes':[[_0x5085('0x29'),'name'],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db['sequelize']['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')]('`state`\x20=\x200,\x201,\x20null'))),_0x5085('0x2a')],[db['sequelize']['fn']('COUNT',db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')]('`state`\x20=\x203,\x201,\x20null'))),_0x5085('0x2b')],[db['sequelize']['fn'](_0x5085('0x1e'),db['sequelize']['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')]('`state`\x20=\x204,\x201,\x20null'))),'outboundAnswerCallsDay'],[db[_0x5085('0x1a')]['fn']('COUNT',db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x2c')))),_0x5085('0x2d')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db['sequelize']['fn']('IF',db[_0x5085('0x1a')]['literal']('`state`\x20=\x208,\x201,\x20null'))),_0x5085('0x2e')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x2f')))),_0x5085('0x30')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')]['literal'](_0x5085('0x31')))),_0x5085('0x32')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')]['literal'](_0x5085('0x33')))),'outboundUnknownCallsDay'],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x34')))),'outboundBlacklistCallsDay'],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x35')))),'outboundOriginateFailureCallsDay'],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db['sequelize'][_0x5085('0x1b')](_0x5085('0x36')))),_0x5085('0x37')],[db['sequelize']['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')]['literal'](_0x5085('0x38')))),_0x5085('0x39')],[db[_0x5085('0x1a')]['fn']('COUNT',db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')]('`state`\x20=\x2020,\x201,\x20null'))),_0x5085('0x37')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')]['literal'](_0x5085('0x3a')))),_0x5085('0x3b')]],'group':[_0x5085('0x29')]})[_0x5085('0xa')](function(_0x5333a5){logger[_0x5085('0xb')](_0x5085('0x26'),_0x56ee93);logger['debug'](_0x5085('0x26'),_0x56ee93,JSON[_0x5085('0xf')](_0x5333a5));_0x354777(_0x5333a5);})[_0x5085('0x18')](function(_0x229f25){logger[_0x5085('0x10')](_0x5085('0x26'),_0x229f25[_0x5085('0x13')],_0x56ee93);_0x907c6c(_0x1192cb[_0x5085('0x10')](0x1f4,_0x229f25[_0x5085('0x13')]));});});};exports['GetCampaignHopperHistory']=function(_0x48e639){var _0x2626b1=this;return new Promise(function(_0x536bd5,_0x2dc9d4){return db[_0x5085('0x27')][_0x5085('0x3c')]({'raw':_0x48e639[_0x5085('0x17')]?_0x48e639[_0x5085('0x17')]['raw']===undefined?!![]:![]:!![],'where':_0x48e639[_0x5085('0x17')]?_0x48e639['options'][_0x5085('0x28')]||null:null,'attributes':[[_0x5085('0x29'),_0x5085('0x3d')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')][_0x5085('0x3e')]('id')),_0x5085('0x3f')],[db[_0x5085('0x1a')]['fn'](_0x5085('0x1e'),db[_0x5085('0x1a')]['fn']('IF',db[_0x5085('0x1a')][_0x5085('0x1b')](_0x5085('0x1c')))),'ivrAnswerCallsDay']],'group':[_0x5085('0x29')]})[_0x5085('0xa')](function(_0x1df3b4){logger[_0x5085('0xb')](_0x5085('0x40'),_0x48e639);logger[_0x5085('0xd')](_0x5085('0x40'),_0x48e639,JSON[_0x5085('0xf')](_0x1df3b4));_0x536bd5(_0x1df3b4);})[_0x5085('0x18')](function(_0x16d8f3){logger[_0x5085('0x10')](_0x5085('0x40'),_0x16d8f3['message'],_0x48e639);_0x2dc9d4(_0x2626b1[_0x5085('0x10')](0x1f4,_0x16d8f3[_0x5085('0x13')]));});});};