0728b03e2a2da8edd2a04699ac029eb7741c1714
[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 _0x2917=['outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','`state`\x20=\x2018,\x201,\x20null','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetCampaignHopperHistory','name','col','ivrTotalCallsDays','ivrAnswerCallsDay','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','rpc','../../config/environment','jayson/promise','client','http','request','then','info','CmHopperHistory,\x20%s,\x20%s','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','message','result','catch','CreateCmHopperHistory','create','options','raw','CmHopperHistory','findAll','where','COUNT','sequelize','predictiveIntervalTotalCalls','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','literal','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','AvgHandleTime','GetVoiceQueueHopperHistory','campaign','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','outboundDropCallsDayTimeout','`state`\x20=\x2011\x20,\x201,\x20null','outboundDropCallsDayCallersExit','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null'];(function(_0x276232,_0x20b6b8){var _0x427024=function(_0x2e7ff8){while(--_0x2e7ff8){_0x276232['push'](_0x276232['shift']());}};_0x427024(++_0x20b6b8);}(_0x2917,0x142));var _0x7291=function(_0x1e3c16,_0x372caa){_0x1e3c16=_0x1e3c16-0x0;var _0x47a0c9=_0x2917[_0x1e3c16];return _0x47a0c9;};'use strict';var _=require(_0x7291('0x0'));var util=require(_0x7291('0x1'));var moment=require(_0x7291('0x2'));var BPromise=require(_0x7291('0x3'));var rs=require(_0x7291('0x4'));var fs=require('fs');var Redis=require(_0x7291('0x5'));var db=require(_0x7291('0x6'))['db'];var utils=require('../../config/utils');var logger=require('../../config/logger')(_0x7291('0x7'));var config=require(_0x7291('0x8'));var jayson=require(_0x7291('0x9'));var client=jayson[_0x7291('0xa')][_0x7291('0xb')]({'port':0x232a});function respondWithRpcPromise(_0x237997,_0x4609af,_0x1f0fd8){return new BPromise(function(_0x452fc5,_0xb013b3){return client[_0x7291('0xc')](_0x237997,_0x1f0fd8)[_0x7291('0xd')](function(_0x27f037){logger[_0x7291('0xe')](_0x7291('0xf'),_0x4609af,'request\x20sent');logger[_0x7291('0x10')](_0x7291('0x11'),_0x4609af,_0x7291('0x12'),JSON[_0x7291('0x13')](_0x27f037));if(_0x27f037[_0x7291('0x14')]){if(_0x27f037[_0x7291('0x14')]['code']===0x1f4){logger['error'](_0x7291('0xf'),_0x4609af,_0x27f037[_0x7291('0x14')][_0x7291('0x15')]);return _0xb013b3(_0x27f037[_0x7291('0x14')][_0x7291('0x15')]);}logger[_0x7291('0x14')](_0x7291('0xf'),_0x4609af,_0x27f037['error'][_0x7291('0x15')]);return _0x452fc5(_0x27f037[_0x7291('0x14')][_0x7291('0x15')]);}else{logger['info']('CmHopperHistory,\x20%s,\x20%s',_0x4609af,_0x7291('0x12'));_0x452fc5(_0x27f037[_0x7291('0x16')][_0x7291('0x15')]);}})[_0x7291('0x17')](function(_0x427602){logger[_0x7291('0x14')]('CmHopperHistory,\x20%s,\x20%s',_0x4609af,_0x427602);_0xb013b3(_0x427602);});});}exports[_0x7291('0x18')]=function(_0x1680d2){var _0x9c2228=this;return new Promise(function(_0x4264ed,_0x1634c1){return db['CmHopperHistory'][_0x7291('0x19')](_0x1680d2['body'],{'raw':_0x1680d2[_0x7291('0x1a')]?_0x1680d2[_0x7291('0x1a')][_0x7291('0x1b')]===undefined?!![]:![]:!![]})['then'](function(_0x53ba59){logger['info'](_0x7291('0x18'),_0x1680d2);logger[_0x7291('0x10')]('CreateCmHopperHistory',_0x1680d2,JSON['stringify'](_0x53ba59));_0x4264ed(_0x53ba59);})['catch'](function(_0x76a0c3){logger['error'](_0x7291('0x18'),_0x76a0c3[_0x7291('0x15')],_0x1680d2);_0x1634c1(_0x9c2228['error'](0x1f4,_0x76a0c3[_0x7291('0x15')]));});});};exports['AvgHandleTime']=function(_0x2a2c7c){var _0x449ce4=this;return new Promise(function(_0x5976e7,_0x3fd6fc){return db[_0x7291('0x1c')][_0x7291('0x1d')]({'raw':_0x2a2c7c[_0x7291('0x1a')]?_0x2a2c7c[_0x7291('0x1a')][_0x7291('0x1b')]===undefined?!![]:![]:!![],'where':_0x2a2c7c[_0x7291('0x1a')]?_0x2a2c7c[_0x7291('0x1a')][_0x7291('0x1e')]||null:null,'attributes':[[db['sequelize']['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['col']('id')),_0x7291('0x21')],[db[_0x7291('0x20')]['fn']('COUNT',db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')]['literal'](_0x7291('0x22')))),_0x7291('0x23')],[db[_0x7291('0x20')]['fn']('COUNT',db[_0x7291('0x20')]['fn']('IF',db['sequelize']['literal'](_0x7291('0x24')))),_0x7291('0x25')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x27')))),_0x7291('0x28')],[db[_0x7291('0x20')]['fn'](_0x7291('0x29'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')]['literal'](_0x7291('0x2a')))),'predictiveIntervalAvgHoldtime'],[db['sequelize']['fn']('AVG',db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x2b')))),_0x7291('0x2c')]]})['then'](function(_0x35d8f0){logger[_0x7291('0xe')]('AvgHandleTime',_0x2a2c7c);logger[_0x7291('0x10')](_0x7291('0x2d'),_0x2a2c7c,JSON[_0x7291('0x13')](_0x35d8f0));_0x5976e7(_0x35d8f0);})[_0x7291('0x17')](function(_0x56833d){logger['error'](_0x7291('0x2d'),_0x56833d[_0x7291('0x15')],_0x2a2c7c);_0x3fd6fc(_0x449ce4['error'](0x1f4,_0x56833d['message']));});});};exports[_0x7291('0x2e')]=function(_0x3a302d){var _0x3928e0=this;return new Promise(function(_0x34273a,_0x255484){return db['CmHopperHistory']['findAll']({'raw':_0x3a302d[_0x7291('0x1a')]?_0x3a302d[_0x7291('0x1a')][_0x7291('0x1b')]===undefined?!![]:![]:!![],'where':_0x3a302d[_0x7291('0x1a')]?_0x3a302d[_0x7291('0x1a')]['where']||null:null,'attributes':[[_0x7291('0x2f'),'name'],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db['sequelize']['fn']('IF',db['sequelize'][_0x7291('0x26')](_0x7291('0x30')))),_0x7291('0x31')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x32')))),_0x7291('0x33')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db['sequelize']['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x22')))),_0x7291('0x34')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db['sequelize']['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x35')))),_0x7291('0x36')],[db['sequelize']['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x37')))),_0x7291('0x38')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db['sequelize'][_0x7291('0x26')]('`state`\x20=\x2010\x20,\x201,\x20null'))),_0x7291('0x39')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x3a')))),_0x7291('0x3b')],[db['sequelize']['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x3c')))),_0x7291('0x3d')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x3e')))),_0x7291('0x3f')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db['sequelize'][_0x7291('0x26')](_0x7291('0x40')))),'outboundOriginateFailureCallsDay'],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db['sequelize']['literal'](_0x7291('0x41')))),'outboundRejectCallsDay'],[db['sequelize']['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')]['literal'](_0x7291('0x42')))),_0x7291('0x43')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db['sequelize']['fn']('IF',db[_0x7291('0x20')]['literal'](_0x7291('0x44')))),_0x7291('0x45')],[db[_0x7291('0x20')]['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db[_0x7291('0x20')][_0x7291('0x26')](_0x7291('0x46')))),_0x7291('0x47')]],'group':[_0x7291('0x2f')]})['then'](function(_0x42121a){logger[_0x7291('0xe')]('GetVoiceQueueHopperHistory',_0x3a302d);logger[_0x7291('0x10')](_0x7291('0x2e'),_0x3a302d,JSON['stringify'](_0x42121a));_0x34273a(_0x42121a);})['catch'](function(_0xb1e3d2){logger['error'](_0x7291('0x2e'),_0xb1e3d2[_0x7291('0x15')],_0x3a302d);_0x255484(_0x3928e0['error'](0x1f4,_0xb1e3d2[_0x7291('0x15')]));});});};exports[_0x7291('0x48')]=function(_0x2e7146){var _0x326794=this;return new Promise(function(_0x50a4fb,_0x51ff3c){return db['CmHopperHistory'][_0x7291('0x1d')]({'raw':_0x2e7146[_0x7291('0x1a')]?_0x2e7146[_0x7291('0x1a')][_0x7291('0x1b')]===undefined?!![]:![]:!![],'where':_0x2e7146[_0x7291('0x1a')]?_0x2e7146['options'][_0x7291('0x1e')]||null:null,'attributes':[[_0x7291('0x2f'),_0x7291('0x49')],[db[_0x7291('0x20')]['fn']('COUNT',db[_0x7291('0x20')][_0x7291('0x4a')]('id')),_0x7291('0x4b')],[db['sequelize']['fn'](_0x7291('0x1f'),db[_0x7291('0x20')]['fn']('IF',db['sequelize'][_0x7291('0x26')](_0x7291('0x22')))),_0x7291('0x4c')]],'group':[_0x7291('0x2f')]})[_0x7291('0xd')](function(_0x590add){logger[_0x7291('0xe')](_0x7291('0x48'),_0x2e7146);logger['debug'](_0x7291('0x48'),_0x2e7146,JSON[_0x7291('0x13')](_0x590add));_0x50a4fb(_0x590add);})[_0x7291('0x17')](function(_0xa1e8ce){logger[_0x7291('0x14')](_0x7291('0x48'),_0xa1e8ce[_0x7291('0x15')],_0x2e7146);_0x51ff3c(_0x326794['error'](0x1f4,_0xa1e8ce[_0x7291('0x15')]));});});};