3cc3f4d400986c557e6c49cff25b461daafd8666
[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 _0x2e28=['register','request','Plugin,\x20%s,\x20%s','request\x20sent','debug','Plugin,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','result','catch','CreatePlugin','Plugin','create','body','raw','then','lodash','util','bluebird','randomstring','../../config/logger','rpc','../../config/environment','jayson/promise','client','redis','localhost','socket.io-emitter','./plugin.socket'];(function(_0x13b8f3,_0x442821){var _0x1a6d06=function(_0x5126f2){while(--_0x5126f2){_0x13b8f3['push'](_0x13b8f3['shift']());}};_0x1a6d06(++_0x442821);}(_0x2e28,0x1f3));var _0x82e2=function(_0x2d607b,_0x455193){_0x2d607b=_0x2d607b-0x0;var _0x5be31d=_0x2e28[_0x2d607b];return _0x5be31d;};'use strict';var _=require(_0x82e2('0x0'));var util=require(_0x82e2('0x1'));var moment=require('moment');var BPromise=require(_0x82e2('0x2'));var rs=require(_0x82e2('0x3'));var fs=require('fs');var Redis=require('ioredis');var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require(_0x82e2('0x4'))(_0x82e2('0x5'));var config=require(_0x82e2('0x6'));var jayson=require(_0x82e2('0x7'));var client=jayson[_0x82e2('0x8')]['http']({'port':0x232a});config[_0x82e2('0x9')]=_['defaults'](config[_0x82e2('0x9')],{'host':_0x82e2('0xa'),'port':0x18eb});var socket=require(_0x82e2('0xb'))(new Redis(config[_0x82e2('0x9')]));require(_0x82e2('0xc'))[_0x82e2('0xd')](socket);function respondWithRpcPromise(_0x112b8f,_0x2fecf9,_0x573e97){return new BPromise(function(_0x321efb,_0x1b6efa){return client[_0x82e2('0xe')](_0x112b8f,_0x573e97)['then'](function(_0x1b1f4e){logger['info'](_0x82e2('0xf'),_0x2fecf9,_0x82e2('0x10'));logger[_0x82e2('0x11')](_0x82e2('0x12'),_0x2fecf9,'request\x20sent',JSON[_0x82e2('0x13')](_0x1b1f4e));if(_0x1b1f4e[_0x82e2('0x14')]){if(_0x1b1f4e[_0x82e2('0x14')][_0x82e2('0x15')]===0x1f4){logger['error'](_0x82e2('0xf'),_0x2fecf9,_0x1b1f4e['error'][_0x82e2('0x16')]);return _0x1b6efa(_0x1b1f4e[_0x82e2('0x14')]['message']);}logger['error'](_0x82e2('0xf'),_0x2fecf9,_0x1b1f4e[_0x82e2('0x14')]['message']);return _0x321efb(_0x1b1f4e[_0x82e2('0x14')][_0x82e2('0x16')]);}else{logger[_0x82e2('0x17')](_0x82e2('0xf'),_0x2fecf9,_0x82e2('0x10'));_0x321efb(_0x1b1f4e[_0x82e2('0x18')][_0x82e2('0x16')]);}})[_0x82e2('0x19')](function(_0x5bb66d){logger[_0x82e2('0x14')](_0x82e2('0xf'),_0x2fecf9,_0x5bb66d);_0x1b6efa(_0x5bb66d);});});}exports[_0x82e2('0x1a')]=function(_0x1c4095){var _0x5c75c2=this;return new Promise(function(_0x3ae21c,_0x3548e7){return db[_0x82e2('0x1b')][_0x82e2('0x1c')](_0x1c4095[_0x82e2('0x1d')],{'raw':_0x1c4095['options']?_0x1c4095['options'][_0x82e2('0x1e')]===undefined?!![]:![]:!![]})[_0x82e2('0x1f')](function(_0xcea498){logger[_0x82e2('0x17')](_0x82e2('0x1a'),_0x1c4095);logger['debug'](_0x82e2('0x1a'),_0x1c4095,JSON['stringify'](_0xcea498));_0x3ae21c(_0xcea498);})[_0x82e2('0x19')](function(_0xcec334){logger[_0x82e2('0x14')](_0x82e2('0x1a'),_0xcec334[_0x82e2('0x16')],_0x1c4095);_0x3548e7(_0x5c75c2['error'](0x1f4,_0xcec334[_0x82e2('0x16')]));});});};