dd2d60c95d00a7327e0e910dbae0f76fb54f5bf6
[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 _0x5a79=['limit','include','map','model','ShowTrunk','find','where','lodash','moment','ioredis','../../mysqldb','../../config/logger','rpc','http','request','then','Trunk,\x20%s,\x20%s','request\x20sent','debug','Trunk,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','catch','GetTrunk','Trunk','options','raw','attributes'];(function(_0x3a99f4,_0x2a81c1){var _0xea0b42=function(_0x41f533){while(--_0x41f533){_0x3a99f4['push'](_0x3a99f4['shift']());}};_0xea0b42(++_0x2a81c1);}(_0x5a79,0x64));var _0x95a7=function(_0x46ec32,_0x1e842f){_0x46ec32=_0x46ec32-0x0;var _0x338f60=_0x5a79[_0x46ec32];return _0x338f60;};'use strict';var _=require(_0x95a7('0x0'));var util=require('util');var moment=require(_0x95a7('0x1'));var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x95a7('0x2'));var db=require(_0x95a7('0x3'))['db'];var utils=require('../../config/utils');var logger=require(_0x95a7('0x4'))(_0x95a7('0x5'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson['client'][_0x95a7('0x6')]({'port':0x232a});function respondWithRpcPromise(_0x3e2a59,_0x114cc1,_0x39e51d){return new BPromise(function(_0x2a861a,_0x354294){return client[_0x95a7('0x7')](_0x3e2a59,_0x39e51d)[_0x95a7('0x8')](function(_0xc2420e){logger['info'](_0x95a7('0x9'),_0x114cc1,_0x95a7('0xa'));logger[_0x95a7('0xb')](_0x95a7('0xc'),_0x114cc1,'request\x20sent',JSON[_0x95a7('0xd')](_0xc2420e));if(_0xc2420e[_0x95a7('0xe')]){if(_0xc2420e[_0x95a7('0xe')][_0x95a7('0xf')]===0x1f4){logger[_0x95a7('0xe')](_0x95a7('0x9'),_0x114cc1,_0xc2420e['error'][_0x95a7('0x10')]);return _0x354294(_0xc2420e[_0x95a7('0xe')]['message']);}logger[_0x95a7('0xe')]('Trunk,\x20%s,\x20%s',_0x114cc1,_0xc2420e[_0x95a7('0xe')][_0x95a7('0x10')]);return _0x2a861a(_0xc2420e[_0x95a7('0xe')][_0x95a7('0x10')]);}else{logger[_0x95a7('0x11')]('Trunk,\x20%s,\x20%s',_0x114cc1,'request\x20sent');_0x2a861a(_0xc2420e['result'][_0x95a7('0x10')]);}})[_0x95a7('0x12')](function(_0x3c6e8a){logger['error']('Trunk,\x20%s,\x20%s',_0x114cc1,_0x3c6e8a);_0x354294(_0x3c6e8a);});});}exports[_0x95a7('0x13')]=function(_0x19d1c6){var _0x149fb8=this;return new Promise(function(_0x200ead,_0x706a87){return db[_0x95a7('0x14')]['findAll']({'raw':_0x19d1c6[_0x95a7('0x15')]?_0x19d1c6[_0x95a7('0x15')][_0x95a7('0x16')]===undefined?!![]:![]:!![],'where':_0x19d1c6['options']?_0x19d1c6[_0x95a7('0x15')]['where']||null:null,'attributes':_0x19d1c6['options']?_0x19d1c6[_0x95a7('0x15')][_0x95a7('0x17')]||null:null,'limit':_0x19d1c6['options']?_0x19d1c6[_0x95a7('0x15')][_0x95a7('0x18')]||null:null,'include':_0x19d1c6[_0x95a7('0x15')]?_0x19d1c6[_0x95a7('0x15')][_0x95a7('0x19')]?_[_0x95a7('0x1a')](_0x19d1c6[_0x95a7('0x15')]['include'],function(_0x3f0ee4){return{'model':db[_0x3f0ee4[_0x95a7('0x1b')]],'as':_0x3f0ee4['as'],'attributes':_0x3f0ee4[_0x95a7('0x17')],'include':_0x3f0ee4['include']?_[_0x95a7('0x1a')](_0x3f0ee4[_0x95a7('0x19')],function(_0x193fa5){return{'model':db[_0x193fa5['model']],'as':_0x193fa5['as'],'attributes':_0x193fa5[_0x95a7('0x17')],'include':_0x193fa5[_0x95a7('0x19')]?_[_0x95a7('0x1a')](_0x193fa5[_0x95a7('0x19')],function(_0x3c9bb3){return{'model':db[_0x3c9bb3['model']],'as':_0x3c9bb3['as'],'attributes':_0x3c9bb3[_0x95a7('0x17')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x48f33b){logger['info'](_0x95a7('0x13'),_0x19d1c6);logger['debug']('GetTrunk',_0x19d1c6,JSON[_0x95a7('0xd')](_0x48f33b));_0x200ead(_0x48f33b);})[_0x95a7('0x12')](function(_0x447b9c){logger[_0x95a7('0xe')](_0x95a7('0x13'),_0x447b9c[_0x95a7('0x10')],_0x19d1c6);_0x706a87(_0x149fb8[_0x95a7('0xe')](0x1f4,_0x447b9c['message']));});});};exports[_0x95a7('0x1c')]=function(_0x2c4cd9){var _0x6e3cf7=this;return new Promise(function(_0x16d47f,_0x3d03c7){return db[_0x95a7('0x14')][_0x95a7('0x1d')]({'raw':_0x2c4cd9['options']?_0x2c4cd9[_0x95a7('0x15')][_0x95a7('0x16')]===undefined?!![]:![]:!![],'where':_0x2c4cd9[_0x95a7('0x15')]?_0x2c4cd9['options'][_0x95a7('0x1e')]||null:null,'attributes':_0x2c4cd9[_0x95a7('0x15')]?_0x2c4cd9[_0x95a7('0x15')][_0x95a7('0x17')]||null:null,'include':_0x2c4cd9[_0x95a7('0x15')]?_0x2c4cd9['options'][_0x95a7('0x19')]?_[_0x95a7('0x1a')](_0x2c4cd9[_0x95a7('0x15')][_0x95a7('0x19')],function(_0x71c65a){return{'model':db[_0x71c65a['model']],'as':_0x71c65a['as'],'attributes':_0x71c65a[_0x95a7('0x17')],'include':_0x71c65a[_0x95a7('0x19')]?_[_0x95a7('0x1a')](_0x71c65a[_0x95a7('0x19')],function(_0x34b779){return{'model':db[_0x34b779[_0x95a7('0x1b')]],'as':_0x34b779['as'],'attributes':_0x34b779['attributes'],'include':_0x34b779['include']?_[_0x95a7('0x1a')](_0x34b779['include'],function(_0x292932){return{'model':db[_0x292932['model']],'as':_0x292932['as'],'attributes':_0x292932[_0x95a7('0x17')]};}):[]};}):[]};}):[]:[]})[_0x95a7('0x8')](function(_0x47ff2d){logger[_0x95a7('0x11')]('ShowTrunk',_0x2c4cd9);logger[_0x95a7('0xb')](_0x95a7('0x1c'),_0x2c4cd9,JSON[_0x95a7('0xd')](_0x47ff2d));_0x16d47f(_0x47ff2d);})[_0x95a7('0x12')](function(_0x2b5369){logger['error'](_0x95a7('0x1c'),_0x2b5369['message'],_0x2c4cd9);_0x3d03c7(_0x6e3cf7['error'](0x1f4,_0x2b5369[_0x95a7('0x10')]));});});};