903c1c5bdbfd751a8595d8f56407e8b8f8e53b44
[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 _0x6c64=['toString','lodash','util','moment','bluebird','randomstring','squel','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','redis','defaults','localhost','socket.io-emitter','./cmContact.socket','register','request','CmContact,\x20%s,\x20%s','request\x20sent','debug','CmContact,\x20%s,\x20%s,\x20%s','error','code','message','info','catch','GetCmContact','CmContact','findAll','options','raw','where','attributes','limit','include','map','model','then','stringify','CreateCmContact','create','body','keys','length','startsWith','cf_','update','cm_contacts','set','id\x20=\x20?'];(function(_0x51c52b,_0x147712){var _0x581ce3=function(_0x2e61a0){while(--_0x2e61a0){_0x51c52b['push'](_0x51c52b['shift']());}};_0x581ce3(++_0x147712);}(_0x6c64,0x1de));var _0x46c6=function(_0x41b33d,_0x30681f){_0x41b33d=_0x41b33d-0x0;var _0xe011f1=_0x6c64[_0x41b33d];return _0xe011f1;};'use strict';var _=require(_0x46c6('0x0'));var util=require(_0x46c6('0x1'));var moment=require(_0x46c6('0x2'));var BPromise=require(_0x46c6('0x3'));var rs=require(_0x46c6('0x4'));var fs=require('fs');var Redis=require('ioredis');var squel=require(_0x46c6('0x5'));var db=require('../../mysqldb')['db'];var utils=require(_0x46c6('0x6'));var logger=require(_0x46c6('0x7'))(_0x46c6('0x8'));var config=require(_0x46c6('0x9'));var jayson=require(_0x46c6('0xa'));var client=jayson[_0x46c6('0xb')]['http']({'port':0x232a});config[_0x46c6('0xc')]=_[_0x46c6('0xd')](config['redis'],{'host':_0x46c6('0xe'),'port':0x18eb});var socket=require(_0x46c6('0xf'))(new Redis(config[_0x46c6('0xc')]));require(_0x46c6('0x10'))[_0x46c6('0x11')](socket);function respondWithRpcPromise(_0x42254e,_0x177ca6,_0x504e17){return new BPromise(function(_0x53234b,_0x3131ba){return client[_0x46c6('0x12')](_0x42254e,_0x504e17)['then'](function(_0x28b097){logger['info'](_0x46c6('0x13'),_0x177ca6,_0x46c6('0x14'));logger[_0x46c6('0x15')](_0x46c6('0x16'),_0x177ca6,_0x46c6('0x14'),JSON['stringify'](_0x28b097));if(_0x28b097['error']){if(_0x28b097[_0x46c6('0x17')][_0x46c6('0x18')]===0x1f4){logger[_0x46c6('0x17')](_0x46c6('0x13'),_0x177ca6,_0x28b097[_0x46c6('0x17')][_0x46c6('0x19')]);return _0x3131ba(_0x28b097[_0x46c6('0x17')]['message']);}logger[_0x46c6('0x17')](_0x46c6('0x13'),_0x177ca6,_0x28b097[_0x46c6('0x17')][_0x46c6('0x19')]);return _0x53234b(_0x28b097[_0x46c6('0x17')][_0x46c6('0x19')]);}else{logger[_0x46c6('0x1a')](_0x46c6('0x13'),_0x177ca6,'request\x20sent');_0x53234b(_0x28b097['result'][_0x46c6('0x19')]);}})[_0x46c6('0x1b')](function(_0x4914b9){logger[_0x46c6('0x17')](_0x46c6('0x13'),_0x177ca6,_0x4914b9);_0x3131ba(_0x4914b9);});});}exports[_0x46c6('0x1c')]=function(_0x2b1eec){var _0x4ea1e4=this;return new Promise(function(_0x149fe5,_0x83175f){return db[_0x46c6('0x1d')][_0x46c6('0x1e')]({'raw':_0x2b1eec['options']?_0x2b1eec[_0x46c6('0x1f')][_0x46c6('0x20')]===undefined?!![]:![]:!![],'where':_0x2b1eec[_0x46c6('0x1f')]?_0x2b1eec[_0x46c6('0x1f')][_0x46c6('0x21')]||null:null,'attributes':_0x2b1eec[_0x46c6('0x1f')]?_0x2b1eec[_0x46c6('0x1f')][_0x46c6('0x22')]||null:null,'limit':_0x2b1eec[_0x46c6('0x1f')]?_0x2b1eec[_0x46c6('0x1f')][_0x46c6('0x23')]||null:null,'include':_0x2b1eec[_0x46c6('0x1f')]?_0x2b1eec[_0x46c6('0x1f')][_0x46c6('0x24')]?_[_0x46c6('0x25')](_0x2b1eec[_0x46c6('0x1f')][_0x46c6('0x24')],function(_0x75924c){return{'model':db[_0x75924c[_0x46c6('0x26')]],'as':_0x75924c['as'],'attributes':_0x75924c[_0x46c6('0x22')],'include':_0x75924c[_0x46c6('0x24')]?_[_0x46c6('0x25')](_0x75924c[_0x46c6('0x24')],function(_0x3d84e7){return{'model':db[_0x3d84e7[_0x46c6('0x26')]],'as':_0x3d84e7['as'],'attributes':_0x3d84e7['attributes'],'include':_0x3d84e7[_0x46c6('0x24')]?_[_0x46c6('0x25')](_0x3d84e7[_0x46c6('0x24')],function(_0x18c1cd){return{'model':db[_0x18c1cd[_0x46c6('0x26')]],'as':_0x18c1cd['as'],'attributes':_0x18c1cd[_0x46c6('0x22')]};}):[]};}):[]};}):[]:[]})[_0x46c6('0x27')](function(_0x1f95da){logger[_0x46c6('0x1a')]('GetCmContact',_0x2b1eec);logger[_0x46c6('0x15')]('GetCmContact',_0x2b1eec,JSON[_0x46c6('0x28')](_0x1f95da));_0x149fe5(_0x1f95da);})['catch'](function(_0x574f57){logger[_0x46c6('0x17')]('GetCmContact',_0x574f57[_0x46c6('0x19')],_0x2b1eec);_0x83175f(_0x4ea1e4[_0x46c6('0x17')](0x1f4,_0x574f57[_0x46c6('0x19')]));});});};exports[_0x46c6('0x29')]=function(_0x121635){var _0x2aeeef=this;return new Promise(function(_0x57f3f4,_0x12734a){return db[_0x46c6('0x1d')][_0x46c6('0x2a')](_0x121635[_0x46c6('0x2b')],{'raw':_0x121635['options']?_0x121635['options']['raw']===undefined?!![]:![]:!![]})['then'](function(_0x554642){var _0x198dfc;for(var _0x1342fd=0x0;_0x1342fd<Object[_0x46c6('0x2c')](_0x121635[_0x46c6('0x2b')])[_0x46c6('0x2d')];_0x1342fd++){var _0x2669f4=Object[_0x46c6('0x2c')](_0x121635['body'])[_0x1342fd];if(_0x2669f4[_0x46c6('0x2e')](_0x46c6('0x2f'))){_0x198dfc=squel[_0x46c6('0x30')]()['table'](_0x46c6('0x31'))[_0x46c6('0x32')](_0x2669f4,_0x121635[_0x46c6('0x2b')][_0x2669f4])[_0x46c6('0x21')](_0x46c6('0x33'),_0x554642['id'])[_0x46c6('0x34')]();break;}}if(!_0x198dfc)return _0x554642;return db['sequelize']['query'](_0x198dfc)[_0x46c6('0x27')](function(){return _0x554642;});})['then'](function(_0x2fd8f7){logger[_0x46c6('0x1a')](_0x46c6('0x29'),_0x121635);logger[_0x46c6('0x15')](_0x46c6('0x29'),_0x121635,JSON[_0x46c6('0x28')](_0x2fd8f7));_0x57f3f4(_0x2fd8f7);})[_0x46c6('0x1b')](function(_0x3aacfe){logger[_0x46c6('0x17')](_0x46c6('0x29'),_0x3aacfe['message'],_0x121635);_0x12734a(_0x2aeeef[_0x46c6('0x17')](0x1f4,_0x3aacfe[_0x46c6('0x19')]));});});};