Built motion from commit (unavailable).|2.4.18
[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 _0x1339=['predictiveIntervalAvgTalktime','GetVoiceQueueHopperHistory','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','outboundDropCallsDayTimeout','`state`\x20=\x2011\x20,\x201,\x20null','outboundUnknownCallsDay','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2016,\x201,\x20null','`state`\x20=\x2020,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','campaign','ivrAnswerCallsDay','GetCampaignHopperHistory','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','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','CmHopperHistory','create','options','raw','debug','AvgHandleTime','findAll','where','sequelize','col','predictiveIntervalTotalCalls','COUNT','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','`state`\x20=\x204,\x20`talktime`,\x20null'];(function(_0x44eb21,_0x31aab0){var _0x179f3b=function(_0x2ed51b){while(--_0x2ed51b){_0x44eb21['push'](_0x44eb21['shift']());}};_0x179f3b(++_0x31aab0);}(_0x1339,0x1ed));var _0x9133=function(_0x40e464,_0x49c867){_0x40e464=_0x40e464-0x0;var _0x380314=_0x1339[_0x40e464];return _0x380314;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0x9133('0x0'));var BPromise=require(_0x9133('0x1'));var rs=require(_0x9133('0x2'));var fs=require('fs');var Redis=require(_0x9133('0x3'));var db=require(_0x9133('0x4'))['db'];var utils=require(_0x9133('0x5'));var logger=require(_0x9133('0x6'))(_0x9133('0x7'));var config=require('../../config/environment');var jayson=require(_0x9133('0x8'));var client=jayson[_0x9133('0x9')][_0x9133('0xa')]({'port':0x232a});function respondWithRpcPromise(_0x539af6,_0x2758e2,_0x334dcd){return new BPromise(function(_0x3059c4,_0x431a55){return client[_0x9133('0xb')](_0x539af6,_0x334dcd)[_0x9133('0xc')](function(_0x4294b7){logger[_0x9133('0xd')](_0x9133('0xe'),_0x2758e2,_0x9133('0xf'));logger['debug'](_0x9133('0x10'),_0x2758e2,_0x9133('0xf'),JSON[_0x9133('0x11')](_0x4294b7));if(_0x4294b7[_0x9133('0x12')]){if(_0x4294b7[_0x9133('0x12')][_0x9133('0x13')]===0x1f4){logger['error'](_0x9133('0xe'),_0x2758e2,_0x4294b7[_0x9133('0x12')]['message']);return _0x431a55(_0x4294b7['error'][_0x9133('0x14')]);}logger['error'](_0x9133('0xe'),_0x2758e2,_0x4294b7[_0x9133('0x12')][_0x9133('0x14')]);return _0x3059c4(_0x4294b7[_0x9133('0x12')][_0x9133('0x14')]);}else{logger[_0x9133('0xd')]('CmHopperHistory,\x20%s,\x20%s',_0x2758e2,_0x9133('0xf'));_0x3059c4(_0x4294b7[_0x9133('0x15')]['message']);}})[_0x9133('0x16')](function(_0xa46eb1){logger[_0x9133('0x12')](_0x9133('0xe'),_0x2758e2,_0xa46eb1);_0x431a55(_0xa46eb1);});});}exports['CreateCmHopperHistory']=function(_0x1f3484){var _0x573998=this;return new Promise(function(_0x3c48ef,_0x5d4a77){return db[_0x9133('0x17')][_0x9133('0x18')](_0x1f3484['body'],{'raw':_0x1f3484[_0x9133('0x19')]?_0x1f3484['options'][_0x9133('0x1a')]===undefined?!![]:![]:!![]})['then'](function(_0x5e4f0c){logger[_0x9133('0xd')]('CreateCmHopperHistory',_0x1f3484);logger[_0x9133('0x1b')]('CreateCmHopperHistory',_0x1f3484,JSON['stringify'](_0x5e4f0c));_0x3c48ef(_0x5e4f0c);})['catch'](function(_0x2e99a1){logger[_0x9133('0x12')]('CreateCmHopperHistory',_0x2e99a1[_0x9133('0x14')],_0x1f3484);_0x5d4a77(_0x573998[_0x9133('0x12')](0x1f4,_0x2e99a1[_0x9133('0x14')]));});});};exports[_0x9133('0x1c')]=function(_0x4f26e8){var _0xdb7a98=this;return new Promise(function(_0x5c4614,_0x187e32){return db[_0x9133('0x17')][_0x9133('0x1d')]({'raw':_0x4f26e8[_0x9133('0x19')]?_0x4f26e8[_0x9133('0x19')][_0x9133('0x1a')]===undefined?!![]:![]:!![],'where':_0x4f26e8[_0x9133('0x19')]?_0x4f26e8[_0x9133('0x19')][_0x9133('0x1e')]||null:null,'attributes':[[db[_0x9133('0x1f')]['fn']('COUNT',db['sequelize'][_0x9133('0x20')]('id')),_0x9133('0x21')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db['sequelize']['fn']('IF',db['sequelize'][_0x9133('0x23')](_0x9133('0x24')))),_0x9133('0x25')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db['sequelize']['literal']('`state`\x20=\x2010,\x201,\x20null'))),_0x9133('0x26')],[db['sequelize']['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db['sequelize'][_0x9133('0x23')]('`state`\x20=\x2011,\x201,\x20null'))),_0x9133('0x27')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x28'),db['sequelize']['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x29')))),'predictiveIntervalAvgHoldtime'],[db[_0x9133('0x1f')]['fn'](_0x9133('0x28'),db[_0x9133('0x1f')]['fn']('IF',db['sequelize'][_0x9133('0x23')](_0x9133('0x2a')))),_0x9133('0x2b')]]})[_0x9133('0xc')](function(_0x5e4d5e){logger[_0x9133('0xd')](_0x9133('0x1c'),_0x4f26e8);logger['debug'](_0x9133('0x1c'),_0x4f26e8,JSON[_0x9133('0x11')](_0x5e4d5e));_0x5c4614(_0x5e4d5e);})[_0x9133('0x16')](function(_0x2763f3){logger[_0x9133('0x12')](_0x9133('0x1c'),_0x2763f3[_0x9133('0x14')],_0x4f26e8);_0x187e32(_0xdb7a98[_0x9133('0x12')](0x1f4,_0x2763f3[_0x9133('0x14')]));});});};exports[_0x9133('0x2c')]=function(_0x40d92f){var _0x4f3fa6=this;return new Promise(function(_0x17bb4c,_0x2c2e16){return db['CmHopperHistory'][_0x9133('0x1d')]({'raw':_0x40d92f[_0x9133('0x19')]?_0x40d92f[_0x9133('0x19')][_0x9133('0x1a')]===undefined?!![]:![]:!![],'where':_0x40d92f[_0x9133('0x19')]?_0x40d92f[_0x9133('0x19')]['where']||null:null,'attributes':[['campaign',_0x9133('0x2d')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x2e')))),_0x9133('0x2f')],[db[_0x9133('0x1f')]['fn']('COUNT',db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x30')))),_0x9133('0x31')],[db['sequelize']['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')]('`state`\x20=\x204,\x201,\x20null'))),_0x9133('0x32')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x33')))),'outboundBusyCallsDay'],[db[_0x9133('0x1f')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x34')))),_0x9133('0x35')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')]('`state`\x20=\x2010\x20,\x201,\x20null'))),_0x9133('0x36')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db['sequelize']['fn']('IF',db['sequelize'][_0x9133('0x23')](_0x9133('0x37')))),'outboundDropCallsDayCallersExit'],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')]('`state`\x20=\x2012,\x201,\x20null'))),_0x9133('0x38')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db['sequelize']['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')]('`state`\x20=\x2013,\x201,\x20null'))),'outboundBlacklistCallsDay'],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x39')))),_0x9133('0x3a')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')]('`state`\x20=\x2018,\x201,\x20null'))),'outboundRejectCallsDay'],[db[_0x9133('0x1f')]['fn']('COUNT',db[_0x9133('0x1f')]['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x3b')))),'outboundAnswerAgiCallsDay'],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db['sequelize'][_0x9133('0x23')](_0x9133('0x3c')))),_0x9133('0x3d')],[db['sequelize']['fn'](_0x9133('0x22'),db['sequelize']['fn']('IF',db[_0x9133('0x1f')][_0x9133('0x23')](_0x9133('0x3e')))),_0x9133('0x3f')]],'group':['campaign']})['then'](function(_0x2f09f6){logger[_0x9133('0xd')](_0x9133('0x2c'),_0x40d92f);logger[_0x9133('0x1b')](_0x9133('0x2c'),_0x40d92f,JSON['stringify'](_0x2f09f6));_0x17bb4c(_0x2f09f6);})['catch'](function(_0x33599b){logger[_0x9133('0x12')]('GetVoiceQueueHopperHistory',_0x33599b[_0x9133('0x14')],_0x40d92f);_0x2c2e16(_0x4f3fa6[_0x9133('0x12')](0x1f4,_0x33599b['message']));});});};exports['GetCampaignHopperHistory']=function(_0x4a521a){var _0x6d8c71=this;return new Promise(function(_0x537046,_0x12d9e1){return db[_0x9133('0x17')][_0x9133('0x1d')]({'raw':_0x4a521a[_0x9133('0x19')]?_0x4a521a['options'][_0x9133('0x1a')]===undefined?!![]:![]:!![],'where':_0x4a521a['options']?_0x4a521a[_0x9133('0x19')][_0x9133('0x1e')]||null:null,'attributes':[[_0x9133('0x40'),_0x9133('0x2d')],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db['sequelize']['col']('id')),'ivrTotalCallsDays'],[db[_0x9133('0x1f')]['fn'](_0x9133('0x22'),db[_0x9133('0x1f')]['fn']('IF',db['sequelize'][_0x9133('0x23')](_0x9133('0x24')))),_0x9133('0x41')]],'group':[_0x9133('0x40')]})[_0x9133('0xc')](function(_0x356103){logger[_0x9133('0xd')](_0x9133('0x42'),_0x4a521a);logger['debug'](_0x9133('0x42'),_0x4a521a,JSON['stringify'](_0x356103));_0x537046(_0x356103);})[_0x9133('0x16')](function(_0x53d9bd){logger[_0x9133('0x12')](_0x9133('0x42'),_0x53d9bd['message'],_0x4a521a);_0x12d9e1(_0x6d8c71['error'](0x1f4,_0x53d9bd[_0x9133('0x14')]));});});};