Built motion from commit 19a84241.|2.5.34
[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 _0xa90b=['squel','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','http','defaults','redis','localhost','socket.io-emitter','./cmContact.socket','register','request','then','info','CmContact,\x20%s,\x20%s','request\x20sent','CmContact,\x20%s,\x20%s,\x20%s','stringify','error','message','result','catch','GetCmContact','CmContact','findAll','options','raw','where','attributes','limit','include','map','model','debug','CreateCmContact','body','length','keys','cf_','table','cm_contacts','set','toString','sequelize','lodash','moment','bluebird','randomstring'];(function(_0x521929,_0x479be5){var _0x632436=function(_0x288290){while(--_0x288290){_0x521929['push'](_0x521929['shift']());}};_0x632436(++_0x479be5);}(_0xa90b,0x1f0));var _0xba90=function(_0x2aa0e7,_0x4e5145){_0x2aa0e7=_0x2aa0e7-0x0;var _0x1472c0=_0xa90b[_0x2aa0e7];return _0x1472c0;};'use strict';var _=require(_0xba90('0x0'));var util=require('util');var moment=require(_0xba90('0x1'));var BPromise=require(_0xba90('0x2'));var rs=require(_0xba90('0x3'));var fs=require('fs');var Redis=require('ioredis');var squel=require(_0xba90('0x4'));var db=require(_0xba90('0x5'))['db'];var utils=require(_0xba90('0x6'));var logger=require(_0xba90('0x7'))('rpc');var config=require(_0xba90('0x8'));var jayson=require(_0xba90('0x9'));var client=jayson['client'][_0xba90('0xa')]({'port':0x232a});config['redis']=_[_0xba90('0xb')](config[_0xba90('0xc')],{'host':_0xba90('0xd'),'port':0x18eb});var socket=require(_0xba90('0xe'))(new Redis(config['redis']));require(_0xba90('0xf'))[_0xba90('0x10')](socket);function respondWithRpcPromise(_0x3567e1,_0x3c0536,_0x3a7745){return new BPromise(function(_0x599b9b,_0x2c1355){return client[_0xba90('0x11')](_0x3567e1,_0x3a7745)[_0xba90('0x12')](function(_0x42c501){logger[_0xba90('0x13')](_0xba90('0x14'),_0x3c0536,_0xba90('0x15'));logger['debug'](_0xba90('0x16'),_0x3c0536,'request\x20sent',JSON[_0xba90('0x17')](_0x42c501));if(_0x42c501[_0xba90('0x18')]){if(_0x42c501[_0xba90('0x18')]['code']===0x1f4){logger[_0xba90('0x18')](_0xba90('0x14'),_0x3c0536,_0x42c501['error'][_0xba90('0x19')]);return _0x2c1355(_0x42c501[_0xba90('0x18')][_0xba90('0x19')]);}logger[_0xba90('0x18')](_0xba90('0x14'),_0x3c0536,_0x42c501[_0xba90('0x18')][_0xba90('0x19')]);return _0x599b9b(_0x42c501[_0xba90('0x18')]['message']);}else{logger['info']('CmContact,\x20%s,\x20%s',_0x3c0536,'request\x20sent');_0x599b9b(_0x42c501[_0xba90('0x1a')]['message']);}})[_0xba90('0x1b')](function(_0x46fb5c){logger[_0xba90('0x18')](_0xba90('0x14'),_0x3c0536,_0x46fb5c);_0x2c1355(_0x46fb5c);});});}exports[_0xba90('0x1c')]=function(_0x26dbf3){var _0x399740=this;return new Promise(function(_0x12f3cd,_0x17f11e){return db[_0xba90('0x1d')][_0xba90('0x1e')]({'raw':_0x26dbf3[_0xba90('0x1f')]?_0x26dbf3[_0xba90('0x1f')][_0xba90('0x20')]===undefined?!![]:![]:!![],'where':_0x26dbf3[_0xba90('0x1f')]?_0x26dbf3['options'][_0xba90('0x21')]||null:null,'attributes':_0x26dbf3['options']?_0x26dbf3[_0xba90('0x1f')][_0xba90('0x22')]||null:null,'limit':_0x26dbf3[_0xba90('0x1f')]?_0x26dbf3[_0xba90('0x1f')][_0xba90('0x23')]||null:null,'include':_0x26dbf3[_0xba90('0x1f')]?_0x26dbf3[_0xba90('0x1f')][_0xba90('0x24')]?_[_0xba90('0x25')](_0x26dbf3[_0xba90('0x1f')][_0xba90('0x24')],function(_0x2c551e){return{'model':db[_0x2c551e[_0xba90('0x26')]],'as':_0x2c551e['as'],'attributes':_0x2c551e['attributes'],'include':_0x2c551e[_0xba90('0x24')]?_['map'](_0x2c551e[_0xba90('0x24')],function(_0x1dab91){return{'model':db[_0x1dab91[_0xba90('0x26')]],'as':_0x1dab91['as'],'attributes':_0x1dab91[_0xba90('0x22')],'include':_0x1dab91['include']?_[_0xba90('0x25')](_0x1dab91[_0xba90('0x24')],function(_0x278785){return{'model':db[_0x278785[_0xba90('0x26')]],'as':_0x278785['as'],'attributes':_0x278785[_0xba90('0x22')]};}):[]};}):[]};}):[]:[]})[_0xba90('0x12')](function(_0x1ea02a){logger[_0xba90('0x13')](_0xba90('0x1c'),_0x26dbf3);logger[_0xba90('0x27')]('GetCmContact',_0x26dbf3,JSON[_0xba90('0x17')](_0x1ea02a));_0x12f3cd(_0x1ea02a);})[_0xba90('0x1b')](function(_0x1dd564){logger['error'](_0xba90('0x1c'),_0x1dd564[_0xba90('0x19')],_0x26dbf3);_0x17f11e(_0x399740[_0xba90('0x18')](0x1f4,_0x1dd564[_0xba90('0x19')]));});});};exports[_0xba90('0x28')]=function(_0x5f4025){var _0x4f1184=this;return new Promise(function(_0xf622aa,_0x2a913f){return db['CmContact']['create'](_0x5f4025[_0xba90('0x29')],{'raw':_0x5f4025[_0xba90('0x1f')]?_0x5f4025[_0xba90('0x1f')][_0xba90('0x20')]===undefined?!![]:![]:!![]})[_0xba90('0x12')](function(_0xb4458b){var _0x93fb4a;for(var _0x437adf=0x0;_0x437adf<Object['keys'](_0x5f4025[_0xba90('0x29')])[_0xba90('0x2a')];_0x437adf++){var _0x21273b=Object[_0xba90('0x2b')](_0x5f4025['body'])[_0x437adf];if(_0x21273b['startsWith'](_0xba90('0x2c'))){_0x93fb4a=squel['update']()[_0xba90('0x2d')](_0xba90('0x2e'))[_0xba90('0x2f')](_0x21273b,_0x5f4025['body'][_0x21273b])[_0xba90('0x21')]('id\x20=\x20?',_0xb4458b['id'])[_0xba90('0x30')]();break;}}if(!_0x93fb4a)return _0xb4458b;return db[_0xba90('0x31')]['query'](_0x93fb4a)['then'](function(){return _0xb4458b;});})[_0xba90('0x12')](function(_0x27fb09){logger[_0xba90('0x13')](_0xba90('0x28'),_0x5f4025);logger[_0xba90('0x27')]('CreateCmContact',_0x5f4025,JSON[_0xba90('0x17')](_0x27fb09));_0xf622aa(_0x27fb09);})[_0xba90('0x1b')](function(_0x326155){logger[_0xba90('0x18')]('CreateCmContact',_0x326155['message'],_0x5f4025);_0x2a913f(_0x4f1184[_0xba90('0x18')](0x1f4,_0x326155['message']));});});};