255c803db2e65533fb5218f2a1af3a6534449ef7
[motion2.git] / server / api / voiceExtension / voiceExtension.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 _0xfdb3=['include','model','then','GetVoiceExtension','lodash','util','bluebird','../../mysqldb','../../config/logger','rpc','../../config/environment','jayson/promise','client','redis','defaults','socket.io-emitter','./voiceExtension.socket','register','info','VoiceExtension,\x20%s,\x20%s','request\x20sent','debug','VoiceExtension,\x20%s,\x20%s,\x20%s','stringify','error','message','catch','VoiceExtension','options','raw','attributes','limit','map'];(function(_0x5234a8,_0x25dab1){var _0x1feac1=function(_0x3adce6){while(--_0x3adce6){_0x5234a8['push'](_0x5234a8['shift']());}};_0x1feac1(++_0x25dab1);}(_0xfdb3,0x10c));var _0x3fdb=function(_0x20e942,_0x2391e7){_0x20e942=_0x20e942-0x0;var _0x2c96f7=_0xfdb3[_0x20e942];return _0x2c96f7;};'use strict';var _=require(_0x3fdb('0x0'));var util=require(_0x3fdb('0x1'));var moment=require('moment');var BPromise=require(_0x3fdb('0x2'));var rs=require('randomstring');var fs=require('fs');var Redis=require('ioredis');var db=require(_0x3fdb('0x3'))['db'];var utils=require('../../config/utils');var logger=require(_0x3fdb('0x4'))(_0x3fdb('0x5'));var config=require(_0x3fdb('0x6'));var jayson=require(_0x3fdb('0x7'));var client=jayson[_0x3fdb('0x8')]['http']({'port':0x232a});config[_0x3fdb('0x9')]=_[_0x3fdb('0xa')](config[_0x3fdb('0x9')],{'host':'localhost','port':0x18eb});var socket=require(_0x3fdb('0xb'))(new Redis(config['redis']));require(_0x3fdb('0xc'))[_0x3fdb('0xd')](socket);function respondWithRpcPromise(_0x12d776,_0x2239ad,_0x2042b7){return new BPromise(function(_0x5bbb9f,_0x4d6e96){return client['request'](_0x12d776,_0x2042b7)['then'](function(_0x20a16c){logger[_0x3fdb('0xe')](_0x3fdb('0xf'),_0x2239ad,_0x3fdb('0x10'));logger[_0x3fdb('0x11')](_0x3fdb('0x12'),_0x2239ad,_0x3fdb('0x10'),JSON[_0x3fdb('0x13')](_0x20a16c));if(_0x20a16c[_0x3fdb('0x14')]){if(_0x20a16c[_0x3fdb('0x14')]['code']===0x1f4){logger[_0x3fdb('0x14')](_0x3fdb('0xf'),_0x2239ad,_0x20a16c['error'][_0x3fdb('0x15')]);return _0x4d6e96(_0x20a16c[_0x3fdb('0x14')][_0x3fdb('0x15')]);}logger[_0x3fdb('0x14')]('VoiceExtension,\x20%s,\x20%s',_0x2239ad,_0x20a16c['error']['message']);return _0x5bbb9f(_0x20a16c[_0x3fdb('0x14')][_0x3fdb('0x15')]);}else{logger[_0x3fdb('0xe')](_0x3fdb('0xf'),_0x2239ad,_0x3fdb('0x10'));_0x5bbb9f(_0x20a16c['result'][_0x3fdb('0x15')]);}})[_0x3fdb('0x16')](function(_0x45c509){logger[_0x3fdb('0x14')](_0x3fdb('0xf'),_0x2239ad,_0x45c509);_0x4d6e96(_0x45c509);});});}exports['GetVoiceExtension']=function(_0x319a6c){var _0x3218af=this;return new Promise(function(_0x44c8b2,_0x1bbad7){return db[_0x3fdb('0x17')]['findAll']({'raw':_0x319a6c[_0x3fdb('0x18')]?_0x319a6c['options'][_0x3fdb('0x19')]===undefined?!![]:![]:!![],'where':_0x319a6c['options']?_0x319a6c['options']['where']||null:null,'attributes':_0x319a6c['options']?_0x319a6c[_0x3fdb('0x18')][_0x3fdb('0x1a')]||null:null,'limit':_0x319a6c[_0x3fdb('0x18')]?_0x319a6c[_0x3fdb('0x18')][_0x3fdb('0x1b')]||null:null,'include':_0x319a6c[_0x3fdb('0x18')]?_0x319a6c['options']['include']?_[_0x3fdb('0x1c')](_0x319a6c[_0x3fdb('0x18')]['include'],function(_0xaf7f8f){return{'model':db[_0xaf7f8f['model']],'as':_0xaf7f8f['as'],'attributes':_0xaf7f8f['attributes'],'include':_0xaf7f8f[_0x3fdb('0x1d')]?_[_0x3fdb('0x1c')](_0xaf7f8f['include'],function(_0x2a634a){return{'model':db[_0x2a634a['model']],'as':_0x2a634a['as'],'attributes':_0x2a634a[_0x3fdb('0x1a')],'include':_0x2a634a[_0x3fdb('0x1d')]?_[_0x3fdb('0x1c')](_0x2a634a[_0x3fdb('0x1d')],function(_0x3d6fbe){return{'model':db[_0x3d6fbe[_0x3fdb('0x1e')]],'as':_0x3d6fbe['as'],'attributes':_0x3d6fbe[_0x3fdb('0x1a')]};}):[]};}):[]};}):[]:[]})[_0x3fdb('0x1f')](function(_0x5ab806){logger['info'](_0x3fdb('0x20'),_0x319a6c);logger[_0x3fdb('0x11')](_0x3fdb('0x20'),_0x319a6c,JSON[_0x3fdb('0x13')](_0x5ab806));_0x44c8b2(_0x5ab806);})[_0x3fdb('0x16')](function(_0xa87d82){logger[_0x3fdb('0x14')](_0x3fdb('0x20'),_0xa87d82['message'],_0x319a6c);_0x1bbad7(_0x3218af[_0x3fdb('0x14')](0x1f4,_0xa87d82[_0x3fdb('0x15')]));});});};