bcb36f9b2d905e477aa6fa01223954c068b8729f
[motion2.git] / server / api / cmContact / cmContact.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 _0xa5d3=['ioredis','../../mysqldb','jayson/promise','client','redis','defaults','localhost','socket.io-emitter','request','CmContact,\x20%s,\x20%s','request\x20sent','CmContact,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','GetCmContact','options','raw','where','limit','include','model','attributes','map','then','info','catch','CreateCmContact','CmContact','create','keys','body','length','cf_','table','cm_contacts','id\x20=\x20?','toString','sequelize','debug','lodash','moment','bluebird','randomstring'];(function(_0x2d9f28,_0x58854a){var _0xd1307=function(_0x185312){while(--_0x185312){_0x2d9f28['push'](_0x2d9f28['shift']());}};_0xd1307(++_0x58854a);}(_0xa5d3,0xe2));var _0x3a5d=function(_0x18b591,_0x2b65dd){_0x18b591=_0x18b591-0x0;var _0xb6773a=_0xa5d3[_0x18b591];return _0xb6773a;};'use strict';var _=require(_0x3a5d('0x0'));var util=require('util');var moment=require(_0x3a5d('0x1'));var BPromise=require(_0x3a5d('0x2'));var rs=require(_0x3a5d('0x3'));var fs=require('fs');var Redis=require(_0x3a5d('0x4'));var squel=require('squel');var db=require(_0x3a5d('0x5'))['db'];var utils=require('../../config/utils');var logger=require('../../config/logger')('rpc');var config=require('../../config/environment');var jayson=require(_0x3a5d('0x6'));var client=jayson[_0x3a5d('0x7')]['http']({'port':0x232a});config[_0x3a5d('0x8')]=_[_0x3a5d('0x9')](config[_0x3a5d('0x8')],{'host':_0x3a5d('0xa'),'port':0x18eb});var socket=require(_0x3a5d('0xb'))(new Redis(config[_0x3a5d('0x8')]));require('./cmContact.socket')['register'](socket);function respondWithRpcPromise(_0x1c21c9,_0x434421,_0x55caf4){return new BPromise(function(_0x58df6f,_0x259982){return client[_0x3a5d('0xc')](_0x1c21c9,_0x55caf4)['then'](function(_0x50acff){logger['info'](_0x3a5d('0xd'),_0x434421,_0x3a5d('0xe'));logger['debug'](_0x3a5d('0xf'),_0x434421,_0x3a5d('0xe'),JSON[_0x3a5d('0x10')](_0x50acff));if(_0x50acff[_0x3a5d('0x11')]){if(_0x50acff[_0x3a5d('0x11')][_0x3a5d('0x12')]===0x1f4){logger[_0x3a5d('0x11')](_0x3a5d('0xd'),_0x434421,_0x50acff['error'][_0x3a5d('0x13')]);return _0x259982(_0x50acff[_0x3a5d('0x11')][_0x3a5d('0x13')]);}logger[_0x3a5d('0x11')]('CmContact,\x20%s,\x20%s',_0x434421,_0x50acff['error'][_0x3a5d('0x13')]);return _0x58df6f(_0x50acff[_0x3a5d('0x11')][_0x3a5d('0x13')]);}else{logger['info']('CmContact,\x20%s,\x20%s',_0x434421,_0x3a5d('0xe'));_0x58df6f(_0x50acff[_0x3a5d('0x14')]['message']);}})['catch'](function(_0x4289d6){logger[_0x3a5d('0x11')]('CmContact,\x20%s,\x20%s',_0x434421,_0x4289d6);_0x259982(_0x4289d6);});});}exports[_0x3a5d('0x15')]=function(_0x596e21){var _0x3aa658=this;return new Promise(function(_0x1808f7,_0x5a4222){return db['CmContact']['findAll']({'raw':_0x596e21[_0x3a5d('0x16')]?_0x596e21[_0x3a5d('0x16')][_0x3a5d('0x17')]===undefined?!![]:![]:!![],'where':_0x596e21['options']?_0x596e21[_0x3a5d('0x16')][_0x3a5d('0x18')]||null:null,'attributes':_0x596e21[_0x3a5d('0x16')]?_0x596e21[_0x3a5d('0x16')]['attributes']||null:null,'limit':_0x596e21[_0x3a5d('0x16')]?_0x596e21['options'][_0x3a5d('0x19')]||null:null,'include':_0x596e21[_0x3a5d('0x16')]?_0x596e21['options'][_0x3a5d('0x1a')]?_['map'](_0x596e21[_0x3a5d('0x16')][_0x3a5d('0x1a')],function(_0x8251e){return{'model':db[_0x8251e[_0x3a5d('0x1b')]],'as':_0x8251e['as'],'attributes':_0x8251e[_0x3a5d('0x1c')],'include':_0x8251e[_0x3a5d('0x1a')]?_['map'](_0x8251e[_0x3a5d('0x1a')],function(_0x1855a0){return{'model':db[_0x1855a0[_0x3a5d('0x1b')]],'as':_0x1855a0['as'],'attributes':_0x1855a0[_0x3a5d('0x1c')],'include':_0x1855a0[_0x3a5d('0x1a')]?_[_0x3a5d('0x1d')](_0x1855a0[_0x3a5d('0x1a')],function(_0x24e0cd){return{'model':db[_0x24e0cd[_0x3a5d('0x1b')]],'as':_0x24e0cd['as'],'attributes':_0x24e0cd[_0x3a5d('0x1c')]};}):[]};}):[]};}):[]:[]})[_0x3a5d('0x1e')](function(_0x568e5a){logger[_0x3a5d('0x1f')]('GetCmContact',_0x596e21);logger['debug'](_0x3a5d('0x15'),_0x596e21,JSON[_0x3a5d('0x10')](_0x568e5a));_0x1808f7(_0x568e5a);})[_0x3a5d('0x20')](function(_0x5df8d1){logger[_0x3a5d('0x11')](_0x3a5d('0x15'),_0x5df8d1['message'],_0x596e21);_0x5a4222(_0x3aa658[_0x3a5d('0x11')](0x1f4,_0x5df8d1[_0x3a5d('0x13')]));});});};exports[_0x3a5d('0x21')]=function(_0x4e1916){var _0x4dcf1d=this;return new Promise(function(_0x1a3fd4,_0x103688){return db[_0x3a5d('0x22')][_0x3a5d('0x23')](_0x4e1916['body'],{'raw':_0x4e1916[_0x3a5d('0x16')]?_0x4e1916[_0x3a5d('0x16')]['raw']===undefined?!![]:![]:!![]})[_0x3a5d('0x1e')](function(_0x793423){var _0xc6783c;for(var _0x463b6f=0x0;_0x463b6f<Object[_0x3a5d('0x24')](_0x4e1916[_0x3a5d('0x25')])[_0x3a5d('0x26')];_0x463b6f++){var _0x39971e=Object['keys'](_0x4e1916[_0x3a5d('0x25')])[_0x463b6f];if(_0x39971e['startsWith'](_0x3a5d('0x27'))){_0xc6783c=squel['update']()[_0x3a5d('0x28')](_0x3a5d('0x29'))['set'](_0x39971e,_0x4e1916['body'][_0x39971e])[_0x3a5d('0x18')](_0x3a5d('0x2a'),_0x793423['id'])[_0x3a5d('0x2b')]();break;}}if(!_0xc6783c)return _0x793423;return db[_0x3a5d('0x2c')]['query'](_0xc6783c)[_0x3a5d('0x1e')](function(){return _0x793423;});})[_0x3a5d('0x1e')](function(_0x755a95){logger[_0x3a5d('0x1f')](_0x3a5d('0x21'),_0x4e1916);logger[_0x3a5d('0x2d')](_0x3a5d('0x21'),_0x4e1916,JSON[_0x3a5d('0x10')](_0x755a95));_0x1a3fd4(_0x755a95);})[_0x3a5d('0x20')](function(_0x38e3a4){logger['error'](_0x3a5d('0x21'),_0x38e3a4[_0x3a5d('0x13')],_0x4e1916);_0x103688(_0x4dcf1d[_0x3a5d('0x11')](0x1f4,_0x38e3a4[_0x3a5d('0x13')]));});});};