Built motion from commit 14588770.|2.5.38
[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 _0xb545=['outboundBlacklistCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','GetCampaignHopperHistory','ivrTotalCallsDays','ivrAnswerCallsDay','util','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','rpc','../../config/environment','jayson/promise','client','request','then','info','CmHopperHistory,\x20%s,\x20%s','debug','request\x20sent','stringify','error','code','message','CreateCmHopperHistory','CmHopperHistory','create','body','options','catch','AvgHandleTime','sequelize','COUNT','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','GetVoiceQueueHopperHistory','findAll','raw','where','campaign','name','outboundNoSuchCallsDay','outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','outboundBusyCallsDay','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null'];(function(_0x1a9204,_0x1c9e00){var _0x17ca68=function(_0x1f4399){while(--_0x1f4399){_0x1a9204['push'](_0x1a9204['shift']());}};_0x17ca68(++_0x1c9e00);}(_0xb545,0xcf));var _0x5b54=function(_0x2aee9e,_0x3b3652){_0x2aee9e=_0x2aee9e-0x0;var _0xcce03e=_0xb545[_0x2aee9e];return _0xcce03e;};'use strict';var _=require('lodash');var util=require(_0x5b54('0x0'));var moment=require('moment');var BPromise=require(_0x5b54('0x1'));var rs=require(_0x5b54('0x2'));var fs=require('fs');var Redis=require(_0x5b54('0x3'));var db=require(_0x5b54('0x4'))['db'];var utils=require(_0x5b54('0x5'));var logger=require('../../config/logger')(_0x5b54('0x6'));var config=require(_0x5b54('0x7'));var jayson=require(_0x5b54('0x8'));var client=jayson[_0x5b54('0x9')]['http']({'port':0x232a});function respondWithRpcPromise(_0x50b9c1,_0x2ee77f,_0x41e579){return new BPromise(function(_0x32a785,_0x321734){return client[_0x5b54('0xa')](_0x50b9c1,_0x41e579)[_0x5b54('0xb')](function(_0x553a32){logger[_0x5b54('0xc')](_0x5b54('0xd'),_0x2ee77f,'request\x20sent');logger[_0x5b54('0xe')]('CmHopperHistory,\x20%s,\x20%s,\x20%s',_0x2ee77f,_0x5b54('0xf'),JSON[_0x5b54('0x10')](_0x553a32));if(_0x553a32[_0x5b54('0x11')]){if(_0x553a32[_0x5b54('0x11')][_0x5b54('0x12')]===0x1f4){logger[_0x5b54('0x11')](_0x5b54('0xd'),_0x2ee77f,_0x553a32[_0x5b54('0x11')]['message']);return _0x321734(_0x553a32['error']['message']);}logger[_0x5b54('0x11')](_0x5b54('0xd'),_0x2ee77f,_0x553a32[_0x5b54('0x11')]['message']);return _0x32a785(_0x553a32[_0x5b54('0x11')][_0x5b54('0x13')]);}else{logger[_0x5b54('0xc')](_0x5b54('0xd'),_0x2ee77f,_0x5b54('0xf'));_0x32a785(_0x553a32['result'][_0x5b54('0x13')]);}})['catch'](function(_0x257abd){logger['error'](_0x5b54('0xd'),_0x2ee77f,_0x257abd);_0x321734(_0x257abd);});});}exports[_0x5b54('0x14')]=function(_0x333aaf){var _0x331b15=this;return new Promise(function(_0x138360,_0x377e91){return db[_0x5b54('0x15')][_0x5b54('0x16')](_0x333aaf[_0x5b54('0x17')],{'raw':_0x333aaf['options']?_0x333aaf[_0x5b54('0x18')]['raw']===undefined?!![]:![]:!![]})['then'](function(_0x3f933d){logger['info']('CreateCmHopperHistory',_0x333aaf);logger[_0x5b54('0xe')](_0x5b54('0x14'),_0x333aaf,JSON['stringify'](_0x3f933d));_0x138360(_0x3f933d);})[_0x5b54('0x19')](function(_0x5031f7){logger['error'](_0x5b54('0x14'),_0x5031f7[_0x5b54('0x13')],_0x333aaf);_0x377e91(_0x331b15[_0x5b54('0x11')](0x1f4,_0x5031f7[_0x5b54('0x13')]));});});};exports[_0x5b54('0x1a')]=function(_0xe954f5){var _0x395fa7=this;return new Promise(function(_0x22e5be,_0x1f9e42){return db[_0x5b54('0x15')]['findAll']({'raw':_0xe954f5['options']?_0xe954f5[_0x5b54('0x18')]['raw']===undefined?!![]:![]:!![],'where':_0xe954f5[_0x5b54('0x18')]?_0xe954f5['options']['where']||null:null,'attributes':[[db[_0x5b54('0x1b')]['fn']('COUNT',db[_0x5b54('0x1b')]['col']('id')),'predictiveIntervalTotalCalls'],[db['sequelize']['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x1e')))),_0x5b54('0x1f')],[db['sequelize']['fn'](_0x5b54('0x1c'),db['sequelize']['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x20')))),_0x5b54('0x21')],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db['sequelize'][_0x5b54('0x1d')]('`state`\x20=\x2011,\x201,\x20null'))),_0x5b54('0x22')],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x23'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x24')))),_0x5b54('0x25')],[db[_0x5b54('0x1b')]['fn']('AVG',db['sequelize']['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x26')))),'predictiveIntervalAvgTalktime']]})[_0x5b54('0xb')](function(_0x179503){logger[_0x5b54('0xc')]('AvgHandleTime',_0xe954f5);logger['debug'](_0x5b54('0x1a'),_0xe954f5,JSON[_0x5b54('0x10')](_0x179503));_0x22e5be(_0x179503);})['catch'](function(_0x21559e){logger[_0x5b54('0x11')](_0x5b54('0x1a'),_0x21559e[_0x5b54('0x13')],_0xe954f5);_0x1f9e42(_0x395fa7[_0x5b54('0x11')](0x1f4,_0x21559e[_0x5b54('0x13')]));});});};exports[_0x5b54('0x27')]=function(_0x35c6a8){var _0x4e75e0=this;return new Promise(function(_0x575de5,_0x2e3a7d){return db[_0x5b54('0x15')][_0x5b54('0x28')]({'raw':_0x35c6a8['options']?_0x35c6a8[_0x5b54('0x18')][_0x5b54('0x29')]===undefined?!![]:![]:!![],'where':_0x35c6a8['options']?_0x35c6a8[_0x5b54('0x18')][_0x5b54('0x2a')]||null:null,'attributes':[[_0x5b54('0x2b'),_0x5b54('0x2c')],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db['sequelize']['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')]('`state`\x20=\x200,\x201,\x20null'))),_0x5b54('0x2d')],[db['sequelize']['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')]['literal']('`state`\x20=\x203,\x201,\x20null'))),_0x5b54('0x2e')],[db[_0x5b54('0x1b')]['fn']('COUNT',db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')]['literal'](_0x5b54('0x1e')))),_0x5b54('0x2f')],[db[_0x5b54('0x1b')]['fn']('COUNT',db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')]['literal'](_0x5b54('0x30')))),_0x5b54('0x31')],[db[_0x5b54('0x1b')]['fn']('COUNT',db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x32')))),_0x5b54('0x33')],[db['sequelize']['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')]('`state`\x20=\x2010\x20,\x201,\x20null'))),_0x5b54('0x34')],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')]['literal']('`state`\x20=\x2011\x20,\x201,\x20null'))),_0x5b54('0x35')],[db['sequelize']['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')]['literal'](_0x5b54('0x36')))),_0x5b54('0x37')],[db['sequelize']['fn']('COUNT',db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x38')))),_0x5b54('0x39')],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')]('`state`\x20=\x2014,\x201,\x20null'))),'outboundOriginateFailureCallsDay'],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x3a')))),_0x5b54('0x3b')],[db[_0x5b54('0x1b')]['fn']('COUNT',db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x3c')))),'outboundAnswerAgiCallsDay'],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')][_0x5b54('0x1d')](_0x5b54('0x3d')))),_0x5b54('0x3b')],[db[_0x5b54('0x1b')]['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db['sequelize'][_0x5b54('0x1d')](_0x5b54('0x3e')))),'outboundReCallsDay']],'group':[_0x5b54('0x2b')]})[_0x5b54('0xb')](function(_0x1a9daf){logger[_0x5b54('0xc')](_0x5b54('0x27'),_0x35c6a8);logger[_0x5b54('0xe')]('GetVoiceQueueHopperHistory',_0x35c6a8,JSON[_0x5b54('0x10')](_0x1a9daf));_0x575de5(_0x1a9daf);})[_0x5b54('0x19')](function(_0xdeca8c){logger[_0x5b54('0x11')]('GetVoiceQueueHopperHistory',_0xdeca8c[_0x5b54('0x13')],_0x35c6a8);_0x2e3a7d(_0x4e75e0[_0x5b54('0x11')](0x1f4,_0xdeca8c[_0x5b54('0x13')]));});});};exports[_0x5b54('0x3f')]=function(_0x5ad735){var _0x3fa4b3=this;return new Promise(function(_0x28f8fa,_0x3d0cdf){return db[_0x5b54('0x15')][_0x5b54('0x28')]({'raw':_0x5ad735[_0x5b54('0x18')]?_0x5ad735[_0x5b54('0x18')][_0x5b54('0x29')]===undefined?!![]:![]:!![],'where':_0x5ad735[_0x5b54('0x18')]?_0x5ad735[_0x5b54('0x18')][_0x5b54('0x2a')]||null:null,'attributes':[['campaign',_0x5b54('0x2c')],[db['sequelize']['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['col']('id')),_0x5b54('0x40')],[db['sequelize']['fn'](_0x5b54('0x1c'),db[_0x5b54('0x1b')]['fn']('IF',db[_0x5b54('0x1b')]['literal'](_0x5b54('0x1e')))),_0x5b54('0x41')]],'group':[_0x5b54('0x2b')]})[_0x5b54('0xb')](function(_0x49d990){logger['info'](_0x5b54('0x3f'),_0x5ad735);logger[_0x5b54('0xe')](_0x5b54('0x3f'),_0x5ad735,JSON[_0x5b54('0x10')](_0x49d990));_0x28f8fa(_0x49d990);})[_0x5b54('0x19')](function(_0x55ff71){logger['error'](_0x5b54('0x3f'),_0x55ff71[_0x5b54('0x13')],_0x5ad735);_0x3d0cdf(_0x3fa4b3['error'](0x1f4,_0x55ff71[_0x5b54('0x13')]));});});};