Built motion from commit (unavailable).|2.3.4
[motion2.git] / server / api / plugin / plugin.rpc.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 _0xe863=['then','CreatePlugin','catch','util','moment','../../mysqldb','../../config/logger','rpc','jayson/promise','client','http','redis','localhost','socket.io-emitter','./plugin.socket','register','request','Plugin,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','info','Plugin','create','options'];(function(_0x3ab4e2,_0xd27979){var _0x149e36=function(_0x331644){while(--_0x331644){_0x3ab4e2['push'](_0x3ab4e2['shift']());}};_0x149e36(++_0xd27979);}(_0xe863,0x1e9));var _0x3e86=function(_0xc7d42d,_0x27afe7){_0xc7d42d=_0xc7d42d-0x0;var _0x1f5389=_0xe863[_0xc7d42d];return _0x1f5389;};'use strict';var _=require('lodash');var util=require(_0x3e86('0x0'));var moment=require(_0x3e86('0x1'));var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require('ioredis');var db=require(_0x3e86('0x2'))['db'];var utils=require('../../config/utils');var logger=require(_0x3e86('0x3'))(_0x3e86('0x4'));var config=require('../../config/environment');var jayson=require(_0x3e86('0x5'));var client=jayson[_0x3e86('0x6')][_0x3e86('0x7')]({'port':0x232a});config[_0x3e86('0x8')]=_['defaults'](config[_0x3e86('0x8')],{'host':_0x3e86('0x9'),'port':0x18eb});var socket=require(_0x3e86('0xa'))(new Redis(config['redis']));require(_0x3e86('0xb'))[_0x3e86('0xc')](socket);function respondWithRpcPromise(_0x48be12,_0x2bbb0a,_0x53bb6a){return new BPromise(function(_0x3772ad,_0xa326ae){return client[_0x3e86('0xd')](_0x48be12,_0x53bb6a)['then'](function(_0x3d9cb0){logger['info'](_0x3e86('0xe'),_0x2bbb0a,_0x3e86('0xf'));logger['debug']('Plugin,\x20%s,\x20%s,\x20%s',_0x2bbb0a,'request\x20sent',JSON[_0x3e86('0x10')](_0x3d9cb0));if(_0x3d9cb0['error']){if(_0x3d9cb0[_0x3e86('0x11')][_0x3e86('0x12')]===0x1f4){logger[_0x3e86('0x11')](_0x3e86('0xe'),_0x2bbb0a,_0x3d9cb0[_0x3e86('0x11')][_0x3e86('0x13')]);return _0xa326ae(_0x3d9cb0[_0x3e86('0x11')][_0x3e86('0x13')]);}logger[_0x3e86('0x11')](_0x3e86('0xe'),_0x2bbb0a,_0x3d9cb0[_0x3e86('0x11')][_0x3e86('0x13')]);return _0x3772ad(_0x3d9cb0['error'][_0x3e86('0x13')]);}else{logger[_0x3e86('0x14')](_0x3e86('0xe'),_0x2bbb0a,_0x3e86('0xf'));_0x3772ad(_0x3d9cb0['result'][_0x3e86('0x13')]);}})['catch'](function(_0x2a399b){logger[_0x3e86('0x11')](_0x3e86('0xe'),_0x2bbb0a,_0x2a399b);_0xa326ae(_0x2a399b);});});}exports['CreatePlugin']=function(_0x47c338){var _0x5ea47d=this;return new Promise(function(_0x298f38,_0x400f17){return db[_0x3e86('0x15')][_0x3e86('0x16')](_0x47c338['body'],{'raw':_0x47c338[_0x3e86('0x17')]?_0x47c338[_0x3e86('0x17')]['raw']===undefined?!![]:![]:!![]})[_0x3e86('0x18')](function(_0x16c704){logger['info'](_0x3e86('0x19'),_0x47c338);logger['debug']('CreatePlugin',_0x47c338,JSON[_0x3e86('0x10')](_0x16c704));_0x298f38(_0x16c704);})[_0x3e86('0x1a')](function(_0x14d68){logger[_0x3e86('0x11')]('CreatePlugin',_0x14d68[_0x3e86('0x13')],_0x47c338);_0x400f17(_0x5ea47d[_0x3e86('0x11')](0x1f4,_0x14d68[_0x3e86('0x13')]));});});};