1b0777db54f00efaee9974190e5f8f3adbad2fb9
[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 _0xfa91=['rpc','jayson/promise','client','http','redis','defaults','localhost','socket.io-emitter','./plugin.socket','register','request','info','Plugin,\x20%s,\x20%s','debug','Plugin,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','message','result','catch','CreatePlugin','Plugin','create','body','options','then','util','bluebird','ioredis','../../mysqldb','../../config/utils'];(function(_0x5ac1db,_0x1139ef){var _0x407801=function(_0x3ad4fb){while(--_0x3ad4fb){_0x5ac1db['push'](_0x5ac1db['shift']());}};_0x407801(++_0x1139ef);}(_0xfa91,0x11b));var _0x1fa9=function(_0x4f9b18,_0x2cb5ca){_0x4f9b18=_0x4f9b18-0x0;var _0x29f20c=_0xfa91[_0x4f9b18];return _0x29f20c;};'use strict';var _=require('lodash');var util=require(_0x1fa9('0x0'));var moment=require('moment');var BPromise=require(_0x1fa9('0x1'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x1fa9('0x2'));var db=require(_0x1fa9('0x3'))['db'];var utils=require(_0x1fa9('0x4'));var logger=require('../../config/logger')(_0x1fa9('0x5'));var config=require('../../config/environment');var jayson=require(_0x1fa9('0x6'));var client=jayson[_0x1fa9('0x7')][_0x1fa9('0x8')]({'port':0x232a});config[_0x1fa9('0x9')]=_[_0x1fa9('0xa')](config['redis'],{'host':_0x1fa9('0xb'),'port':0x18eb});var socket=require(_0x1fa9('0xc'))(new Redis(config[_0x1fa9('0x9')]));require(_0x1fa9('0xd'))[_0x1fa9('0xe')](socket);function respondWithRpcPromise(_0xddc687,_0x14f938,_0x4a7c75){return new BPromise(function(_0x1a4d04,_0x1ff396){return client[_0x1fa9('0xf')](_0xddc687,_0x4a7c75)['then'](function(_0x43d825){logger[_0x1fa9('0x10')](_0x1fa9('0x11'),_0x14f938,'request\x20sent');logger[_0x1fa9('0x12')](_0x1fa9('0x13'),_0x14f938,_0x1fa9('0x14'),JSON[_0x1fa9('0x15')](_0x43d825));if(_0x43d825[_0x1fa9('0x16')]){if(_0x43d825[_0x1fa9('0x16')]['code']===0x1f4){logger[_0x1fa9('0x16')](_0x1fa9('0x11'),_0x14f938,_0x43d825[_0x1fa9('0x16')][_0x1fa9('0x17')]);return _0x1ff396(_0x43d825[_0x1fa9('0x16')][_0x1fa9('0x17')]);}logger[_0x1fa9('0x16')](_0x1fa9('0x11'),_0x14f938,_0x43d825[_0x1fa9('0x16')][_0x1fa9('0x17')]);return _0x1a4d04(_0x43d825['error'][_0x1fa9('0x17')]);}else{logger[_0x1fa9('0x10')]('Plugin,\x20%s,\x20%s',_0x14f938,_0x1fa9('0x14'));_0x1a4d04(_0x43d825[_0x1fa9('0x18')][_0x1fa9('0x17')]);}})[_0x1fa9('0x19')](function(_0x30bb8f){logger['error'](_0x1fa9('0x11'),_0x14f938,_0x30bb8f);_0x1ff396(_0x30bb8f);});});}exports[_0x1fa9('0x1a')]=function(_0x3068f9){var _0x124172=this;return new Promise(function(_0x51f805,_0x1a1c1d){return db[_0x1fa9('0x1b')][_0x1fa9('0x1c')](_0x3068f9[_0x1fa9('0x1d')],{'raw':_0x3068f9[_0x1fa9('0x1e')]?_0x3068f9[_0x1fa9('0x1e')]['raw']===undefined?!![]:![]:!![]})[_0x1fa9('0x1f')](function(_0xea8351){logger[_0x1fa9('0x10')](_0x1fa9('0x1a'),_0x3068f9);logger[_0x1fa9('0x12')](_0x1fa9('0x1a'),_0x3068f9,JSON[_0x1fa9('0x15')](_0xea8351));_0x51f805(_0xea8351);})[_0x1fa9('0x19')](function(_0x2413fe){logger[_0x1fa9('0x16')](_0x1fa9('0x1a'),_0x2413fe['message'],_0x3068f9);_0x1a1c1d(_0x124172[_0x1fa9('0x16')](0x1f4,_0x2413fe[_0x1fa9('0x17')]));});});};