Built motion from commit 8356fca3.|2.6.19
[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 _0x3ab6=['info','next','request-promise','../../../../config/logger','consequence','replace','includes','?params=','urlOnRing','title','jsonrpc','method','login','push','params','utf8','POST','then','parse','result','channelId=','&serviceId=','&data=','stringify','[%s][TVOX]\x20Request\x20sent\x20to\x20TVox:\x20%s','catch','isObject','stop'];(function(_0x9ace37,_0x4d1159){var _0x23ecc0=function(_0xda11a){while(--_0xda11a){_0x9ace37['push'](_0x9ace37['shift']());}};_0x23ecc0(++_0x4d1159);}(_0x3ab6,0x16e));var _0x63ab=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x3ab6[_0x3dd15e];return _0x231fd0;};'use strict';var rp=require(_0x63ab('0x0'));var logger=require(_0x63ab('0x1'))('routing');var _=require('lodash');var arr=[];exports[_0x63ab('0x2')]=function(_0x5e167c,_0x21f957){return function(_0x5ed95a){var _0x5039cf=_0x21f957[0xa];var _0x4afded=_0x21f957[0xb];var _0x508d3b=_0x21f957[0xc];var _0x46adc2=_0x21f957[0xd];var _0x1f3088=_0x21f957[0xe];var _0x2d7c74=_0x21f957[0xf][_0x63ab('0x3')](/\n/g,'\x20-\x20');var _0x58eba6=_0x21f957[0x10]['replace'](/\n/g,'\x20');if(!arr[_0x63ab('0x4')](_0x4afded)){arr['push'](_0x4afded);var _0x14ccc8=_0x21f957[0x3];var _0x2a5df1=_0x21f957[0x4];var _0x2ca658=_0x21f957[0x1];var _0x5139e1=_0x21f957[0x0];var _0x2765ed={};_0x2765ed['urlOnAnswer']=_0x21f957[0x8]+_0x63ab('0x5')+_0x508d3b+'|'+_0x5039cf+'|'+_0x46adc2+'|'+_0x4afded+'|'+_0x1f3088;_0x2765ed[_0x63ab('0x6')]=_0x21f957[0x7]+'?params='+_0x508d3b+'|'+_0x5039cf+'|'+_0x46adc2+'|'+_0x4afded+'|'+_0x1f3088+'|'+_0x2d7c74+'|'+_0x58eba6;_0x2765ed[_0x63ab('0x7')]=_0x21f957[0x9];var _0x3247e6={};_0x3247e6[_0x63ab('0x8')]='2.0';_0x3247e6[_0x63ab('0x9')]=_0x63ab('0xa');var _0x5d3e98=[];_0x5d3e98[_0x63ab('0xb')](_0x21f957[0x2]);_0x5d3e98[_0x63ab('0xb')](_0x21f957[0x5]);_0x5d3e98[_0x63ab('0xb')](_0x21f957[0x6]);_0x3247e6[_0x63ab('0xc')]=_0x5d3e98;_0x3247e6['id']=0x1;var _0x1e938d=JSON['stringify'](_0x3247e6);var _0x5f090f={'encoding':_0x63ab('0xd'),'method':_0x63ab('0xe'),'timeout':0x2710,'url':_0x14ccc8,'headers':{'Content-Type':'application/json-rpc'},'body':_0x1e938d};return rp(_0x5f090f)[_0x63ab('0xf')](function(_0x445477){const _0x325647=JSON[_0x63ab('0x10')](_0x445477);if(!_0x325647[_0x63ab('0x11')]['logged']){throw new Error('Unable\x20to\x20login\x20with\x20TVox\x20application');}var _0x4cd5b2=_0x4afded;var _0x4f46e4=_0x63ab('0x12')+_0x2ca658+_0x63ab('0x13')+_0x5139e1+'&sessionId='+_0x4cd5b2+_0x63ab('0x14')+JSON[_0x63ab('0x15')](_0x2765ed);var _0x362a7e=_0x2a5df1+'?'+_0x4f46e4;return rp(_0x362a7e);})[_0x63ab('0xf')](function(_0x1a1de4){logger['info'](_0x63ab('0x16'),_0x5e167c,_0x1a1de4);_0x5ed95a['stop']();})[_0x63ab('0x17')](function(_0x2e7d7a){logger['error']('[%s][TVOX]\x20%s',_0x5e167c,_[_0x63ab('0x18')](_0x2e7d7a)?JSON[_0x63ab('0x15')](_0x2e7d7a):_0x2e7d7a);_0x5ed95a[_0x63ab('0x19')]();});}else{logger[_0x63ab('0x1a')]('[%s][TVOX]\x20Application\x20already\x20executed\x20for\x20the\x20current\x20session,\x20force\x20next',_0x5e167c);_0x5ed95a[_0x63ab('0x1b')]();}};};