Built motion from commit (unavailable).|2.5.20
[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 _0xb75b=['randomstring','ioredis','../../config/utils','../../config/environment','jayson/promise','http','redis','defaults','socket.io-emitter','./plugin.socket','request','info','request\x20sent','error','code','Plugin,\x20%s,\x20%s','message','result','catch','CreatePlugin','Plugin','create','body','debug','stringify','lodash','util','moment','bluebird'];(function(_0x1c22b2,_0x283e3c){var _0x1c8864=function(_0x347fed){while(--_0x347fed){_0x1c22b2['push'](_0x1c22b2['shift']());}};_0x1c8864(++_0x283e3c);}(_0xb75b,0x101));var _0xbb75=function(_0x5916c3,_0x323d36){_0x5916c3=_0x5916c3-0x0;var _0x10bdb1=_0xb75b[_0x5916c3];return _0x10bdb1;};'use strict';var _=require(_0xbb75('0x0'));var util=require(_0xbb75('0x1'));var moment=require(_0xbb75('0x2'));var BPromise=require(_0xbb75('0x3'));var rs=require(_0xbb75('0x4'));var fs=require('fs');var Redis=require(_0xbb75('0x5'));var db=require('../../mysqldb')['db'];var utils=require(_0xbb75('0x6'));var logger=require('../../config/logger')('rpc');var config=require(_0xbb75('0x7'));var jayson=require(_0xbb75('0x8'));var client=jayson['client'][_0xbb75('0x9')]({'port':0x232a});config[_0xbb75('0xa')]=_[_0xbb75('0xb')](config[_0xbb75('0xa')],{'host':'localhost','port':0x18eb});var socket=require(_0xbb75('0xc'))(new Redis(config[_0xbb75('0xa')]));require(_0xbb75('0xd'))['register'](socket);function respondWithRpcPromise(_0x423636,_0x1c6b50,_0x4c4e9f){return new BPromise(function(_0xd37b0e,_0x5b58b5){return client[_0xbb75('0xe')](_0x423636,_0x4c4e9f)['then'](function(_0xfb1cdd){logger[_0xbb75('0xf')]('Plugin,\x20%s,\x20%s',_0x1c6b50,_0xbb75('0x10'));logger['debug']('Plugin,\x20%s,\x20%s,\x20%s',_0x1c6b50,_0xbb75('0x10'),JSON['stringify'](_0xfb1cdd));if(_0xfb1cdd[_0xbb75('0x11')]){if(_0xfb1cdd[_0xbb75('0x11')][_0xbb75('0x12')]===0x1f4){logger[_0xbb75('0x11')](_0xbb75('0x13'),_0x1c6b50,_0xfb1cdd[_0xbb75('0x11')][_0xbb75('0x14')]);return _0x5b58b5(_0xfb1cdd['error'][_0xbb75('0x14')]);}logger[_0xbb75('0x11')](_0xbb75('0x13'),_0x1c6b50,_0xfb1cdd[_0xbb75('0x11')][_0xbb75('0x14')]);return _0xd37b0e(_0xfb1cdd[_0xbb75('0x11')][_0xbb75('0x14')]);}else{logger['info'](_0xbb75('0x13'),_0x1c6b50,'request\x20sent');_0xd37b0e(_0xfb1cdd[_0xbb75('0x15')]['message']);}})[_0xbb75('0x16')](function(_0x2ed6cb){logger['error']('Plugin,\x20%s,\x20%s',_0x1c6b50,_0x2ed6cb);_0x5b58b5(_0x2ed6cb);});});}exports[_0xbb75('0x17')]=function(_0x206adb){var _0x60aa17=this;return new Promise(function(_0x29eb4e,_0xde270c){return db[_0xbb75('0x18')][_0xbb75('0x19')](_0x206adb[_0xbb75('0x1a')],{'raw':_0x206adb['options']?_0x206adb['options']['raw']===undefined?!![]:![]:!![]})['then'](function(_0x30da56){logger['info'](_0xbb75('0x17'),_0x206adb);logger[_0xbb75('0x1b')]('CreatePlugin',_0x206adb,JSON[_0xbb75('0x1c')](_0x30da56));_0x29eb4e(_0x30da56);})['catch'](function(_0x56951e){logger[_0xbb75('0x11')](_0xbb75('0x17'),_0x56951e[_0xbb75('0x14')],_0x206adb);_0xde270c(_0x60aa17[_0xbb75('0x11')](0x1f4,_0x56951e[_0xbb75('0x14')]));});});};