Built motion from commit 9d7072cc.|2.5.39
[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 _0xde13=['outboundNoAnswerCallsDay','outboundAnswerCallsDay','`state`\x20=\x205,\x201,\x20null','`state`\x20=\x208,\x201,\x20null','outboundCongestionCallsDay','`state`\x20=\x2010\x20,\x201,\x20null','outboundDropCallsDayTimeout','outboundDropCallsDayCallersExit','`state`\x20=\x2012,\x201,\x20null','outboundUnknownCallsDay','`state`\x20=\x2013,\x201,\x20null','outboundBlacklistCallsDay','`state`\x20=\x2014,\x201,\x20null','outboundOriginateFailureCallsDay','`state`\x20=\x2018,\x201,\x20null','outboundRejectCallsDay','`state`\x20=\x2016,\x201,\x20null','outboundAnswerAgiCallsDay','`state`\x20=\x2020,\x201,\x20null','`state`\x20=\x2022\x20or\x20`state`\x20=\x2023,\x201,\x20null','outboundReCallsDay','GetVoiceQueueHopperHistory','GetCampaignHopperHistory','name','ivrTotalCallsDays','ivrAnswerCallsDay','lodash','util','moment','bluebird','randomstring','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','client','http','request','CmHopperHistory,\x20%s,\x20%s','request\x20sent','debug','stringify','error','message','result','catch','CreateCmHopperHistory','CmHopperHistory','body','options','raw','then','info','AvgHandleTime','findAll','where','sequelize','col','predictiveIntervalTotalCalls','COUNT','literal','`state`\x20=\x204,\x201,\x20null','predictiveIntervalAnsweredCalls','predictiveIntervalDroppedCallsTimeout','`state`\x20=\x2011,\x201,\x20null','predictiveIntervalDroppedCallsCallersExit','AVG','`state`\x20=\x204,\x20`holdtime`,\x20null','predictiveIntervalAvgHoldtime','`state`\x20=\x204,\x20`talktime`,\x20null','predictiveIntervalAvgTalktime','campaign','`state`\x20=\x200,\x201,\x20null','outboundNoSuchCallsDay','`state`\x20=\x203,\x201,\x20null'];(function(_0x100786,_0x59c23c){var _0x55a5d2=function(_0x17c305){while(--_0x17c305){_0x100786['push'](_0x100786['shift']());}};_0x55a5d2(++_0x59c23c);}(_0xde13,0x146));var _0x3de1=function(_0x10192c,_0x2d8dd3){_0x10192c=_0x10192c-0x0;var _0x5c1b82=_0xde13[_0x10192c];return _0x5c1b82;};'use strict';var _=require(_0x3de1('0x0'));var util=require(_0x3de1('0x1'));var moment=require(_0x3de1('0x2'));var BPromise=require(_0x3de1('0x3'));var rs=require(_0x3de1('0x4'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x3de1('0x5'))['db'];var utils=require(_0x3de1('0x6'));var logger=require(_0x3de1('0x7'))('rpc');var config=require(_0x3de1('0x8'));var jayson=require('jayson/promise');var client=jayson[_0x3de1('0x9')][_0x3de1('0xa')]({'port':0x232a});function respondWithRpcPromise(_0x3d2169,_0x34291a,_0x5f1aff){return new BPromise(function(_0x11df45,_0x41b5bb){return client[_0x3de1('0xb')](_0x3d2169,_0x5f1aff)['then'](function(_0x4eb503){logger['info'](_0x3de1('0xc'),_0x34291a,_0x3de1('0xd'));logger[_0x3de1('0xe')]('CmHopperHistory,\x20%s,\x20%s,\x20%s',_0x34291a,_0x3de1('0xd'),JSON[_0x3de1('0xf')](_0x4eb503));if(_0x4eb503[_0x3de1('0x10')]){if(_0x4eb503['error']['code']===0x1f4){logger[_0x3de1('0x10')]('CmHopperHistory,\x20%s,\x20%s',_0x34291a,_0x4eb503['error']['message']);return _0x41b5bb(_0x4eb503[_0x3de1('0x10')][_0x3de1('0x11')]);}logger[_0x3de1('0x10')](_0x3de1('0xc'),_0x34291a,_0x4eb503['error'][_0x3de1('0x11')]);return _0x11df45(_0x4eb503['error'][_0x3de1('0x11')]);}else{logger['info'](_0x3de1('0xc'),_0x34291a,_0x3de1('0xd'));_0x11df45(_0x4eb503[_0x3de1('0x12')]['message']);}})[_0x3de1('0x13')](function(_0x25f619){logger[_0x3de1('0x10')](_0x3de1('0xc'),_0x34291a,_0x25f619);_0x41b5bb(_0x25f619);});});}exports[_0x3de1('0x14')]=function(_0x510e5a){var _0x19254b=this;return new Promise(function(_0x5a10f2,_0x1e5a06){return db[_0x3de1('0x15')]['create'](_0x510e5a[_0x3de1('0x16')],{'raw':_0x510e5a['options']?_0x510e5a[_0x3de1('0x17')][_0x3de1('0x18')]===undefined?!![]:![]:!![]})[_0x3de1('0x19')](function(_0x5635b5){logger[_0x3de1('0x1a')](_0x3de1('0x14'),_0x510e5a);logger[_0x3de1('0xe')]('CreateCmHopperHistory',_0x510e5a,JSON[_0x3de1('0xf')](_0x5635b5));_0x5a10f2(_0x5635b5);})[_0x3de1('0x13')](function(_0x594bdb){logger['error'](_0x3de1('0x14'),_0x594bdb[_0x3de1('0x11')],_0x510e5a);_0x1e5a06(_0x19254b[_0x3de1('0x10')](0x1f4,_0x594bdb[_0x3de1('0x11')]));});});};exports[_0x3de1('0x1b')]=function(_0x4370f2){var _0x1e074c=this;return new Promise(function(_0xa7af52,_0x491b3d){return db['CmHopperHistory'][_0x3de1('0x1c')]({'raw':_0x4370f2[_0x3de1('0x17')]?_0x4370f2[_0x3de1('0x17')][_0x3de1('0x18')]===undefined?!![]:![]:!![],'where':_0x4370f2[_0x3de1('0x17')]?_0x4370f2['options'][_0x3de1('0x1d')]||null:null,'attributes':[[db['sequelize']['fn']('COUNT',db[_0x3de1('0x1e')][_0x3de1('0x1f')]('id')),_0x3de1('0x20')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x23')))),_0x3de1('0x24')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db['sequelize']['fn']('IF',db['sequelize'][_0x3de1('0x22')]('`state`\x20=\x2010,\x201,\x20null'))),_0x3de1('0x25')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db['sequelize']['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x26')))),_0x3de1('0x27')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x28'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x29')))),_0x3de1('0x2a')],[db[_0x3de1('0x1e')]['fn']('AVG',db['sequelize']['fn']('IF',db['sequelize'][_0x3de1('0x22')](_0x3de1('0x2b')))),_0x3de1('0x2c')]]})[_0x3de1('0x19')](function(_0x498068){logger['info'](_0x3de1('0x1b'),_0x4370f2);logger['debug']('AvgHandleTime',_0x4370f2,JSON[_0x3de1('0xf')](_0x498068));_0xa7af52(_0x498068);})[_0x3de1('0x13')](function(_0x4ee49b){logger[_0x3de1('0x10')](_0x3de1('0x1b'),_0x4ee49b[_0x3de1('0x11')],_0x4370f2);_0x491b3d(_0x1e074c[_0x3de1('0x10')](0x1f4,_0x4ee49b[_0x3de1('0x11')]));});});};exports['GetVoiceQueueHopperHistory']=function(_0x447186){var _0x5a389d=this;return new Promise(function(_0x23cc71,_0x336480){return db[_0x3de1('0x15')][_0x3de1('0x1c')]({'raw':_0x447186[_0x3de1('0x17')]?_0x447186[_0x3de1('0x17')][_0x3de1('0x18')]===undefined?!![]:![]:!![],'where':_0x447186[_0x3de1('0x17')]?_0x447186[_0x3de1('0x17')]['where']||null:null,'attributes':[[_0x3de1('0x2d'),'name'],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x2e')))),_0x3de1('0x2f')],[db['sequelize']['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x30')))),_0x3de1('0x31')],[db['sequelize']['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x23')))),_0x3de1('0x32')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db['sequelize'][_0x3de1('0x22')](_0x3de1('0x33')))),'outboundBusyCallsDay'],[db['sequelize']['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db['sequelize']['literal'](_0x3de1('0x34')))),_0x3de1('0x35')],[db['sequelize']['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')]['literal'](_0x3de1('0x36')))),_0x3de1('0x37')],[db[_0x3de1('0x1e')]['fn']('COUNT',db['sequelize']['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')]('`state`\x20=\x2011\x20,\x201,\x20null'))),_0x3de1('0x38')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x39')))),_0x3de1('0x3a')],[db['sequelize']['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db['sequelize']['literal'](_0x3de1('0x3b')))),_0x3de1('0x3c')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db['sequelize']['fn']('IF',db['sequelize']['literal'](_0x3de1('0x3d')))),_0x3de1('0x3e')],[db[_0x3de1('0x1e')]['fn']('COUNT',db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x3f')))),_0x3de1('0x40')],[db['sequelize']['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x41')))),_0x3de1('0x42')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x43')))),_0x3de1('0x40')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db[_0x3de1('0x1e')]['fn']('IF',db[_0x3de1('0x1e')][_0x3de1('0x22')](_0x3de1('0x44')))),_0x3de1('0x45')]],'group':[_0x3de1('0x2d')]})['then'](function(_0x3fa07a){logger[_0x3de1('0x1a')]('GetVoiceQueueHopperHistory',_0x447186);logger[_0x3de1('0xe')](_0x3de1('0x46'),_0x447186,JSON[_0x3de1('0xf')](_0x3fa07a));_0x23cc71(_0x3fa07a);})[_0x3de1('0x13')](function(_0x818fc5){logger[_0x3de1('0x10')](_0x3de1('0x46'),_0x818fc5[_0x3de1('0x11')],_0x447186);_0x336480(_0x5a389d['error'](0x1f4,_0x818fc5[_0x3de1('0x11')]));});});};exports[_0x3de1('0x47')]=function(_0x22de90){var _0x26b88f=this;return new Promise(function(_0x3a9898,_0x1c9671){return db[_0x3de1('0x15')][_0x3de1('0x1c')]({'raw':_0x22de90[_0x3de1('0x17')]?_0x22de90[_0x3de1('0x17')][_0x3de1('0x18')]===undefined?!![]:![]:!![],'where':_0x22de90['options']?_0x22de90[_0x3de1('0x17')]['where']||null:null,'attributes':[['campaign',_0x3de1('0x48')],[db[_0x3de1('0x1e')]['fn']('COUNT',db['sequelize'][_0x3de1('0x1f')]('id')),_0x3de1('0x49')],[db[_0x3de1('0x1e')]['fn'](_0x3de1('0x21'),db['sequelize']['fn']('IF',db['sequelize'][_0x3de1('0x22')](_0x3de1('0x23')))),_0x3de1('0x4a')]],'group':[_0x3de1('0x2d')]})[_0x3de1('0x19')](function(_0x515a45){logger[_0x3de1('0x1a')](_0x3de1('0x47'),_0x22de90);logger['debug'](_0x3de1('0x47'),_0x22de90,JSON[_0x3de1('0xf')](_0x515a45));_0x3a9898(_0x515a45);})[_0x3de1('0x13')](function(_0x17b9f2){logger[_0x3de1('0x10')](_0x3de1('0x47'),_0x17b9f2[_0x3de1('0x11')],_0x22de90);_0x1c9671(_0x26b88f[_0x3de1('0x10')](0x1f4,_0x17b9f2[_0x3de1('0x11')]));});});};