c9760faa82be33d5c8c6c0f4f74487ab75378bdd
[motion2.git] / server / services / ami / trigger / urlforward / index.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 _0x7e0a=['then','isNil',',\x20request\x20body:\x20','%s\x20%s\x20succeeded\x20with\x20status:\x20%d\x20and\x20response:\x20%s','statusCode','catch','%s\x20%s\x20failed\x20with\x20status:\x20%d\x20and\x20error:\x20%s\x20%s','name','util','lodash','mustache','../../../../config/logger','trigger','exec','data1','render','data2','data5','number','headers','data6','parse','error','DELETE','PUT','data7','body','stack','info','format','stringify'];(function(_0x2341c6,_0x3af092){var _0x54c34d=function(_0x3091f9){while(--_0x3091f9){_0x2341c6['push'](_0x2341c6['shift']());}};_0x54c34d(++_0x3af092);}(_0x7e0a,0x100));var _0xa7e0=function(_0x24061a,_0x1c9f4d){_0x24061a=_0x24061a-0x0;var _0x82054e=_0x7e0a[_0x24061a];return _0x82054e;};'use strict';var rp=require('request-promise');var util=require(_0xa7e0('0x0'));var _=require(_0xa7e0('0x1'));var Mustache=require(_0xa7e0('0x2'));var logger=require(_0xa7e0('0x3'))(_0xa7e0('0x4'));exports[_0xa7e0('0x5')]=function(_0x246cee,_0x21c0ac){var _0x1cee01,_0x50ecc2;var _0x5bd451={'method':_0x246cee[_0xa7e0('0x6')]['toUpperCase'](),'uri':Mustache[_0xa7e0('0x7')](_0x246cee[_0xa7e0('0x8')],_0x21c0ac),'json':!![],'resolveWithFullResponse':!![],'timeout':typeof parseInt(_0x246cee[_0xa7e0('0x9')])===_0xa7e0('0xa')&&parseInt(_0x246cee['data5'])>=0x1&&parseInt(_0x246cee[_0xa7e0('0x9')])<=0xa?parseInt(_0x246cee[_0xa7e0('0x9')])*0x3e8:0x5*0x3e8};try{_0x5bd451[_0xa7e0('0xb')]=_0x246cee[_0xa7e0('0xc')]?JSON[_0xa7e0('0xd')](Mustache['render'](_0x246cee[_0xa7e0('0xc')],_0x21c0ac)):{};}catch(_0x494b91){logger[_0xa7e0('0xe')](_0x494b91['stack']);}switch(_0x246cee[_0xa7e0('0x6')]['toUpperCase']()){case'GET':case _0xa7e0('0xf'):_0x1cee01=null;_0x5bd451['qs']=_0x21c0ac;break;case'POST':case _0xa7e0('0x10'):if(_0x246cee[_0xa7e0('0x11')]){try{_0x1cee01=JSON['parse'](Mustache[_0xa7e0('0x7')](_0x246cee['data7'],_0x21c0ac));_0x5bd451[_0xa7e0('0x12')]=_0x1cee01;}catch(_0x2b3229){logger['error'](_0x2b3229[_0xa7e0('0x13')]);logger[_0xa7e0('0xe')]('body\x20has\x20been\x20passed\x20to\x20URLforward\x20in\x20a\x20wrong\x20format');}}else{_0x1cee01=_0x21c0ac;_0x5bd451[_0xa7e0('0x12')]=_0x1cee01;}break;}logger[_0xa7e0('0x14')](util[_0xa7e0('0x15')]('%s\x20%s\x20sending\x20request\x20with\x20following\x20options:\x20%s',_0x246cee[_0xa7e0('0x6')],_0x246cee[_0xa7e0('0x8')],JSON[_0xa7e0('0x16')](_0x5bd451)));rp(_0x5bd451)[_0xa7e0('0x17')](function(_0x36b8){_0x1cee01=!_[_0xa7e0('0x18')](_0x1cee01)?_0xa7e0('0x19')+_0x1cee01:'';_0x50ecc2=typeof _0x36b8[_0xa7e0('0x12')]==='object'?JSON[_0xa7e0('0x16')](_0x36b8[_0xa7e0('0x12')]):_0x36b8[_0xa7e0('0x12')];logger[_0xa7e0('0x14')](util[_0xa7e0('0x15')](_0xa7e0('0x1a'),_0x246cee[_0xa7e0('0x6')],_0x246cee[_0xa7e0('0x8')],_0x36b8[_0xa7e0('0x1b')],_0x50ecc2));})[_0xa7e0('0x1c')](function(_0x4b3459){logger[_0xa7e0('0xe')](util[_0xa7e0('0x15')](_0xa7e0('0x1d'),_0x246cee[_0xa7e0('0x6')],_0x246cee[_0xa7e0('0x8')],_0x4b3459[_0xa7e0('0x1b')],_0x4b3459[_0xa7e0('0x1e')],_0x4b3459['message']));});};