2ca251662b8eec790c6b1eda7de0e2d3b6e3a767
[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 _0x78ad=['Plugin','create','body','options','raw','CreatePlugin','catch','util','moment','bluebird','randomstring','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','register','request','info','Plugin,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result'];(function(_0x17b2d8,_0x4e9d71){var _0x2ff1cd=function(_0x129236){while(--_0x129236){_0x17b2d8['push'](_0x17b2d8['shift']());}};_0x2ff1cd(++_0x4e9d71);}(_0x78ad,0x64));var _0xd78a=function(_0x2a13cc,_0x2db2ff){_0x2a13cc=_0x2a13cc-0x0;var _0x5cd3f2=_0x78ad[_0x2a13cc];return _0x5cd3f2;};'use strict';var _=require('lodash');var util=require(_0xd78a('0x0'));var moment=require(_0xd78a('0x1'));var BPromise=require(_0xd78a('0x2'));var rs=require(_0xd78a('0x3'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0xd78a('0x4'))['db'];var utils=require(_0xd78a('0x5'));var logger=require(_0xd78a('0x6'))(_0xd78a('0x7'));var config=require(_0xd78a('0x8'));var jayson=require(_0xd78a('0x9'));var client=jayson[_0xd78a('0xa')][_0xd78a('0xb')]({'port':0x232a});config[_0xd78a('0xc')]=_['defaults'](config[_0xd78a('0xc')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd78a('0xc')]));require('./plugin.socket')[_0xd78a('0xd')](socket);function respondWithRpcPromise(_0xa40784,_0x30f03c,_0x41e7ee){return new BPromise(function(_0x5af81d,_0x5719c2){return client[_0xd78a('0xe')](_0xa40784,_0x41e7ee)['then'](function(_0x24cf16){logger[_0xd78a('0xf')](_0xd78a('0x10'),_0x30f03c,_0xd78a('0x11'));logger[_0xd78a('0x12')]('Plugin,\x20%s,\x20%s,\x20%s',_0x30f03c,_0xd78a('0x11'),JSON[_0xd78a('0x13')](_0x24cf16));if(_0x24cf16[_0xd78a('0x14')]){if(_0x24cf16[_0xd78a('0x14')][_0xd78a('0x15')]===0x1f4){logger['error'](_0xd78a('0x10'),_0x30f03c,_0x24cf16[_0xd78a('0x14')][_0xd78a('0x16')]);return _0x5719c2(_0x24cf16[_0xd78a('0x14')][_0xd78a('0x16')]);}logger['error'](_0xd78a('0x10'),_0x30f03c,_0x24cf16[_0xd78a('0x14')][_0xd78a('0x16')]);return _0x5af81d(_0x24cf16[_0xd78a('0x14')][_0xd78a('0x16')]);}else{logger[_0xd78a('0xf')](_0xd78a('0x10'),_0x30f03c,_0xd78a('0x11'));_0x5af81d(_0x24cf16[_0xd78a('0x17')]['message']);}})['catch'](function(_0x59b96c){logger[_0xd78a('0x14')](_0xd78a('0x10'),_0x30f03c,_0x59b96c);_0x5719c2(_0x59b96c);});});}exports['CreatePlugin']=function(_0x1100d4){var _0x444331=this;return new Promise(function(_0x5581f6,_0xba54e2){return db[_0xd78a('0x18')][_0xd78a('0x19')](_0x1100d4[_0xd78a('0x1a')],{'raw':_0x1100d4[_0xd78a('0x1b')]?_0x1100d4[_0xd78a('0x1b')][_0xd78a('0x1c')]===undefined?!![]:![]:!![]})['then'](function(_0x3fa80c){logger[_0xd78a('0xf')](_0xd78a('0x1d'),_0x1100d4);logger[_0xd78a('0x12')](_0xd78a('0x1d'),_0x1100d4,JSON['stringify'](_0x3fa80c));_0x5581f6(_0x3fa80c);})[_0xd78a('0x1e')](function(_0x59d800){logger[_0xd78a('0x14')](_0xd78a('0x1d'),_0x59d800[_0xd78a('0x16')],_0x1100d4);_0xba54e2(_0x444331[_0xd78a('0x14')](0x1f4,_0x59d800[_0xd78a('0x16')]));});});};