2122263980d2bfd95470d01cb5d022dbc29d8f2d
[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 _0x6d22=['model','GetTrunk','catch','ShowTrunk','find','util','moment','randomstring','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise','http','request','then','info','Trunk,\x20%s,\x20%s','debug','Trunk,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','message','findAll','options','raw','attributes','limit','include','map'];(function(_0x1a8192,_0x3453f2){var _0x131de2=function(_0x50ab1c){while(--_0x50ab1c){_0x1a8192['push'](_0x1a8192['shift']());}};_0x131de2(++_0x3453f2);}(_0x6d22,0x11c));var _0x26d2=function(_0x3a577a,_0x592a16){_0x3a577a=_0x3a577a-0x0;var _0x493322=_0x6d22[_0x3a577a];return _0x493322;};'use strict';var _=require('lodash');var util=require(_0x26d2('0x0'));var moment=require(_0x26d2('0x1'));var BPromise=require('bluebird');var rs=require(_0x26d2('0x2'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x26d2('0x3'))['db'];var utils=require(_0x26d2('0x4'));var logger=require(_0x26d2('0x5'))(_0x26d2('0x6'));var config=require('../../config/environment');var jayson=require(_0x26d2('0x7'));var client=jayson['client'][_0x26d2('0x8')]({'port':0x232a});function respondWithRpcPromise(_0x53d5f0,_0x5b8bf7,_0x4639a0){return new BPromise(function(_0x3db02a,_0x539b66){return client[_0x26d2('0x9')](_0x53d5f0,_0x4639a0)[_0x26d2('0xa')](function(_0x1a53fb){logger[_0x26d2('0xb')](_0x26d2('0xc'),_0x5b8bf7,'request\x20sent');logger[_0x26d2('0xd')](_0x26d2('0xe'),_0x5b8bf7,_0x26d2('0xf'),JSON[_0x26d2('0x10')](_0x1a53fb));if(_0x1a53fb['error']){if(_0x1a53fb[_0x26d2('0x11')]['code']===0x1f4){logger[_0x26d2('0x11')](_0x26d2('0xc'),_0x5b8bf7,_0x1a53fb[_0x26d2('0x11')][_0x26d2('0x12')]);return _0x539b66(_0x1a53fb[_0x26d2('0x11')][_0x26d2('0x12')]);}logger[_0x26d2('0x11')](_0x26d2('0xc'),_0x5b8bf7,_0x1a53fb[_0x26d2('0x11')][_0x26d2('0x12')]);return _0x3db02a(_0x1a53fb[_0x26d2('0x11')][_0x26d2('0x12')]);}else{logger['info']('Trunk,\x20%s,\x20%s',_0x5b8bf7,_0x26d2('0xf'));_0x3db02a(_0x1a53fb['result'][_0x26d2('0x12')]);}})['catch'](function(_0x49d4bf){logger[_0x26d2('0x11')]('Trunk,\x20%s,\x20%s',_0x5b8bf7,_0x49d4bf);_0x539b66(_0x49d4bf);});});}exports['GetTrunk']=function(_0x3c1f98){var _0x556771=this;return new Promise(function(_0x4102bf,_0x1d1e41){return db['Trunk'][_0x26d2('0x13')]({'raw':_0x3c1f98['options']?_0x3c1f98[_0x26d2('0x14')][_0x26d2('0x15')]===undefined?!![]:![]:!![],'where':_0x3c1f98[_0x26d2('0x14')]?_0x3c1f98[_0x26d2('0x14')]['where']||null:null,'attributes':_0x3c1f98[_0x26d2('0x14')]?_0x3c1f98[_0x26d2('0x14')][_0x26d2('0x16')]||null:null,'limit':_0x3c1f98[_0x26d2('0x14')]?_0x3c1f98[_0x26d2('0x14')][_0x26d2('0x17')]||null:null,'include':_0x3c1f98[_0x26d2('0x14')]?_0x3c1f98[_0x26d2('0x14')][_0x26d2('0x18')]?_[_0x26d2('0x19')](_0x3c1f98[_0x26d2('0x14')]['include'],function(_0x424746){return{'model':db[_0x424746['model']],'as':_0x424746['as'],'attributes':_0x424746[_0x26d2('0x16')],'include':_0x424746[_0x26d2('0x18')]?_['map'](_0x424746[_0x26d2('0x18')],function(_0x5b8fe1){return{'model':db[_0x5b8fe1['model']],'as':_0x5b8fe1['as'],'attributes':_0x5b8fe1[_0x26d2('0x16')],'include':_0x5b8fe1['include']?_['map'](_0x5b8fe1[_0x26d2('0x18')],function(_0x385778){return{'model':db[_0x385778[_0x26d2('0x1a')]],'as':_0x385778['as'],'attributes':_0x385778[_0x26d2('0x16')]};}):[]};}):[]};}):[]:[]})[_0x26d2('0xa')](function(_0x1b5444){logger[_0x26d2('0xb')](_0x26d2('0x1b'),_0x3c1f98);logger[_0x26d2('0xd')](_0x26d2('0x1b'),_0x3c1f98,JSON[_0x26d2('0x10')](_0x1b5444));_0x4102bf(_0x1b5444);})[_0x26d2('0x1c')](function(_0x13504e){logger[_0x26d2('0x11')](_0x26d2('0x1b'),_0x13504e[_0x26d2('0x12')],_0x3c1f98);_0x1d1e41(_0x556771[_0x26d2('0x11')](0x1f4,_0x13504e[_0x26d2('0x12')]));});});};exports[_0x26d2('0x1d')]=function(_0x3a8b63){var _0x2e594e=this;return new Promise(function(_0x53a971,_0x205aaf){return db['Trunk'][_0x26d2('0x1e')]({'raw':_0x3a8b63['options']?_0x3a8b63[_0x26d2('0x14')][_0x26d2('0x15')]===undefined?!![]:![]:!![],'where':_0x3a8b63[_0x26d2('0x14')]?_0x3a8b63[_0x26d2('0x14')]['where']||null:null,'attributes':_0x3a8b63['options']?_0x3a8b63[_0x26d2('0x14')][_0x26d2('0x16')]||null:null,'include':_0x3a8b63[_0x26d2('0x14')]?_0x3a8b63['options'][_0x26d2('0x18')]?_['map'](_0x3a8b63['options']['include'],function(_0x51718e){return{'model':db[_0x51718e[_0x26d2('0x1a')]],'as':_0x51718e['as'],'attributes':_0x51718e[_0x26d2('0x16')],'include':_0x51718e['include']?_[_0x26d2('0x19')](_0x51718e['include'],function(_0x5e9382){return{'model':db[_0x5e9382[_0x26d2('0x1a')]],'as':_0x5e9382['as'],'attributes':_0x5e9382['attributes'],'include':_0x5e9382[_0x26d2('0x18')]?_[_0x26d2('0x19')](_0x5e9382[_0x26d2('0x18')],function(_0x3ae599){return{'model':db[_0x3ae599[_0x26d2('0x1a')]],'as':_0x3ae599['as'],'attributes':_0x3ae599[_0x26d2('0x16')]};}):[]};}):[]};}):[]:[]})[_0x26d2('0xa')](function(_0x598fde){logger[_0x26d2('0xb')](_0x26d2('0x1d'),_0x3a8b63);logger[_0x26d2('0xd')](_0x26d2('0x1d'),_0x3a8b63,JSON[_0x26d2('0x10')](_0x598fde));_0x53a971(_0x598fde);})[_0x26d2('0x1c')](function(_0x179288){logger[_0x26d2('0x11')]('ShowTrunk',_0x179288[_0x26d2('0x12')],_0x3a8b63);_0x205aaf(_0x2e594e[_0x26d2('0x11')](0x1f4,_0x179288[_0x26d2('0x12')]));});});};