5bd385795bf2e7cbc6fe4a5e0b46f151f090b603
[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 _0xba1b=['then','info','Plugin,\x20%s,\x20%s','request\x20sent','debug','Plugin,\x20%s,\x20%s,\x20%s','stringify','error','message','result','catch','CreatePlugin','Plugin','create','body','options','raw','util','moment','ioredis','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','socket.io-emitter','./plugin.socket','register','request'];(function(_0x23bcf2,_0x1c6764){var _0x16dff4=function(_0x585464){while(--_0x585464){_0x23bcf2['push'](_0x23bcf2['shift']());}};_0x16dff4(++_0x1c6764);}(_0xba1b,0x1d1));var _0xbba1=function(_0x51f64a,_0x14307e){_0x51f64a=_0x51f64a-0x0;var _0x41be2b=_0xba1b[_0x51f64a];return _0x41be2b;};'use strict';var _=require('lodash');var util=require(_0xbba1('0x0'));var moment=require(_0xbba1('0x1'));var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require(_0xbba1('0x2'));var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require('../../config/logger')(_0xbba1('0x3'));var config=require(_0xbba1('0x4'));var jayson=require(_0xbba1('0x5'));var client=jayson[_0xbba1('0x6')][_0xbba1('0x7')]({'port':0x232a});config[_0xbba1('0x8')]=_[_0xbba1('0x9')](config[_0xbba1('0x8')],{'host':_0xbba1('0xa'),'port':0x18eb});var socket=require(_0xbba1('0xb'))(new Redis(config[_0xbba1('0x8')]));require(_0xbba1('0xc'))[_0xbba1('0xd')](socket);function respondWithRpcPromise(_0x20d0cf,_0x1a8e81,_0x6ce23a){return new BPromise(function(_0x4dbb4a,_0x4227d4){return client[_0xbba1('0xe')](_0x20d0cf,_0x6ce23a)[_0xbba1('0xf')](function(_0x32bfaa){logger[_0xbba1('0x10')](_0xbba1('0x11'),_0x1a8e81,_0xbba1('0x12'));logger[_0xbba1('0x13')](_0xbba1('0x14'),_0x1a8e81,_0xbba1('0x12'),JSON[_0xbba1('0x15')](_0x32bfaa));if(_0x32bfaa[_0xbba1('0x16')]){if(_0x32bfaa[_0xbba1('0x16')]['code']===0x1f4){logger[_0xbba1('0x16')](_0xbba1('0x11'),_0x1a8e81,_0x32bfaa['error']['message']);return _0x4227d4(_0x32bfaa[_0xbba1('0x16')][_0xbba1('0x17')]);}logger[_0xbba1('0x16')](_0xbba1('0x11'),_0x1a8e81,_0x32bfaa[_0xbba1('0x16')][_0xbba1('0x17')]);return _0x4dbb4a(_0x32bfaa[_0xbba1('0x16')]['message']);}else{logger[_0xbba1('0x10')]('Plugin,\x20%s,\x20%s',_0x1a8e81,_0xbba1('0x12'));_0x4dbb4a(_0x32bfaa[_0xbba1('0x18')][_0xbba1('0x17')]);}})[_0xbba1('0x19')](function(_0x57b5a2){logger[_0xbba1('0x16')]('Plugin,\x20%s,\x20%s',_0x1a8e81,_0x57b5a2);_0x4227d4(_0x57b5a2);});});}exports[_0xbba1('0x1a')]=function(_0x4527b9){var _0x8183ac=this;return new Promise(function(_0x194725,_0xda95d3){return db[_0xbba1('0x1b')][_0xbba1('0x1c')](_0x4527b9[_0xbba1('0x1d')],{'raw':_0x4527b9[_0xbba1('0x1e')]?_0x4527b9[_0xbba1('0x1e')][_0xbba1('0x1f')]===undefined?!![]:![]:!![]})[_0xbba1('0xf')](function(_0x29115c){logger[_0xbba1('0x10')](_0xbba1('0x1a'),_0x4527b9);logger[_0xbba1('0x13')](_0xbba1('0x1a'),_0x4527b9,JSON[_0xbba1('0x15')](_0x29115c));_0x194725(_0x29115c);})['catch'](function(_0x2853c4){logger[_0xbba1('0x16')]('CreatePlugin',_0x2853c4['message'],_0x4527b9);_0xda95d3(_0x8183ac[_0xbba1('0x16')](0x1f4,_0x2853c4[_0xbba1('0x17')]));});});};