d9de59e45f4b659f4be03c4b403ae2056a8cb00c
[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 _0x77c6=['info','Plugin,\x20%s,\x20%s','request\x20sent','debug','stringify','error','message','result','catch','CreatePlugin','Plugin','create','body','options','raw','lodash','moment','bluebird','randomstring','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','./plugin.socket','register','request','then'];(function(_0x334f9a,_0x542f01){var _0x2b219d=function(_0x25bb3e){while(--_0x25bb3e){_0x334f9a['push'](_0x334f9a['shift']());}};_0x2b219d(++_0x542f01);}(_0x77c6,0x72));var _0x677c=function(_0x41f810,_0x4465e1){_0x41f810=_0x41f810-0x0;var _0x1ffff5=_0x77c6[_0x41f810];return _0x1ffff5;};'use strict';var _=require(_0x677c('0x0'));var util=require('util');var moment=require(_0x677c('0x1'));var BPromise=require(_0x677c('0x2'));var rs=require(_0x677c('0x3'));var fs=require('fs');var Redis=require(_0x677c('0x4'));var db=require('../../mysqldb')['db'];var utils=require(_0x677c('0x5'));var logger=require(_0x677c('0x6'))(_0x677c('0x7'));var config=require(_0x677c('0x8'));var jayson=require(_0x677c('0x9'));var client=jayson[_0x677c('0xa')][_0x677c('0xb')]({'port':0x232a});config[_0x677c('0xc')]=_[_0x677c('0xd')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x677c('0xc')]));require(_0x677c('0xe'))[_0x677c('0xf')](socket);function respondWithRpcPromise(_0x1fbc84,_0x4f1dce,_0x536074){return new BPromise(function(_0x4fad99,_0x309ae8){return client[_0x677c('0x10')](_0x1fbc84,_0x536074)[_0x677c('0x11')](function(_0x389611){logger[_0x677c('0x12')](_0x677c('0x13'),_0x4f1dce,_0x677c('0x14'));logger[_0x677c('0x15')]('Plugin,\x20%s,\x20%s,\x20%s',_0x4f1dce,_0x677c('0x14'),JSON[_0x677c('0x16')](_0x389611));if(_0x389611[_0x677c('0x17')]){if(_0x389611[_0x677c('0x17')]['code']===0x1f4){logger['error']('Plugin,\x20%s,\x20%s',_0x4f1dce,_0x389611[_0x677c('0x17')][_0x677c('0x18')]);return _0x309ae8(_0x389611[_0x677c('0x17')][_0x677c('0x18')]);}logger['error'](_0x677c('0x13'),_0x4f1dce,_0x389611[_0x677c('0x17')]['message']);return _0x4fad99(_0x389611['error'][_0x677c('0x18')]);}else{logger['info'](_0x677c('0x13'),_0x4f1dce,_0x677c('0x14'));_0x4fad99(_0x389611[_0x677c('0x19')]['message']);}})[_0x677c('0x1a')](function(_0x2d23ea){logger['error'](_0x677c('0x13'),_0x4f1dce,_0x2d23ea);_0x309ae8(_0x2d23ea);});});}exports[_0x677c('0x1b')]=function(_0x42b3c0){var _0x18e688=this;return new Promise(function(_0x547df0,_0x92223a){return db[_0x677c('0x1c')][_0x677c('0x1d')](_0x42b3c0[_0x677c('0x1e')],{'raw':_0x42b3c0[_0x677c('0x1f')]?_0x42b3c0[_0x677c('0x1f')][_0x677c('0x20')]===undefined?!![]:![]:!![]})['then'](function(_0xfa38a){logger[_0x677c('0x12')]('CreatePlugin',_0x42b3c0);logger[_0x677c('0x15')](_0x677c('0x1b'),_0x42b3c0,JSON[_0x677c('0x16')](_0xfa38a));_0x547df0(_0xfa38a);})[_0x677c('0x1a')](function(_0xc32a8e){logger['error'](_0x677c('0x1b'),_0xc32a8e[_0x677c('0x18')],_0x42b3c0);_0x92223a(_0x18e688['error'](0x1f4,_0xc32a8e[_0x677c('0x18')]));});});};