Built motion from commit 092f8824.|2.5.49
[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 _0xf250=['error','statusCode','message','request-promise','mustache','../../../../config/logger','trigger','exec','data1','toUpperCase','render','data2','data5','number','headers','parse','data6','stack','DELETE','PUT','data7','body','body\x20has\x20been\x20passed\x20to\x20URLforward\x20in\x20a\x20wrong\x20format','%s\x20%s\x20sending\x20request\x20with\x20following\x20options:\x20%s','stringify','then','isNil',',\x20request\x20body:\x20','object','format','%s\x20%s\x20succeeded\x20with\x20status:\x20%d\x20and\x20response:\x20%s','catch'];(function(_0x3451a5,_0x461fd6){var _0x25807a=function(_0x201f70){while(--_0x201f70){_0x3451a5['push'](_0x3451a5['shift']());}};_0x25807a(++_0x461fd6);}(_0xf250,0x83));var _0x0f25=function(_0x25d386,_0x108d0d){_0x25d386=_0x25d386-0x0;var _0x857f4a=_0xf250[_0x25d386];return _0x857f4a;};'use strict';var rp=require(_0x0f25('0x0'));var util=require('util');var _=require('lodash');var Mustache=require(_0x0f25('0x1'));var logger=require(_0x0f25('0x2'))(_0x0f25('0x3'));exports[_0x0f25('0x4')]=function(_0x138e27,_0x494507){var _0x45e7ac,_0x5e0bf1;var _0x407286={'method':_0x138e27[_0x0f25('0x5')][_0x0f25('0x6')](),'uri':Mustache[_0x0f25('0x7')](_0x138e27[_0x0f25('0x8')],_0x494507),'json':!![],'resolveWithFullResponse':!![],'timeout':typeof parseInt(_0x138e27[_0x0f25('0x9')])===_0x0f25('0xa')&&parseInt(_0x138e27['data5'])>=0x1&&parseInt(_0x138e27[_0x0f25('0x9')])<=0xa?parseInt(_0x138e27['data5'])*0x3e8:0x5*0x3e8};try{_0x407286[_0x0f25('0xb')]=_0x138e27['data6']?JSON[_0x0f25('0xc')](Mustache[_0x0f25('0x7')](_0x138e27[_0x0f25('0xd')],_0x494507)):{};}catch(_0x1d2b1f){logger['error'](_0x1d2b1f[_0x0f25('0xe')]);}switch(_0x138e27[_0x0f25('0x5')]['toUpperCase']()){case'GET':case _0x0f25('0xf'):_0x45e7ac=null;_0x407286['qs']=_0x494507;break;case'POST':case _0x0f25('0x10'):if(_0x138e27[_0x0f25('0x11')]){try{_0x45e7ac=JSON[_0x0f25('0xc')](Mustache[_0x0f25('0x7')](_0x138e27[_0x0f25('0x11')],_0x494507));_0x407286[_0x0f25('0x12')]=_0x45e7ac;}catch(_0x371d6e){logger['error'](_0x371d6e['stack']);logger['error'](_0x0f25('0x13'));}}else{_0x45e7ac=_0x494507;_0x407286[_0x0f25('0x12')]=_0x45e7ac;}break;}logger['info'](util['format'](_0x0f25('0x14'),_0x138e27[_0x0f25('0x5')],_0x138e27['data2'],JSON[_0x0f25('0x15')](_0x407286)));rp(_0x407286)[_0x0f25('0x16')](function(_0x5f13ad){_0x45e7ac=!_[_0x0f25('0x17')](_0x45e7ac)?_0x0f25('0x18')+_0x45e7ac:'';_0x5e0bf1=typeof _0x5f13ad[_0x0f25('0x12')]===_0x0f25('0x19')?JSON['stringify'](_0x5f13ad[_0x0f25('0x12')]):_0x5f13ad[_0x0f25('0x12')];logger['info'](util[_0x0f25('0x1a')](_0x0f25('0x1b'),_0x138e27[_0x0f25('0x5')],_0x138e27['data2'],_0x5f13ad['statusCode'],_0x5e0bf1));})[_0x0f25('0x1c')](function(_0x39710a){logger[_0x0f25('0x1d')](util['format']('%s\x20%s\x20failed\x20with\x20status:\x20%d\x20and\x20error:\x20%s\x20%s',_0x138e27[_0x0f25('0x5')],_0x138e27[_0x0f25('0x8')],_0x39710a[_0x0f25('0x1e')],_0x39710a['name'],_0x39710a[_0x0f25('0x1f')]));});};