b126b1be5bdd3cb3273c08b368e238ae70c5673f
[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 _0x8d8e=['stringify','error','code','message','CreatePlugin','Plugin','create','body','raw','debug','lodash','util','moment','bluebird','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','redis','defaults','localhost','socket.io-emitter','./plugin.socket','register','request','then','info','Plugin,\x20%s,\x20%s','request\x20sent','Plugin,\x20%s,\x20%s,\x20%s'];(function(_0x432682,_0x253044){var _0x463d05=function(_0xa73403){while(--_0xa73403){_0x432682['push'](_0x432682['shift']());}};_0x463d05(++_0x253044);}(_0x8d8e,0x112));var _0xe8d8=function(_0x494d1f,_0x3f72ff){_0x494d1f=_0x494d1f-0x0;var _0x457b6e=_0x8d8e[_0x494d1f];return _0x457b6e;};'use strict';var _=require(_0xe8d8('0x0'));var util=require(_0xe8d8('0x1'));var moment=require(_0xe8d8('0x2'));var BPromise=require(_0xe8d8('0x3'));var rs=require('randomstring');var fs=require('fs');var Redis=require('ioredis');var db=require(_0xe8d8('0x4'))['db'];var utils=require(_0xe8d8('0x5'));var logger=require(_0xe8d8('0x6'))(_0xe8d8('0x7'));var config=require(_0xe8d8('0x8'));var jayson=require(_0xe8d8('0x9'));var client=jayson[_0xe8d8('0xa')]['http']({'port':0x232a});config[_0xe8d8('0xb')]=_[_0xe8d8('0xc')](config[_0xe8d8('0xb')],{'host':_0xe8d8('0xd'),'port':0x18eb});var socket=require(_0xe8d8('0xe'))(new Redis(config[_0xe8d8('0xb')]));require(_0xe8d8('0xf'))[_0xe8d8('0x10')](socket);function respondWithRpcPromise(_0x35c19a,_0x1babe1,_0x56e3a8){return new BPromise(function(_0xc59e50,_0x386bc4){return client[_0xe8d8('0x11')](_0x35c19a,_0x56e3a8)[_0xe8d8('0x12')](function(_0x597c0a){logger[_0xe8d8('0x13')](_0xe8d8('0x14'),_0x1babe1,_0xe8d8('0x15'));logger['debug'](_0xe8d8('0x16'),_0x1babe1,_0xe8d8('0x15'),JSON[_0xe8d8('0x17')](_0x597c0a));if(_0x597c0a[_0xe8d8('0x18')]){if(_0x597c0a[_0xe8d8('0x18')][_0xe8d8('0x19')]===0x1f4){logger['error']('Plugin,\x20%s,\x20%s',_0x1babe1,_0x597c0a[_0xe8d8('0x18')]['message']);return _0x386bc4(_0x597c0a[_0xe8d8('0x18')]['message']);}logger['error']('Plugin,\x20%s,\x20%s',_0x1babe1,_0x597c0a[_0xe8d8('0x18')]['message']);return _0xc59e50(_0x597c0a[_0xe8d8('0x18')][_0xe8d8('0x1a')]);}else{logger[_0xe8d8('0x13')]('Plugin,\x20%s,\x20%s',_0x1babe1,_0xe8d8('0x15'));_0xc59e50(_0x597c0a['result'][_0xe8d8('0x1a')]);}})['catch'](function(_0x3f45e6){logger['error'](_0xe8d8('0x14'),_0x1babe1,_0x3f45e6);_0x386bc4(_0x3f45e6);});});}exports[_0xe8d8('0x1b')]=function(_0x5bb454){var _0x20c1c4=this;return new Promise(function(_0x5069a4,_0x5cc4e1){return db[_0xe8d8('0x1c')][_0xe8d8('0x1d')](_0x5bb454[_0xe8d8('0x1e')],{'raw':_0x5bb454['options']?_0x5bb454['options'][_0xe8d8('0x1f')]===undefined?!![]:![]:!![]})[_0xe8d8('0x12')](function(_0x554a7f){logger['info'](_0xe8d8('0x1b'),_0x5bb454);logger[_0xe8d8('0x20')](_0xe8d8('0x1b'),_0x5bb454,JSON[_0xe8d8('0x17')](_0x554a7f));_0x5069a4(_0x554a7f);})['catch'](function(_0x1b213f){logger['error'](_0xe8d8('0x1b'),_0x1b213f[_0xe8d8('0x1a')],_0x5bb454);_0x5cc4e1(_0x20c1c4['error'](0x1f4,_0x1b213f[_0xe8d8('0x1a')]));});});};