bf3b402f49d67d8904fd502b2e6564ca288b2f90
[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 _0x00fd=['rpc','../../config/environment','jayson/promise','client','defaults','redis','localhost','socket.io-emitter','./plugin.socket','register','request','then','info','Plugin,\x20%s,\x20%s','request\x20sent','debug','Plugin,\x20%s,\x20%s,\x20%s','stringify','error','message','result','catch','CreatePlugin','create','options','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/logger'];(function(_0x1dd2f6,_0x18ea13){var _0x431c0b=function(_0xcd54d1){while(--_0xcd54d1){_0x1dd2f6['push'](_0x1dd2f6['shift']());}};_0x431c0b(++_0x18ea13);}(_0x00fd,0x9d));var _0xd00f=function(_0x2a0ec9,_0xad364d){_0x2a0ec9=_0x2a0ec9-0x0;var _0x1da045=_0x00fd[_0x2a0ec9];return _0x1da045;};'use strict';var _=require(_0xd00f('0x0'));var util=require(_0xd00f('0x1'));var moment=require(_0xd00f('0x2'));var BPromise=require(_0xd00f('0x3'));var rs=require(_0xd00f('0x4'));var fs=require('fs');var Redis=require(_0xd00f('0x5'));var db=require(_0xd00f('0x6'))['db'];var utils=require('../../config/utils');var logger=require(_0xd00f('0x7'))(_0xd00f('0x8'));var config=require(_0xd00f('0x9'));var jayson=require(_0xd00f('0xa'));var client=jayson[_0xd00f('0xb')]['http']({'port':0x232a});config['redis']=_[_0xd00f('0xc')](config[_0xd00f('0xd')],{'host':_0xd00f('0xe'),'port':0x18eb});var socket=require(_0xd00f('0xf'))(new Redis(config['redis']));require(_0xd00f('0x10'))[_0xd00f('0x11')](socket);function respondWithRpcPromise(_0x1c4ad1,_0x3f8d17,_0x38ffbc){return new BPromise(function(_0x1ee66a,_0x52cb49){return client[_0xd00f('0x12')](_0x1c4ad1,_0x38ffbc)[_0xd00f('0x13')](function(_0x2ef455){logger[_0xd00f('0x14')](_0xd00f('0x15'),_0x3f8d17,_0xd00f('0x16'));logger[_0xd00f('0x17')](_0xd00f('0x18'),_0x3f8d17,_0xd00f('0x16'),JSON[_0xd00f('0x19')](_0x2ef455));if(_0x2ef455[_0xd00f('0x1a')]){if(_0x2ef455[_0xd00f('0x1a')]['code']===0x1f4){logger[_0xd00f('0x1a')](_0xd00f('0x15'),_0x3f8d17,_0x2ef455[_0xd00f('0x1a')]['message']);return _0x52cb49(_0x2ef455[_0xd00f('0x1a')][_0xd00f('0x1b')]);}logger['error'](_0xd00f('0x15'),_0x3f8d17,_0x2ef455['error']['message']);return _0x1ee66a(_0x2ef455[_0xd00f('0x1a')][_0xd00f('0x1b')]);}else{logger[_0xd00f('0x14')](_0xd00f('0x15'),_0x3f8d17,_0xd00f('0x16'));_0x1ee66a(_0x2ef455[_0xd00f('0x1c')][_0xd00f('0x1b')]);}})[_0xd00f('0x1d')](function(_0xd14e84){logger[_0xd00f('0x1a')](_0xd00f('0x15'),_0x3f8d17,_0xd14e84);_0x52cb49(_0xd14e84);});});}exports[_0xd00f('0x1e')]=function(_0x9d65c6){var _0x24f3ea=this;return new Promise(function(_0x240b98,_0x4cbad8){return db['Plugin'][_0xd00f('0x1f')](_0x9d65c6['body'],{'raw':_0x9d65c6[_0xd00f('0x20')]?_0x9d65c6['options']['raw']===undefined?!![]:![]:!![]})[_0xd00f('0x13')](function(_0x11b509){logger[_0xd00f('0x14')](_0xd00f('0x1e'),_0x9d65c6);logger[_0xd00f('0x17')]('CreatePlugin',_0x9d65c6,JSON[_0xd00f('0x19')](_0x11b509));_0x240b98(_0x11b509);})['catch'](function(_0x1ae7ab){logger[_0xd00f('0x1a')](_0xd00f('0x1e'),_0x1ae7ab[_0xd00f('0x1b')],_0x9d65c6);_0x4cbad8(_0x24f3ea[_0xd00f('0x1a')](0x1f4,_0x1ae7ab[_0xd00f('0x1b')]));});});};