da43d55eed0ac9e92a6506a4beff73761c9baf06
[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 _0xe98e=['Plugin,\x20%s,\x20%s','debug','Plugin,\x20%s,\x20%s,\x20%s','request\x20sent','code','error','message','result','catch','CreatePlugin','create','body','options','raw','stringify','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','rpc','jayson/promise','client','http','redis','defaults','localhost','socket.io-emitter','./plugin.socket','register','request','then','info'];(function(_0x2b4aba,_0x206679){var _0x187d65=function(_0x36d71f){while(--_0x36d71f){_0x2b4aba['push'](_0x2b4aba['shift']());}};_0x187d65(++_0x206679);}(_0xe98e,0x97));var _0xee98=function(_0x17d9e3,_0x1f969c){_0x17d9e3=_0x17d9e3-0x0;var _0x14192d=_0xe98e[_0x17d9e3];return _0x14192d;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0xee98('0x0'));var BPromise=require(_0xee98('0x1'));var rs=require(_0xee98('0x2'));var fs=require('fs');var Redis=require(_0xee98('0x3'));var db=require(_0xee98('0x4'))['db'];var utils=require(_0xee98('0x5'));var logger=require('../../config/logger')(_0xee98('0x6'));var config=require('../../config/environment');var jayson=require(_0xee98('0x7'));var client=jayson[_0xee98('0x8')][_0xee98('0x9')]({'port':0x232a});config[_0xee98('0xa')]=_[_0xee98('0xb')](config[_0xee98('0xa')],{'host':_0xee98('0xc'),'port':0x18eb});var socket=require(_0xee98('0xd'))(new Redis(config['redis']));require(_0xee98('0xe'))[_0xee98('0xf')](socket);function respondWithRpcPromise(_0x4427ee,_0x3b4c8c,_0x3bbe68){return new BPromise(function(_0x57cf99,_0x1a6205){return client[_0xee98('0x10')](_0x4427ee,_0x3bbe68)[_0xee98('0x11')](function(_0x105d86){logger[_0xee98('0x12')](_0xee98('0x13'),_0x3b4c8c,'request\x20sent');logger[_0xee98('0x14')](_0xee98('0x15'),_0x3b4c8c,_0xee98('0x16'),JSON['stringify'](_0x105d86));if(_0x105d86['error']){if(_0x105d86['error'][_0xee98('0x17')]===0x1f4){logger['error'](_0xee98('0x13'),_0x3b4c8c,_0x105d86[_0xee98('0x18')][_0xee98('0x19')]);return _0x1a6205(_0x105d86['error'][_0xee98('0x19')]);}logger['error'](_0xee98('0x13'),_0x3b4c8c,_0x105d86[_0xee98('0x18')]['message']);return _0x57cf99(_0x105d86[_0xee98('0x18')][_0xee98('0x19')]);}else{logger[_0xee98('0x12')]('Plugin,\x20%s,\x20%s',_0x3b4c8c,'request\x20sent');_0x57cf99(_0x105d86[_0xee98('0x1a')][_0xee98('0x19')]);}})[_0xee98('0x1b')](function(_0x1e2b91){logger[_0xee98('0x18')](_0xee98('0x13'),_0x3b4c8c,_0x1e2b91);_0x1a6205(_0x1e2b91);});});}exports[_0xee98('0x1c')]=function(_0x2d6f65){var _0x30ec4a=this;return new Promise(function(_0x3fb581,_0x5e93e8){return db['Plugin'][_0xee98('0x1d')](_0x2d6f65[_0xee98('0x1e')],{'raw':_0x2d6f65[_0xee98('0x1f')]?_0x2d6f65[_0xee98('0x1f')][_0xee98('0x20')]===undefined?!![]:![]:!![]})[_0xee98('0x11')](function(_0x372979){logger[_0xee98('0x12')]('CreatePlugin',_0x2d6f65);logger[_0xee98('0x14')](_0xee98('0x1c'),_0x2d6f65,JSON[_0xee98('0x21')](_0x372979));_0x3fb581(_0x372979);})['catch'](function(_0x5da53d){logger[_0xee98('0x18')]('CreatePlugin',_0x5da53d['message'],_0x2d6f65);_0x5e93e8(_0x30ec4a[_0xee98('0x18')](0x1f4,_0x5da53d[_0xee98('0x19')]));});});};