e33e84eabf47466f2489e5d4a432944ce485d21d
[motion2.git] / server / services / routing / server / applications / tvox.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 _0xe434=['logged','&serviceId=','&data=','then','info','[%s][TVOX]\x20Request\x20sent\x20to\x20TVox:\x20%s','stop','catch','error','[%s][TVOX]\x20%s','next','request-promise','../../../../config/logger','routing','lodash','consequence','replace','\x20-\x20','includes','push','urlOnAnswer','?params=','title','jsonrpc','2.0','method','login','stringify','POST','result'];(function(_0x3d7d68,_0x2e5967){var _0x43c8f4=function(_0x49f5cc){while(--_0x49f5cc){_0x3d7d68['push'](_0x3d7d68['shift']());}};_0x43c8f4(++_0x2e5967);}(_0xe434,0x191));var _0x4e43=function(_0x46aff0,_0x122890){_0x46aff0=_0x46aff0-0x0;var _0x9d78cf=_0xe434[_0x46aff0];return _0x9d78cf;};'use strict';var rp=require(_0x4e43('0x0'));var logger=require(_0x4e43('0x1'))(_0x4e43('0x2'));var _=require(_0x4e43('0x3'));var arr=[];exports[_0x4e43('0x4')]=function(_0x5415fa,_0x1e43e4){return function(_0x124373){var _0x34b2af=_0x1e43e4[0xa];var _0x56f2f3=_0x1e43e4[0xb];var _0x131154=_0x1e43e4[0xc];var _0x334c7c=_0x1e43e4[0xd];var _0x3c264e=_0x1e43e4[0xe];var _0xeadf3b=_0x1e43e4[0xf][_0x4e43('0x5')](/\n/g,_0x4e43('0x6'));var _0x2acdf4=_0x1e43e4[0x10]['replace'](/\n/g,'\x20');if(!arr[_0x4e43('0x7')](_0x56f2f3)){arr[_0x4e43('0x8')](_0x56f2f3);var _0xe3d87=_0x1e43e4[0x3];var _0x134f2e=_0x1e43e4[0x4];var _0x2665f7=_0x1e43e4[0x1];var _0x567764=_0x1e43e4[0x0];var _0x5a675e={};_0x5a675e[_0x4e43('0x9')]=_0x1e43e4[0x8]+_0x4e43('0xa')+_0x131154+'|'+_0x34b2af+'|'+_0x334c7c+'|'+_0x56f2f3+'|'+_0x3c264e;_0x5a675e['urlOnRing']=_0x1e43e4[0x7]+'?params='+_0x131154+'|'+_0x34b2af+'|'+_0x334c7c+'|'+_0x56f2f3+'|'+_0x3c264e+'|'+_0xeadf3b+'|'+_0x2acdf4;_0x5a675e[_0x4e43('0xb')]=_0x1e43e4[0x9];var _0x51f7ca={};_0x51f7ca[_0x4e43('0xc')]=_0x4e43('0xd');_0x51f7ca[_0x4e43('0xe')]=_0x4e43('0xf');var _0x5ecc6b=[];_0x5ecc6b['push'](_0x1e43e4[0x2]);_0x5ecc6b[_0x4e43('0x8')](_0x1e43e4[0x5]);_0x5ecc6b[_0x4e43('0x8')](_0x1e43e4[0x6]);_0x51f7ca['params']=_0x5ecc6b;_0x51f7ca['id']=0x1;var _0x1fc059=JSON[_0x4e43('0x10')](_0x51f7ca);var _0x537e83={'encoding':'utf8','method':_0x4e43('0x11'),'timeout':0x2710,'url':_0xe3d87,'headers':{'Content-Type':'application/json-rpc'},'body':_0x1fc059};return rp(_0x537e83)['then'](function(_0x1c4a06){const _0x4a4674=JSON['parse'](_0x1c4a06);if(!_0x4a4674[_0x4e43('0x12')][_0x4e43('0x13')]){throw new Error('Unable\x20to\x20login\x20with\x20TVox\x20application');}var _0x1a7b4e=_0x56f2f3;var _0x3f5a75='channelId='+_0x2665f7+_0x4e43('0x14')+_0x567764+'&sessionId='+_0x1a7b4e+_0x4e43('0x15')+JSON['stringify'](_0x5a675e);var _0x341dd6=_0x134f2e+'?'+_0x3f5a75;return rp(_0x341dd6);})[_0x4e43('0x16')](function(_0x26e8cc){logger[_0x4e43('0x17')](_0x4e43('0x18'),_0x5415fa,_0x26e8cc);_0x124373[_0x4e43('0x19')]();})[_0x4e43('0x1a')](function(_0x4fd76b){logger[_0x4e43('0x1b')](_0x4e43('0x1c'),_0x5415fa,_['isObject'](_0x4fd76b)?JSON[_0x4e43('0x10')](_0x4fd76b):_0x4fd76b);_0x124373[_0x4e43('0x19')]();});}else{logger[_0x4e43('0x17')]('[%s][TVOX]\x20Application\x20already\x20executed\x20for\x20the\x20current\x20session,\x20force\x20next',_0x5415fa);_0x124373[_0x4e43('0x1d')]();}};};