b65bb654b3db85d79824b9b8fc073a2d4865efc2
[motion2.git] / server / api / trunk / trunk.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 _0xb5fc=['error','message','result','catch','GetTrunk','Trunk','findAll','options','raw','where','attributes','limit','map','model','include','debug','ShowTrunk','lodash','bluebird','randomstring','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','http','then','info','Trunk,\x20%s,\x20%s','request\x20sent','stringify'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0xb5fc,0xea));var _0xcb5f=function(_0x17bec1,_0x12a9ff){_0x17bec1=_0x17bec1-0x0;var _0x278eaf=_0xb5fc[_0x17bec1];return _0x278eaf;};'use strict';var _=require(_0xcb5f('0x0'));var util=require('util');var moment=require('moment');var BPromise=require(_0xcb5f('0x1'));var rs=require(_0xcb5f('0x2'));var fs=require('fs');var Redis=require('ioredis');var db=require('../../mysqldb')['db'];var utils=require(_0xcb5f('0x3'));var logger=require(_0xcb5f('0x4'))(_0xcb5f('0x5'));var config=require(_0xcb5f('0x6'));var jayson=require(_0xcb5f('0x7'));var client=jayson['client'][_0xcb5f('0x8')]({'port':0x232a});function respondWithRpcPromise(_0x2d1901,_0x354ab0,_0x53593c){return new BPromise(function(_0x326ad0,_0x4d087a){return client['request'](_0x2d1901,_0x53593c)[_0xcb5f('0x9')](function(_0x55f566){logger[_0xcb5f('0xa')](_0xcb5f('0xb'),_0x354ab0,_0xcb5f('0xc'));logger['debug']('Trunk,\x20%s,\x20%s,\x20%s',_0x354ab0,_0xcb5f('0xc'),JSON[_0xcb5f('0xd')](_0x55f566));if(_0x55f566[_0xcb5f('0xe')]){if(_0x55f566['error']['code']===0x1f4){logger['error']('Trunk,\x20%s,\x20%s',_0x354ab0,_0x55f566[_0xcb5f('0xe')]['message']);return _0x4d087a(_0x55f566[_0xcb5f('0xe')][_0xcb5f('0xf')]);}logger[_0xcb5f('0xe')](_0xcb5f('0xb'),_0x354ab0,_0x55f566[_0xcb5f('0xe')][_0xcb5f('0xf')]);return _0x326ad0(_0x55f566['error'][_0xcb5f('0xf')]);}else{logger[_0xcb5f('0xa')]('Trunk,\x20%s,\x20%s',_0x354ab0,_0xcb5f('0xc'));_0x326ad0(_0x55f566[_0xcb5f('0x10')][_0xcb5f('0xf')]);}})[_0xcb5f('0x11')](function(_0xa3c916){logger[_0xcb5f('0xe')](_0xcb5f('0xb'),_0x354ab0,_0xa3c916);_0x4d087a(_0xa3c916);});});}exports[_0xcb5f('0x12')]=function(_0x418f47){var _0x28c423=this;return new Promise(function(_0x293c40,_0x41d3be){return db[_0xcb5f('0x13')][_0xcb5f('0x14')]({'raw':_0x418f47[_0xcb5f('0x15')]?_0x418f47[_0xcb5f('0x15')][_0xcb5f('0x16')]===undefined?!![]:![]:!![],'where':_0x418f47[_0xcb5f('0x15')]?_0x418f47[_0xcb5f('0x15')][_0xcb5f('0x17')]||null:null,'attributes':_0x418f47[_0xcb5f('0x15')]?_0x418f47['options'][_0xcb5f('0x18')]||null:null,'limit':_0x418f47[_0xcb5f('0x15')]?_0x418f47[_0xcb5f('0x15')][_0xcb5f('0x19')]||null:null,'include':_0x418f47[_0xcb5f('0x15')]?_0x418f47[_0xcb5f('0x15')]['include']?_[_0xcb5f('0x1a')](_0x418f47[_0xcb5f('0x15')]['include'],function(_0x580c41){return{'model':db[_0x580c41[_0xcb5f('0x1b')]],'as':_0x580c41['as'],'attributes':_0x580c41[_0xcb5f('0x18')],'include':_0x580c41[_0xcb5f('0x1c')]?_['map'](_0x580c41['include'],function(_0x1d4ad1){return{'model':db[_0x1d4ad1['model']],'as':_0x1d4ad1['as'],'attributes':_0x1d4ad1['attributes'],'include':_0x1d4ad1[_0xcb5f('0x1c')]?_[_0xcb5f('0x1a')](_0x1d4ad1['include'],function(_0x4ca282){return{'model':db[_0x4ca282[_0xcb5f('0x1b')]],'as':_0x4ca282['as'],'attributes':_0x4ca282[_0xcb5f('0x18')]};}):[]};}):[]};}):[]:[]})[_0xcb5f('0x9')](function(_0x59a9fa){logger[_0xcb5f('0xa')](_0xcb5f('0x12'),_0x418f47);logger[_0xcb5f('0x1d')](_0xcb5f('0x12'),_0x418f47,JSON[_0xcb5f('0xd')](_0x59a9fa));_0x293c40(_0x59a9fa);})['catch'](function(_0x12a502){logger['error'](_0xcb5f('0x12'),_0x12a502[_0xcb5f('0xf')],_0x418f47);_0x41d3be(_0x28c423[_0xcb5f('0xe')](0x1f4,_0x12a502[_0xcb5f('0xf')]));});});};exports[_0xcb5f('0x1e')]=function(_0x31a079){var _0x2b9faa=this;return new Promise(function(_0xbaa0d1,_0x521abd){return db['Trunk']['find']({'raw':_0x31a079[_0xcb5f('0x15')]?_0x31a079[_0xcb5f('0x15')][_0xcb5f('0x16')]===undefined?!![]:![]:!![],'where':_0x31a079[_0xcb5f('0x15')]?_0x31a079[_0xcb5f('0x15')]['where']||null:null,'attributes':_0x31a079['options']?_0x31a079[_0xcb5f('0x15')]['attributes']||null:null,'include':_0x31a079[_0xcb5f('0x15')]?_0x31a079['options'][_0xcb5f('0x1c')]?_[_0xcb5f('0x1a')](_0x31a079['options']['include'],function(_0x11b363){return{'model':db[_0x11b363[_0xcb5f('0x1b')]],'as':_0x11b363['as'],'attributes':_0x11b363[_0xcb5f('0x18')],'include':_0x11b363['include']?_[_0xcb5f('0x1a')](_0x11b363[_0xcb5f('0x1c')],function(_0x477ed9){return{'model':db[_0x477ed9[_0xcb5f('0x1b')]],'as':_0x477ed9['as'],'attributes':_0x477ed9['attributes'],'include':_0x477ed9[_0xcb5f('0x1c')]?_[_0xcb5f('0x1a')](_0x477ed9[_0xcb5f('0x1c')],function(_0x44590b){return{'model':db[_0x44590b[_0xcb5f('0x1b')]],'as':_0x44590b['as'],'attributes':_0x44590b[_0xcb5f('0x18')]};}):[]};}):[]};}):[]:[]})[_0xcb5f('0x9')](function(_0x4a4dd9){logger[_0xcb5f('0xa')](_0xcb5f('0x1e'),_0x31a079);logger['debug'](_0xcb5f('0x1e'),_0x31a079,JSON['stringify'](_0x4a4dd9));_0xbaa0d1(_0x4a4dd9);})['catch'](function(_0x2735c5){logger[_0xcb5f('0xe')](_0xcb5f('0x1e'),_0x2735c5[_0xcb5f('0xf')],_0x31a079);_0x521abd(_0x2b9faa[_0xcb5f('0xe')](0x1f4,_0x2735c5[_0xcb5f('0xf')]));});});};