a1ed8dd80ff1578319342ecacb5cd4422f0083d0
[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 _0x3993=['PUT','data7','render','body','stack','body\x20has\x20been\x20passed\x20to\x20URLforward\x20in\x20a\x20wrong\x20format','format','%s\x20%s\x20sending\x20request\x20with\x20following\x20options:\x20%s','stringify','then','isNil','object','statusCode','%s\x20%s\x20failed\x20with\x20status:\x20%d\x20and\x20error:\x20%s\x20%s','message','request-promise','lodash','trigger','exec','data1','toUpperCase','data2','data5','number','headers','data6','parse','error','GET','DELETE','POST'];(function(_0x3844f4,_0x337fe4){var _0x402bdd=function(_0x4fc0bd){while(--_0x4fc0bd){_0x3844f4['push'](_0x3844f4['shift']());}};_0x402bdd(++_0x337fe4);}(_0x3993,0xe8));var _0x3399=function(_0x175429,_0x34f0d2){_0x175429=_0x175429-0x0;var _0x2d24da=_0x3993[_0x175429];return _0x2d24da;};'use strict';var rp=require(_0x3399('0x0'));var util=require('util');var _=require(_0x3399('0x1'));var Mustache=require('mustache');var logger=require('../../../../config/logger')(_0x3399('0x2'));exports[_0x3399('0x3')]=function(_0x2ff398,_0x5a5a){var _0x36e144,_0x40e89c;var _0x4af348={'method':_0x2ff398[_0x3399('0x4')][_0x3399('0x5')](),'uri':Mustache['render'](_0x2ff398[_0x3399('0x6')],_0x5a5a),'json':!![],'resolveWithFullResponse':!![],'timeout':typeof parseInt(_0x2ff398[_0x3399('0x7')])===_0x3399('0x8')&&parseInt(_0x2ff398[_0x3399('0x7')])>=0x1&&parseInt(_0x2ff398[_0x3399('0x7')])<=0xa?parseInt(_0x2ff398['data5'])*0x3e8:0x5*0x3e8};try{_0x4af348[_0x3399('0x9')]=_0x2ff398[_0x3399('0xa')]?JSON[_0x3399('0xb')](Mustache['render'](_0x2ff398[_0x3399('0xa')],_0x5a5a)):{};}catch(_0x186935){logger[_0x3399('0xc')](_0x186935['stack']);}switch(_0x2ff398['data1']['toUpperCase']()){case _0x3399('0xd'):case _0x3399('0xe'):_0x36e144=null;_0x4af348['qs']=_0x5a5a;break;case _0x3399('0xf'):case _0x3399('0x10'):if(_0x2ff398[_0x3399('0x11')]){try{_0x36e144=JSON[_0x3399('0xb')](Mustache[_0x3399('0x12')](_0x2ff398[_0x3399('0x11')],_0x5a5a));_0x4af348[_0x3399('0x13')]=_0x36e144;}catch(_0x295d07){logger[_0x3399('0xc')](_0x295d07[_0x3399('0x14')]);logger[_0x3399('0xc')](_0x3399('0x15'));}}else{_0x36e144=_0x5a5a;_0x4af348[_0x3399('0x13')]=_0x36e144;}break;}logger['info'](util[_0x3399('0x16')](_0x3399('0x17'),_0x2ff398[_0x3399('0x4')],_0x2ff398[_0x3399('0x6')],JSON[_0x3399('0x18')](_0x4af348)));rp(_0x4af348)[_0x3399('0x19')](function(_0x177b5d){_0x36e144=!_[_0x3399('0x1a')](_0x36e144)?',\x20request\x20body:\x20'+_0x36e144:'';_0x40e89c=typeof _0x177b5d[_0x3399('0x13')]===_0x3399('0x1b')?JSON['stringify'](_0x177b5d[_0x3399('0x13')]):_0x177b5d['body'];logger['info'](util[_0x3399('0x16')]('%s\x20%s\x20succeeded\x20with\x20status:\x20%d\x20and\x20response:\x20%s',_0x2ff398[_0x3399('0x4')],_0x2ff398[_0x3399('0x6')],_0x177b5d[_0x3399('0x1c')],_0x40e89c));})['catch'](function(_0x372f4c){logger['error'](util[_0x3399('0x16')](_0x3399('0x1d'),_0x2ff398[_0x3399('0x4')],_0x2ff398[_0x3399('0x6')],_0x372f4c['statusCode'],_0x372f4c['name'],_0x372f4c[_0x3399('0x1e')]));});};