6aa51189702ba43ff2a4c6c86f958f7755576c8e
[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 _0x1be1=['options','raw','AvgHandleTime','CmHopperHistory','where','COUNT','sequelize','col','predictiveIntervalTotalCalls','literal','predictiveIntervalAnsweredCalls','`state`\x20=\x2010,\x201,\x20null','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','GetVoiceQueueHopperHistory','findAll','campaign','name','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null','outboundNoAnswerCallsDay','`state`\x20=\x204,\x201,\x20null','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=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','outboundRejectCallsDay','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','ivrTotalCallsDays','ivrAnswerCallsDay','GetCampaignHopperHistory','moment','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','request','then','info','CmHopperHistory,\x20%s,\x20%s','debug','CmHopperHistory,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','CreateCmHopperHistory','body'];(function(_0x4dce21,_0x1db89f){var _0x4a55ae=function(_0xda4ded){while(--_0xda4ded){_0x4dce21['push'](_0x4dce21['shift']());}};_0x4a55ae(++_0x1db89f);}(_0x1be1,0x192));var _0x11be=function(_0x8ec75d,_0x32e172){_0x8ec75d=_0x8ec75d-0x0;var _0x3a5396=_0x1be1[_0x8ec75d];return _0x3a5396;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0x11be('0x0'));var BPromise=require(_0x11be('0x1'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x11be('0x2'));var db=require(_0x11be('0x3'))['db'];var utils=require(_0x11be('0x4'));var logger=require(_0x11be('0x5'))('rpc');var config=require(_0x11be('0x6'));var jayson=require(_0x11be('0x7'));var client=jayson[_0x11be('0x8')]['http']({'port':0x232a});function respondWithRpcPromise(_0xfe8c62,_0x497730,_0x18f661){return new BPromise(function(_0x11fc15,_0x246772){return client[_0x11be('0x9')](_0xfe8c62,_0x18f661)[_0x11be('0xa')](function(_0x5f3d04){logger[_0x11be('0xb')](_0x11be('0xc'),_0x497730,'request\x20sent');logger[_0x11be('0xd')](_0x11be('0xe'),_0x497730,_0x11be('0xf'),JSON[_0x11be('0x10')](_0x5f3d04));if(_0x5f3d04['error']){if(_0x5f3d04[_0x11be('0x11')][_0x11be('0x12')]===0x1f4){logger[_0x11be('0x11')]('CmHopperHistory,\x20%s,\x20%s',_0x497730,_0x5f3d04[_0x11be('0x11')][_0x11be('0x13')]);return _0x246772(_0x5f3d04['error'][_0x11be('0x13')]);}logger['error']('CmHopperHistory,\x20%s,\x20%s',_0x497730,_0x5f3d04['error']['message']);return _0x11fc15(_0x5f3d04['error']['message']);}else{logger['info'](_0x11be('0xc'),_0x497730,'request\x20sent');_0x11fc15(_0x5f3d04[_0x11be('0x14')][_0x11be('0x13')]);}})[_0x11be('0x15')](function(_0x216b8c){logger['error'](_0x11be('0xc'),_0x497730,_0x216b8c);_0x246772(_0x216b8c);});});}exports[_0x11be('0x16')]=function(_0x56ab61){var _0x299f45=this;return new Promise(function(_0xc3263c,_0x23aa5f){return db['CmHopperHistory']['create'](_0x56ab61[_0x11be('0x17')],{'raw':_0x56ab61[_0x11be('0x18')]?_0x56ab61[_0x11be('0x18')][_0x11be('0x19')]===undefined?!![]:![]:!![]})['then'](function(_0x12a5bd){logger[_0x11be('0xb')](_0x11be('0x16'),_0x56ab61);logger[_0x11be('0xd')](_0x11be('0x16'),_0x56ab61,JSON[_0x11be('0x10')](_0x12a5bd));_0xc3263c(_0x12a5bd);})[_0x11be('0x15')](function(_0x17678d){logger[_0x11be('0x11')](_0x11be('0x16'),_0x17678d['message'],_0x56ab61);_0x23aa5f(_0x299f45[_0x11be('0x11')](0x1f4,_0x17678d[_0x11be('0x13')]));});});};exports[_0x11be('0x1a')]=function(_0x5d1690){var _0x4b329b=this;return new Promise(function(_0x118915,_0x10ce04){return db[_0x11be('0x1b')]['findAll']({'raw':_0x5d1690[_0x11be('0x18')]?_0x5d1690['options'][_0x11be('0x19')]===undefined?!![]:![]:!![],'where':_0x5d1690['options']?_0x5d1690[_0x11be('0x18')][_0x11be('0x1c')]||null:null,'attributes':[[db['sequelize']['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')][_0x11be('0x1f')]('id')),_0x11be('0x20')],[db[_0x11be('0x1e')]['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')]('`state`\x20=\x204,\x201,\x20null'))),_0x11be('0x22')],[db['sequelize']['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db['sequelize']['literal'](_0x11be('0x23')))),_0x11be('0x24')],[db[_0x11be('0x1e')]['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x25')))),_0x11be('0x26')],[db['sequelize']['fn'](_0x11be('0x27'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x28')))),_0x11be('0x29')],[db['sequelize']['fn'](_0x11be('0x27'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x2a')))),'predictiveIntervalAvgTalktime']]})[_0x11be('0xa')](function(_0x254be5){logger[_0x11be('0xb')]('AvgHandleTime',_0x5d1690);logger[_0x11be('0xd')]('AvgHandleTime',_0x5d1690,JSON['stringify'](_0x254be5));_0x118915(_0x254be5);})['catch'](function(_0x50e601){logger[_0x11be('0x11')](_0x11be('0x1a'),_0x50e601[_0x11be('0x13')],_0x5d1690);_0x10ce04(_0x4b329b['error'](0x1f4,_0x50e601[_0x11be('0x13')]));});});};exports[_0x11be('0x2b')]=function(_0x56ecd2){var _0x370d10=this;return new Promise(function(_0x556989,_0x222f84){return db['CmHopperHistory'][_0x11be('0x2c')]({'raw':_0x56ecd2[_0x11be('0x18')]?_0x56ecd2[_0x11be('0x18')][_0x11be('0x19')]===undefined?!![]:![]:!![],'where':_0x56ecd2['options']?_0x56ecd2[_0x11be('0x18')][_0x11be('0x1c')]||null:null,'attributes':[[_0x11be('0x2d'),_0x11be('0x2e')],[db['sequelize']['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x2f')))),_0x11be('0x30')],[db[_0x11be('0x1e')]['fn']('COUNT',db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')]['literal'](_0x11be('0x31')))),_0x11be('0x32')],[db['sequelize']['fn'](_0x11be('0x1d'),db['sequelize']['fn']('IF',db[_0x11be('0x1e')]['literal'](_0x11be('0x33')))),_0x11be('0x34')],[db['sequelize']['fn'](_0x11be('0x1d'),db['sequelize']['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x35')))),_0x11be('0x36')],[db[_0x11be('0x1e')]['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db['sequelize'][_0x11be('0x21')](_0x11be('0x37')))),_0x11be('0x38')],[db[_0x11be('0x1e')]['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0x11be('0x21')]('`state`\x20=\x2010\x20,\x201,\x20null'))),_0x11be('0x39')],[db['sequelize']['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x3a')))),_0x11be('0x3b')],[db[_0x11be('0x1e')]['fn']('COUNT',db[_0x11be('0x1e')]['fn']('IF',db['sequelize'][_0x11be('0x21')](_0x11be('0x3c')))),_0x11be('0x3d')],[db['sequelize']['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')]('`state`\x20=\x2013,\x201,\x20null'))),'outboundBlacklistCallsDay'],[db['sequelize']['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x3e')))),_0x11be('0x3f')],[db[_0x11be('0x1e')]['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')]('`state`\x20=\x2018,\x201,\x20null'))),_0x11be('0x40')],[db[_0x11be('0x1e')]['fn']('COUNT',db['sequelize']['fn']('IF',db['sequelize'][_0x11be('0x21')]('`state`\x20=\x2016,\x201,\x20null'))),_0x11be('0x41')],[db[_0x11be('0x1e')]['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')][_0x11be('0x21')](_0x11be('0x42')))),_0x11be('0x40')],[db[_0x11be('0x1e')]['fn']('COUNT',db[_0x11be('0x1e')]['fn']('IF',db['sequelize'][_0x11be('0x21')](_0x11be('0x43')))),'outboundReCallsDay']],'group':[_0x11be('0x2d')]})[_0x11be('0xa')](function(_0x4c0e37){logger[_0x11be('0xb')](_0x11be('0x2b'),_0x56ecd2);logger['debug']('GetVoiceQueueHopperHistory',_0x56ecd2,JSON[_0x11be('0x10')](_0x4c0e37));_0x556989(_0x4c0e37);})[_0x11be('0x15')](function(_0x50eeab){logger['error'](_0x11be('0x2b'),_0x50eeab[_0x11be('0x13')],_0x56ecd2);_0x222f84(_0x370d10[_0x11be('0x11')](0x1f4,_0x50eeab['message']));});});};exports['GetCampaignHopperHistory']=function(_0x4d5d07){var _0x19233f=this;return new Promise(function(_0x6f2b62,_0x3c3bef){return db['CmHopperHistory']['findAll']({'raw':_0x4d5d07[_0x11be('0x18')]?_0x4d5d07[_0x11be('0x18')][_0x11be('0x19')]===undefined?!![]:![]:!![],'where':_0x4d5d07[_0x11be('0x18')]?_0x4d5d07['options'][_0x11be('0x1c')]||null:null,'attributes':[['campaign','name'],[db['sequelize']['fn']('COUNT',db[_0x11be('0x1e')][_0x11be('0x1f')]('id')),_0x11be('0x44')],[db[_0x11be('0x1e')]['fn'](_0x11be('0x1d'),db[_0x11be('0x1e')]['fn']('IF',db[_0x11be('0x1e')]['literal']('`state`\x20=\x204,\x201,\x20null'))),_0x11be('0x45')]],'group':[_0x11be('0x2d')]})[_0x11be('0xa')](function(_0x2b0289){logger[_0x11be('0xb')](_0x11be('0x46'),_0x4d5d07);logger[_0x11be('0xd')](_0x11be('0x46'),_0x4d5d07,JSON[_0x11be('0x10')](_0x2b0289));_0x6f2b62(_0x2b0289);})['catch'](function(_0x1aa57d){logger[_0x11be('0x11')](_0x11be('0x46'),_0x1aa57d['message'],_0x4d5d07);_0x3c3bef(_0x19233f[_0x11be('0x11')](0x1f4,_0x1aa57d[_0x11be('0x13')]));});});};