159ca8da13ca76bd62cbb6cc9af926bbdda6ca53
[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 _0xd6a8=['client','http','redis','localhost','socket.io-emitter','register','request','then','Plugin,\x20%s,\x20%s','request\x20sent','Plugin,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','result','catch','CreatePlugin','Plugin','create','body','options','raw','debug','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise'];(function(_0x5c769c,_0x553b17){var _0x26c82a=function(_0x437c23){while(--_0x437c23){_0x5c769c['push'](_0x5c769c['shift']());}};_0x26c82a(++_0x553b17);}(_0xd6a8,0xf7));var _0x8d6a=function(_0xdc964e,_0x29371b){_0xdc964e=_0xdc964e-0x0;var _0x16c977=_0xd6a8[_0xdc964e];return _0x16c977;};'use strict';var _=require(_0x8d6a('0x0'));var util=require(_0x8d6a('0x1'));var moment=require(_0x8d6a('0x2'));var BPromise=require(_0x8d6a('0x3'));var rs=require(_0x8d6a('0x4'));var fs=require('fs');var Redis=require(_0x8d6a('0x5'));var db=require(_0x8d6a('0x6'))['db'];var utils=require(_0x8d6a('0x7'));var logger=require(_0x8d6a('0x8'))(_0x8d6a('0x9'));var config=require(_0x8d6a('0xa'));var jayson=require(_0x8d6a('0xb'));var client=jayson[_0x8d6a('0xc')][_0x8d6a('0xd')]({'port':0x232a});config[_0x8d6a('0xe')]=_['defaults'](config[_0x8d6a('0xe')],{'host':_0x8d6a('0xf'),'port':0x18eb});var socket=require(_0x8d6a('0x10'))(new Redis(config[_0x8d6a('0xe')]));require('./plugin.socket')[_0x8d6a('0x11')](socket);function respondWithRpcPromise(_0x4ccb2e,_0x4287e2,_0x260436){return new BPromise(function(_0x411a31,_0x3b82ba){return client[_0x8d6a('0x12')](_0x4ccb2e,_0x260436)[_0x8d6a('0x13')](function(_0x527978){logger['info'](_0x8d6a('0x14'),_0x4287e2,_0x8d6a('0x15'));logger['debug'](_0x8d6a('0x16'),_0x4287e2,'request\x20sent',JSON[_0x8d6a('0x17')](_0x527978));if(_0x527978[_0x8d6a('0x18')]){if(_0x527978[_0x8d6a('0x18')][_0x8d6a('0x19')]===0x1f4){logger[_0x8d6a('0x18')](_0x8d6a('0x14'),_0x4287e2,_0x527978[_0x8d6a('0x18')]['message']);return _0x3b82ba(_0x527978['error']['message']);}logger[_0x8d6a('0x18')]('Plugin,\x20%s,\x20%s',_0x4287e2,_0x527978[_0x8d6a('0x18')][_0x8d6a('0x1a')]);return _0x411a31(_0x527978[_0x8d6a('0x18')][_0x8d6a('0x1a')]);}else{logger[_0x8d6a('0x1b')](_0x8d6a('0x14'),_0x4287e2,_0x8d6a('0x15'));_0x411a31(_0x527978[_0x8d6a('0x1c')][_0x8d6a('0x1a')]);}})[_0x8d6a('0x1d')](function(_0xdd1e3e){logger[_0x8d6a('0x18')](_0x8d6a('0x14'),_0x4287e2,_0xdd1e3e);_0x3b82ba(_0xdd1e3e);});});}exports[_0x8d6a('0x1e')]=function(_0x488f37){var _0x59c4f7=this;return new Promise(function(_0x23411e,_0x2b16c3){return db[_0x8d6a('0x1f')][_0x8d6a('0x20')](_0x488f37[_0x8d6a('0x21')],{'raw':_0x488f37[_0x8d6a('0x22')]?_0x488f37[_0x8d6a('0x22')][_0x8d6a('0x23')]===undefined?!![]:![]:!![]})['then'](function(_0xf5acf){logger[_0x8d6a('0x1b')]('CreatePlugin',_0x488f37);logger[_0x8d6a('0x24')](_0x8d6a('0x1e'),_0x488f37,JSON['stringify'](_0xf5acf));_0x23411e(_0xf5acf);})[_0x8d6a('0x1d')](function(_0x28da73){logger[_0x8d6a('0x18')](_0x8d6a('0x1e'),_0x28da73[_0x8d6a('0x1a')],_0x488f37);_0x2b16c3(_0x59c4f7[_0x8d6a('0x18')](0x1f4,_0x28da73[_0x8d6a('0x1a')]));});});};