Built motion from commit ddca4d0d.|2.5.47
[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 _0x1d39=['CmContact,\x20%s,\x20%s,\x20%s','error','code','message','catch','GetCmContact','CmContact','findAll','options','raw','where','attributes','limit','map','include','model','create','body','keys','table','cm_contacts','id\x20=\x20?','toString','sequelize','query','CreateCmContact','stringify','lodash','util','bluebird','randomstring','ioredis','squel','../../mysqldb','../../config/utils','jayson/promise','http','defaults','localhost','socket.io-emitter','redis','./cmContact.socket','register','request','then','info','CmContact,\x20%s,\x20%s','request\x20sent','debug'];(function(_0x4b9b5c,_0x408192){var _0x4dc9cb=function(_0x175403){while(--_0x175403){_0x4b9b5c['push'](_0x4b9b5c['shift']());}};_0x4dc9cb(++_0x408192);}(_0x1d39,0x1a3));var _0x91d3=function(_0x648bd7,_0x91facc){_0x648bd7=_0x648bd7-0x0;var _0x1b043f=_0x1d39[_0x648bd7];return _0x1b043f;};'use strict';var _=require(_0x91d3('0x0'));var util=require(_0x91d3('0x1'));var moment=require('moment');var BPromise=require(_0x91d3('0x2'));var rs=require(_0x91d3('0x3'));var fs=require('fs');var Redis=require(_0x91d3('0x4'));var squel=require(_0x91d3('0x5'));var db=require(_0x91d3('0x6'))['db'];var utils=require(_0x91d3('0x7'));var logger=require('../../config/logger')('rpc');var config=require('../../config/environment');var jayson=require(_0x91d3('0x8'));var client=jayson['client'][_0x91d3('0x9')]({'port':0x232a});config['redis']=_[_0x91d3('0xa')](config['redis'],{'host':_0x91d3('0xb'),'port':0x18eb});var socket=require(_0x91d3('0xc'))(new Redis(config[_0x91d3('0xd')]));require(_0x91d3('0xe'))[_0x91d3('0xf')](socket);function respondWithRpcPromise(_0x2f3b39,_0x53d383,_0x346305){return new BPromise(function(_0x19921f,_0x51b822){return client[_0x91d3('0x10')](_0x2f3b39,_0x346305)[_0x91d3('0x11')](function(_0x230123){logger[_0x91d3('0x12')](_0x91d3('0x13'),_0x53d383,_0x91d3('0x14'));logger[_0x91d3('0x15')](_0x91d3('0x16'),_0x53d383,_0x91d3('0x14'),JSON['stringify'](_0x230123));if(_0x230123['error']){if(_0x230123[_0x91d3('0x17')][_0x91d3('0x18')]===0x1f4){logger[_0x91d3('0x17')]('CmContact,\x20%s,\x20%s',_0x53d383,_0x230123[_0x91d3('0x17')][_0x91d3('0x19')]);return _0x51b822(_0x230123['error'][_0x91d3('0x19')]);}logger[_0x91d3('0x17')](_0x91d3('0x13'),_0x53d383,_0x230123['error'][_0x91d3('0x19')]);return _0x19921f(_0x230123[_0x91d3('0x17')][_0x91d3('0x19')]);}else{logger['info']('CmContact,\x20%s,\x20%s',_0x53d383,'request\x20sent');_0x19921f(_0x230123['result']['message']);}})[_0x91d3('0x1a')](function(_0x5b5ef4){logger['error']('CmContact,\x20%s,\x20%s',_0x53d383,_0x5b5ef4);_0x51b822(_0x5b5ef4);});});}exports[_0x91d3('0x1b')]=function(_0x217604){var _0x3e5052=this;return new Promise(function(_0x7104ef,_0xa6ce94){return db[_0x91d3('0x1c')][_0x91d3('0x1d')]({'raw':_0x217604['options']?_0x217604[_0x91d3('0x1e')][_0x91d3('0x1f')]===undefined?!![]:![]:!![],'where':_0x217604['options']?_0x217604[_0x91d3('0x1e')][_0x91d3('0x20')]||null:null,'attributes':_0x217604[_0x91d3('0x1e')]?_0x217604[_0x91d3('0x1e')][_0x91d3('0x21')]||null:null,'limit':_0x217604[_0x91d3('0x1e')]?_0x217604[_0x91d3('0x1e')][_0x91d3('0x22')]||null:null,'include':_0x217604[_0x91d3('0x1e')]?_0x217604[_0x91d3('0x1e')]['include']?_[_0x91d3('0x23')](_0x217604[_0x91d3('0x1e')]['include'],function(_0xe9fdc4){return{'model':db[_0xe9fdc4['model']],'as':_0xe9fdc4['as'],'attributes':_0xe9fdc4['attributes'],'include':_0xe9fdc4['include']?_['map'](_0xe9fdc4[_0x91d3('0x24')],function(_0x108d4d){return{'model':db[_0x108d4d['model']],'as':_0x108d4d['as'],'attributes':_0x108d4d[_0x91d3('0x21')],'include':_0x108d4d[_0x91d3('0x24')]?_['map'](_0x108d4d[_0x91d3('0x24')],function(_0x5769b2){return{'model':db[_0x5769b2[_0x91d3('0x25')]],'as':_0x5769b2['as'],'attributes':_0x5769b2[_0x91d3('0x21')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x4af08d){logger[_0x91d3('0x12')](_0x91d3('0x1b'),_0x217604);logger[_0x91d3('0x15')](_0x91d3('0x1b'),_0x217604,JSON['stringify'](_0x4af08d));_0x7104ef(_0x4af08d);})[_0x91d3('0x1a')](function(_0x329798){logger['error'](_0x91d3('0x1b'),_0x329798['message'],_0x217604);_0xa6ce94(_0x3e5052[_0x91d3('0x17')](0x1f4,_0x329798['message']));});});};exports['CreateCmContact']=function(_0x18d49c){var _0x5334d0=this;return new Promise(function(_0x456ed5,_0x438a18){return db[_0x91d3('0x1c')][_0x91d3('0x26')](_0x18d49c[_0x91d3('0x27')],{'raw':_0x18d49c[_0x91d3('0x1e')]?_0x18d49c[_0x91d3('0x1e')]['raw']===undefined?!![]:![]:!![]})[_0x91d3('0x11')](function(_0x264f44){var _0x579dd5;for(var _0x2b2c1d=0x0;_0x2b2c1d<Object['keys'](_0x18d49c[_0x91d3('0x27')])['length'];_0x2b2c1d++){var _0x4a438b=Object[_0x91d3('0x28')](_0x18d49c[_0x91d3('0x27')])[_0x2b2c1d];if(_0x4a438b['startsWith']('cf_')){_0x579dd5=squel['update']()[_0x91d3('0x29')](_0x91d3('0x2a'))['set'](_0x4a438b,_0x18d49c[_0x91d3('0x27')][_0x4a438b])[_0x91d3('0x20')](_0x91d3('0x2b'),_0x264f44['id'])[_0x91d3('0x2c')]();break;}}if(!_0x579dd5)return _0x264f44;return db[_0x91d3('0x2d')][_0x91d3('0x2e')](_0x579dd5)['then'](function(){return _0x264f44;});})[_0x91d3('0x11')](function(_0x31475c){logger[_0x91d3('0x12')](_0x91d3('0x2f'),_0x18d49c);logger[_0x91d3('0x15')]('CreateCmContact',_0x18d49c,JSON[_0x91d3('0x30')](_0x31475c));_0x456ed5(_0x31475c);})[_0x91d3('0x1a')](function(_0xa88d40){logger[_0x91d3('0x17')](_0x91d3('0x2f'),_0xa88d40[_0x91d3('0x19')],_0x18d49c);_0x438a18(_0x5334d0[_0x91d3('0x17')](0x1f4,_0xa88d40['message']));});});};