Built motion from commit (unavailable).|2.5.14
[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 _0x92fd=['result','catch','CreatePlugin','create','body','options','lodash','util','moment','bluebird','randomstring','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','defaults','redis','localhost','socket.io-emitter','register','then','Plugin,\x20%s,\x20%s','debug','Plugin,\x20%s,\x20%s,\x20%s','error','message','info','request\x20sent'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x92fd,0x132));var _0xd92f=function(_0x31b5b2,_0x5ab927){_0x31b5b2=_0x31b5b2-0x0;var _0x364f13=_0x92fd[_0x31b5b2];return _0x364f13;};'use strict';var _=require(_0xd92f('0x0'));var util=require(_0xd92f('0x1'));var moment=require(_0xd92f('0x2'));var BPromise=require(_0xd92f('0x3'));var rs=require(_0xd92f('0x4'));var fs=require('fs');var Redis=require('ioredis');var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require(_0xd92f('0x5'))(_0xd92f('0x6'));var config=require(_0xd92f('0x7'));var jayson=require(_0xd92f('0x8'));var client=jayson[_0xd92f('0x9')][_0xd92f('0xa')]({'port':0x232a});config['redis']=_[_0xd92f('0xb')](config[_0xd92f('0xc')],{'host':_0xd92f('0xd'),'port':0x18eb});var socket=require(_0xd92f('0xe'))(new Redis(config[_0xd92f('0xc')]));require('./plugin.socket')[_0xd92f('0xf')](socket);function respondWithRpcPromise(_0x422dbf,_0x54607e,_0x76e044){return new BPromise(function(_0x5260ca,_0x1798ef){return client['request'](_0x422dbf,_0x76e044)[_0xd92f('0x10')](function(_0x2de866){logger['info'](_0xd92f('0x11'),_0x54607e,'request\x20sent');logger[_0xd92f('0x12')](_0xd92f('0x13'),_0x54607e,'request\x20sent',JSON['stringify'](_0x2de866));if(_0x2de866[_0xd92f('0x14')]){if(_0x2de866['error']['code']===0x1f4){logger[_0xd92f('0x14')](_0xd92f('0x11'),_0x54607e,_0x2de866[_0xd92f('0x14')][_0xd92f('0x15')]);return _0x1798ef(_0x2de866[_0xd92f('0x14')]['message']);}logger['error']('Plugin,\x20%s,\x20%s',_0x54607e,_0x2de866['error'][_0xd92f('0x15')]);return _0x5260ca(_0x2de866['error'][_0xd92f('0x15')]);}else{logger[_0xd92f('0x16')](_0xd92f('0x11'),_0x54607e,_0xd92f('0x17'));_0x5260ca(_0x2de866[_0xd92f('0x18')]['message']);}})[_0xd92f('0x19')](function(_0xffc7d8){logger['error'](_0xd92f('0x11'),_0x54607e,_0xffc7d8);_0x1798ef(_0xffc7d8);});});}exports[_0xd92f('0x1a')]=function(_0x2c346c){var _0x533833=this;return new Promise(function(_0x2e9b73,_0x5aa035){return db['Plugin'][_0xd92f('0x1b')](_0x2c346c[_0xd92f('0x1c')],{'raw':_0x2c346c[_0xd92f('0x1d')]?_0x2c346c[_0xd92f('0x1d')]['raw']===undefined?!![]:![]:!![]})[_0xd92f('0x10')](function(_0x242405){logger[_0xd92f('0x16')]('CreatePlugin',_0x2c346c);logger['debug'](_0xd92f('0x1a'),_0x2c346c,JSON['stringify'](_0x242405));_0x2e9b73(_0x242405);})['catch'](function(_0x1360d2){logger[_0xd92f('0x14')]('CreatePlugin',_0x1360d2[_0xd92f('0x15')],_0x2c346c);_0x5aa035(_0x533833[_0xd92f('0x14')](0x1f4,_0x1360d2['message']));});});};