970cefb86954503f50bd3ac54ae6bb693a2fbe21
[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 _0x005b=['urlOnAnswer','?params=','jsonrpc','2.0','method','login','application/json-rpc','then','parse','result','logged','Unable\x20to\x20login\x20with\x20TVox\x20application','&serviceId=','&sessionId=','&data=','stringify','info','[%s][TVOX]\x20Request\x20sent\x20to\x20TVox:\x20%s','stop','catch','error','isObject','../../../../config/logger','routing','lodash','consequence','replace','\x20-\x20','push'];(function(_0x2a3900,_0x10cbc6){var _0x269629=function(_0x5839c0){while(--_0x5839c0){_0x2a3900['push'](_0x2a3900['shift']());}};_0x269629(++_0x10cbc6);}(_0x005b,0xc4));var _0xb005=function(_0x5c5f0b,_0xc0935){_0x5c5f0b=_0x5c5f0b-0x0;var _0x45603a=_0x005b[_0x5c5f0b];return _0x45603a;};'use strict';var rp=require('request-promise');var logger=require(_0xb005('0x0'))(_0xb005('0x1'));var _=require(_0xb005('0x2'));var arr=[];exports[_0xb005('0x3')]=function(_0x52e2ec,_0x4d9944){return function(_0x50a446){var _0x39cd9b=_0x4d9944[0xa];var _0x23ace6=_0x4d9944[0xb];var _0xdf193=_0x4d9944[0xc];var _0x2c02bc=_0x4d9944[0xd];var _0x3dc521=_0x4d9944[0xe];var _0x56c91b=_0x4d9944[0xf][_0xb005('0x4')](/\n/g,_0xb005('0x5'));var _0x2938f1=_0x4d9944[0x10][_0xb005('0x4')](/\n/g,'\x20');if(!arr['includes'](_0x23ace6)){arr[_0xb005('0x6')](_0x23ace6);var _0x4d96f8=_0x4d9944[0x3];var _0x349bba=_0x4d9944[0x4];var _0x523d01=_0x4d9944[0x1];var _0x2db78b=_0x4d9944[0x0];var _0x1df8fb={};_0x1df8fb[_0xb005('0x7')]=_0x4d9944[0x8]+_0xb005('0x8')+_0xdf193+'|'+_0x39cd9b+'|'+_0x2c02bc+'|'+_0x23ace6+'|'+_0x3dc521;_0x1df8fb['urlOnRing']=_0x4d9944[0x7]+'?params='+_0xdf193+'|'+_0x39cd9b+'|'+_0x2c02bc+'|'+_0x23ace6+'|'+_0x3dc521+'|'+_0x56c91b+'|'+_0x2938f1;_0x1df8fb['title']=_0x4d9944[0x9];var _0x17fd60={};_0x17fd60[_0xb005('0x9')]=_0xb005('0xa');_0x17fd60[_0xb005('0xb')]=_0xb005('0xc');var _0x3ff3a9=[];_0x3ff3a9['push'](_0x4d9944[0x2]);_0x3ff3a9[_0xb005('0x6')](_0x4d9944[0x5]);_0x3ff3a9[_0xb005('0x6')](_0x4d9944[0x6]);_0x17fd60['params']=_0x3ff3a9;_0x17fd60['id']=0x1;var _0xdd41c5=JSON['stringify'](_0x17fd60);var _0x4ca284={'encoding':'utf8','method':'POST','timeout':0x2710,'url':_0x4d96f8,'headers':{'Content-Type':_0xb005('0xd')},'body':_0xdd41c5};return rp(_0x4ca284)[_0xb005('0xe')](function(_0x5ababd){const _0x54dbdc=JSON[_0xb005('0xf')](_0x5ababd);if(!_0x54dbdc[_0xb005('0x10')][_0xb005('0x11')]){throw new Error(_0xb005('0x12'));}var _0x111ec7=_0x23ace6;var _0x458903='channelId='+_0x523d01+_0xb005('0x13')+_0x2db78b+_0xb005('0x14')+_0x111ec7+_0xb005('0x15')+JSON[_0xb005('0x16')](_0x1df8fb);var _0x567651=_0x349bba+'?'+_0x458903;return rp(_0x567651);})['then'](function(_0x4a1393){logger[_0xb005('0x17')](_0xb005('0x18'),_0x52e2ec,_0x4a1393);_0x50a446[_0xb005('0x19')]();})[_0xb005('0x1a')](function(_0x1d5312){logger[_0xb005('0x1b')]('[%s][TVOX]\x20%s',_0x52e2ec,_[_0xb005('0x1c')](_0x1d5312)?JSON[_0xb005('0x16')](_0x1d5312):_0x1d5312);_0x50a446[_0xb005('0x19')]();});}else{logger[_0xb005('0x17')]('[%s][TVOX]\x20Application\x20already\x20executed\x20for\x20the\x20current\x20session,\x20force\x20next',_0x52e2ec);_0x50a446['next']();}};};