Built motion from commit d5e4af8c.|2.6.23
[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 _0x4e83=['../../config/logger','rpc','../../config/environment','jayson/promise','client','http','then','info','request\x20sent','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','stringify','error','CmHopperHistory,\x20%s,\x20%s','message','result','catch','CreateCmHopperHistory','CmHopperHistory','create','body','options','AvgHandleTime','raw','where','COUNT','col','sequelize','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','AVG','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','findAll','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','outboundNoAnswerCallsDay','outboundAnswerCallsDay','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','`state`\x20=\x2011\x20,\x201,\x20null','`state`\x20=\x2012,\x201,\x20null','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetCampaignHopperHistory','ivrTotalCallsDays','ivrAnswerCallsDay','util','moment','bluebird','randomstring','../../mysqldb','../../config/utils'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x4e83,0x88));var _0x34e8=function(_0x1fa873,_0x1319ab){_0x1fa873=_0x1fa873-0x0;var _0x599fbc=_0x4e83[_0x1fa873];return _0x599fbc;};'use strict';var _=require('lodash');var util=require(_0x34e8('0x0'));var moment=require(_0x34e8('0x1'));var BPromise=require(_0x34e8('0x2'));var rs=require(_0x34e8('0x3'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x34e8('0x4'))['db'];var utils=require(_0x34e8('0x5'));var logger=require(_0x34e8('0x6'))(_0x34e8('0x7'));var config=require(_0x34e8('0x8'));var jayson=require(_0x34e8('0x9'));var client=jayson[_0x34e8('0xa')][_0x34e8('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x320b00,_0x146a1f,_0x188f11){return new BPromise(function(_0x18e178,_0x3ace57){return client['request'](_0x320b00,_0x188f11)[_0x34e8('0xc')](function(_0x200425){logger[_0x34e8('0xd')]('CmHopperHistory,\x20%s,\x20%s',_0x146a1f,_0x34e8('0xe'));logger[_0x34e8('0xf')](_0x34e8('0x10'),_0x146a1f,_0x34e8('0xe'),JSON[_0x34e8('0x11')](_0x200425));if(_0x200425['error']){if(_0x200425[_0x34e8('0x12')]['code']===0x1f4){logger[_0x34e8('0x12')](_0x34e8('0x13'),_0x146a1f,_0x200425[_0x34e8('0x12')][_0x34e8('0x14')]);return _0x3ace57(_0x200425[_0x34e8('0x12')][_0x34e8('0x14')]);}logger['error'](_0x34e8('0x13'),_0x146a1f,_0x200425['error'][_0x34e8('0x14')]);return _0x18e178(_0x200425['error'][_0x34e8('0x14')]);}else{logger[_0x34e8('0xd')](_0x34e8('0x13'),_0x146a1f,'request\x20sent');_0x18e178(_0x200425[_0x34e8('0x15')]['message']);}})[_0x34e8('0x16')](function(_0xed8219){logger[_0x34e8('0x12')]('CmHopperHistory,\x20%s,\x20%s',_0x146a1f,_0xed8219);_0x3ace57(_0xed8219);});});}exports[_0x34e8('0x17')]=function(_0x1a2fa7){var _0x3b83bb=this;return new Promise(function(_0x38edda,_0x326416){return db[_0x34e8('0x18')][_0x34e8('0x19')](_0x1a2fa7[_0x34e8('0x1a')],{'raw':_0x1a2fa7[_0x34e8('0x1b')]?_0x1a2fa7[_0x34e8('0x1b')]['raw']===undefined?!![]:![]:!![]})[_0x34e8('0xc')](function(_0x7462d9){logger[_0x34e8('0xd')](_0x34e8('0x17'),_0x1a2fa7);logger[_0x34e8('0xf')](_0x34e8('0x17'),_0x1a2fa7,JSON[_0x34e8('0x11')](_0x7462d9));_0x38edda(_0x7462d9);})[_0x34e8('0x16')](function(_0x39947b){logger[_0x34e8('0x12')](_0x34e8('0x17'),_0x39947b[_0x34e8('0x14')],_0x1a2fa7);_0x326416(_0x3b83bb[_0x34e8('0x12')](0x1f4,_0x39947b[_0x34e8('0x14')]));});});};exports[_0x34e8('0x1c')]=function(_0x250321){var _0x3df27a=this;return new Promise(function(_0x210d13,_0x3ad08e){return db[_0x34e8('0x18')]['findAll']({'raw':_0x250321['options']?_0x250321['options'][_0x34e8('0x1d')]===undefined?!![]:![]:!![],'where':_0x250321[_0x34e8('0x1b')]?_0x250321[_0x34e8('0x1b')][_0x34e8('0x1e')]||null:null,'attributes':[[db['sequelize']['fn'](_0x34e8('0x1f'),db['sequelize'][_0x34e8('0x20')]('id')),'predictiveIntervalTotalCalls'],[db[_0x34e8('0x21')]['fn']('COUNT',db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')](_0x34e8('0x23')))),'predictiveIntervalAnsweredCalls'],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db['sequelize'][_0x34e8('0x22')]('`state`\x20=\x2010,\x201,\x20null'))),_0x34e8('0x24')],[db['sequelize']['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')](_0x34e8('0x25')))),_0x34e8('0x26')],[db[_0x34e8('0x21')]['fn']('AVG',db[_0x34e8('0x21')]['fn']('IF',db['sequelize'][_0x34e8('0x22')](_0x34e8('0x27')))),_0x34e8('0x28')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x29'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')]['literal'](_0x34e8('0x2a')))),_0x34e8('0x2b')]]})[_0x34e8('0xc')](function(_0x35e21c){logger[_0x34e8('0xd')](_0x34e8('0x1c'),_0x250321);logger[_0x34e8('0xf')](_0x34e8('0x1c'),_0x250321,JSON[_0x34e8('0x11')](_0x35e21c));_0x210d13(_0x35e21c);})[_0x34e8('0x16')](function(_0x370d43){logger[_0x34e8('0x12')](_0x34e8('0x1c'),_0x370d43['message'],_0x250321);_0x3ad08e(_0x3df27a[_0x34e8('0x12')](0x1f4,_0x370d43['message']));});});};exports[_0x34e8('0x2c')]=function(_0x183edc){var _0x3f0dce=this;return new Promise(function(_0x22bc84,_0x2afc29){return db['CmHopperHistory'][_0x34e8('0x2d')]({'raw':_0x183edc[_0x34e8('0x1b')]?_0x183edc[_0x34e8('0x1b')][_0x34e8('0x1d')]===undefined?!![]:![]:!![],'where':_0x183edc[_0x34e8('0x1b')]?_0x183edc[_0x34e8('0x1b')]['where']||null:null,'attributes':[[_0x34e8('0x2e'),_0x34e8('0x2f')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db['sequelize']['fn']('IF',db[_0x34e8('0x21')]['literal'](_0x34e8('0x30')))),_0x34e8('0x31')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db['sequelize'][_0x34e8('0x22')]('`state`\x20=\x203,\x201,\x20null'))),_0x34e8('0x32')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')]('`state`\x20=\x204,\x201,\x20null'))),_0x34e8('0x33')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db['sequelize']['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')]('`state`\x20=\x205,\x201,\x20null'))),_0x34e8('0x34')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db['sequelize'][_0x34e8('0x22')](_0x34e8('0x35')))),_0x34e8('0x36')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')](_0x34e8('0x37')))),_0x34e8('0x38')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db['sequelize']['fn']('IF',db[_0x34e8('0x21')]['literal'](_0x34e8('0x39')))),'outboundDropCallsDayCallersExit'],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize']['literal'](_0x34e8('0x3a')))),'outboundUnknownCallsDay'],[db['sequelize']['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')](_0x34e8('0x3b')))),_0x34e8('0x3c')],[db['sequelize']['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')]['literal']('`state`\x20=\x2014,\x201,\x20null'))),_0x34e8('0x3d')],[db['sequelize']['fn'](_0x34e8('0x1f'),db['sequelize']['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')](_0x34e8('0x3e')))),'outboundRejectCallsDay'],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db['sequelize']['fn']('IF',db[_0x34e8('0x21')][_0x34e8('0x22')](_0x34e8('0x3f')))),_0x34e8('0x40')],[db['sequelize']['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db[_0x34e8('0x21')]['literal'](_0x34e8('0x41')))),'outboundRejectCallsDay'],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db['sequelize'][_0x34e8('0x22')](_0x34e8('0x42')))),_0x34e8('0x43')]],'group':[_0x34e8('0x2e')]})[_0x34e8('0xc')](function(_0x313205){logger['info'](_0x34e8('0x2c'),_0x183edc);logger['debug'](_0x34e8('0x2c'),_0x183edc,JSON['stringify'](_0x313205));_0x22bc84(_0x313205);})['catch'](function(_0x4f3185){logger[_0x34e8('0x12')](_0x34e8('0x2c'),_0x4f3185[_0x34e8('0x14')],_0x183edc);_0x2afc29(_0x3f0dce[_0x34e8('0x12')](0x1f4,_0x4f3185[_0x34e8('0x14')]));});});};exports[_0x34e8('0x44')]=function(_0x58ea5a){var _0x2aebd3=this;return new Promise(function(_0x15a7b6,_0x29d7e5){return db['CmHopperHistory'][_0x34e8('0x2d')]({'raw':_0x58ea5a['options']?_0x58ea5a[_0x34e8('0x1b')]['raw']===undefined?!![]:![]:!![],'where':_0x58ea5a['options']?_0x58ea5a[_0x34e8('0x1b')][_0x34e8('0x1e')]||null:null,'attributes':[[_0x34e8('0x2e'),'name'],[db['sequelize']['fn'](_0x34e8('0x1f'),db['sequelize'][_0x34e8('0x20')]('id')),_0x34e8('0x45')],[db[_0x34e8('0x21')]['fn'](_0x34e8('0x1f'),db[_0x34e8('0x21')]['fn']('IF',db['sequelize']['literal'](_0x34e8('0x23')))),_0x34e8('0x46')]],'group':['campaign']})[_0x34e8('0xc')](function(_0x4d1876){logger[_0x34e8('0xd')](_0x34e8('0x44'),_0x58ea5a);logger[_0x34e8('0xf')](_0x34e8('0x44'),_0x58ea5a,JSON['stringify'](_0x4d1876));_0x15a7b6(_0x4d1876);})[_0x34e8('0x16')](function(_0x56fb47){logger['error'](_0x34e8('0x44'),_0x56fb47[_0x34e8('0x14')],_0x58ea5a);_0x29d7e5(_0x2aebd3[_0x34e8('0x12')](0x1f4,_0x56fb47[_0x34e8('0x14')]));});});};