Built motion from commit 9d7072cc.|2.5.39
[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 _0x4b82=['../../config/logger','rpc','client','http','redis','defaults','localhost','socket.io-emitter','./cmContact.socket','register','request','then','info','CmContact,\x20%s,\x20%s','request\x20sent','CmContact,\x20%s,\x20%s,\x20%s','error','code','message','result','GetCmContact','CmContact','findAll','options','limit','map','include','model','attributes','debug','stringify','catch','CreateCmContact','create','body','keys','length','startsWith','update','table','set','where','id\x20=\x20?','toString','sequelize','query','lodash','util','moment','randomstring','ioredis','squel'];(function(_0x5c351c,_0x2046d8){var _0x26f3b3=function(_0x47ac18){while(--_0x47ac18){_0x5c351c['push'](_0x5c351c['shift']());}};_0x26f3b3(++_0x2046d8);}(_0x4b82,0x132));var _0x24b8=function(_0x1773f7,_0x54318f){_0x1773f7=_0x1773f7-0x0;var _0x1983fb=_0x4b82[_0x1773f7];return _0x1983fb;};'use strict';var _=require(_0x24b8('0x0'));var util=require(_0x24b8('0x1'));var moment=require(_0x24b8('0x2'));var BPromise=require('bluebird');var rs=require(_0x24b8('0x3'));var fs=require('fs');var Redis=require(_0x24b8('0x4'));var squel=require(_0x24b8('0x5'));var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require(_0x24b8('0x6'))(_0x24b8('0x7'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson[_0x24b8('0x8')][_0x24b8('0x9')]({'port':0x232a});config[_0x24b8('0xa')]=_[_0x24b8('0xb')](config[_0x24b8('0xa')],{'host':_0x24b8('0xc'),'port':0x18eb});var socket=require(_0x24b8('0xd'))(new Redis(config[_0x24b8('0xa')]));require(_0x24b8('0xe'))[_0x24b8('0xf')](socket);function respondWithRpcPromise(_0x1c2c86,_0x5649e6,_0x21815d){return new BPromise(function(_0x4e085f,_0x24439d){return client[_0x24b8('0x10')](_0x1c2c86,_0x21815d)[_0x24b8('0x11')](function(_0x319f22){logger[_0x24b8('0x12')](_0x24b8('0x13'),_0x5649e6,_0x24b8('0x14'));logger['debug'](_0x24b8('0x15'),_0x5649e6,_0x24b8('0x14'),JSON['stringify'](_0x319f22));if(_0x319f22[_0x24b8('0x16')]){if(_0x319f22['error'][_0x24b8('0x17')]===0x1f4){logger['error'](_0x24b8('0x13'),_0x5649e6,_0x319f22[_0x24b8('0x16')][_0x24b8('0x18')]);return _0x24439d(_0x319f22[_0x24b8('0x16')][_0x24b8('0x18')]);}logger[_0x24b8('0x16')](_0x24b8('0x13'),_0x5649e6,_0x319f22[_0x24b8('0x16')][_0x24b8('0x18')]);return _0x4e085f(_0x319f22[_0x24b8('0x16')][_0x24b8('0x18')]);}else{logger[_0x24b8('0x12')]('CmContact,\x20%s,\x20%s',_0x5649e6,_0x24b8('0x14'));_0x4e085f(_0x319f22[_0x24b8('0x19')][_0x24b8('0x18')]);}})['catch'](function(_0x40ddb4){logger[_0x24b8('0x16')]('CmContact,\x20%s,\x20%s',_0x5649e6,_0x40ddb4);_0x24439d(_0x40ddb4);});});}exports[_0x24b8('0x1a')]=function(_0x532c29){var _0x2765f2=this;return new Promise(function(_0x3d1aeb,_0xf334dd){return db[_0x24b8('0x1b')][_0x24b8('0x1c')]({'raw':_0x532c29['options']?_0x532c29['options']['raw']===undefined?!![]:![]:!![],'where':_0x532c29[_0x24b8('0x1d')]?_0x532c29[_0x24b8('0x1d')]['where']||null:null,'attributes':_0x532c29[_0x24b8('0x1d')]?_0x532c29['options']['attributes']||null:null,'limit':_0x532c29[_0x24b8('0x1d')]?_0x532c29[_0x24b8('0x1d')][_0x24b8('0x1e')]||null:null,'include':_0x532c29['options']?_0x532c29[_0x24b8('0x1d')]['include']?_[_0x24b8('0x1f')](_0x532c29['options'][_0x24b8('0x20')],function(_0x3be0fa){return{'model':db[_0x3be0fa[_0x24b8('0x21')]],'as':_0x3be0fa['as'],'attributes':_0x3be0fa[_0x24b8('0x22')],'include':_0x3be0fa['include']?_[_0x24b8('0x1f')](_0x3be0fa[_0x24b8('0x20')],function(_0x563e63){return{'model':db[_0x563e63[_0x24b8('0x21')]],'as':_0x563e63['as'],'attributes':_0x563e63[_0x24b8('0x22')],'include':_0x563e63['include']?_[_0x24b8('0x1f')](_0x563e63['include'],function(_0x10631c){return{'model':db[_0x10631c[_0x24b8('0x21')]],'as':_0x10631c['as'],'attributes':_0x10631c[_0x24b8('0x22')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x1ff59a){logger[_0x24b8('0x12')]('GetCmContact',_0x532c29);logger[_0x24b8('0x23')](_0x24b8('0x1a'),_0x532c29,JSON[_0x24b8('0x24')](_0x1ff59a));_0x3d1aeb(_0x1ff59a);})[_0x24b8('0x25')](function(_0x3f2305){logger[_0x24b8('0x16')](_0x24b8('0x1a'),_0x3f2305[_0x24b8('0x18')],_0x532c29);_0xf334dd(_0x2765f2['error'](0x1f4,_0x3f2305[_0x24b8('0x18')]));});});};exports[_0x24b8('0x26')]=function(_0x58bd98){var _0x54a30a=this;return new Promise(function(_0xd0bd4b,_0x168b82){return db[_0x24b8('0x1b')][_0x24b8('0x27')](_0x58bd98[_0x24b8('0x28')],{'raw':_0x58bd98['options']?_0x58bd98[_0x24b8('0x1d')]['raw']===undefined?!![]:![]:!![]})[_0x24b8('0x11')](function(_0x38892b){var _0x584449;for(var _0x8cebd5=0x0;_0x8cebd5<Object[_0x24b8('0x29')](_0x58bd98[_0x24b8('0x28')])[_0x24b8('0x2a')];_0x8cebd5++){var _0x2c616c=Object['keys'](_0x58bd98[_0x24b8('0x28')])[_0x8cebd5];if(_0x2c616c[_0x24b8('0x2b')]('cf_')){_0x584449=squel[_0x24b8('0x2c')]()[_0x24b8('0x2d')]('cm_contacts')[_0x24b8('0x2e')](_0x2c616c,_0x58bd98[_0x24b8('0x28')][_0x2c616c])[_0x24b8('0x2f')](_0x24b8('0x30'),_0x38892b['id'])[_0x24b8('0x31')]();break;}}if(!_0x584449)return _0x38892b;return db[_0x24b8('0x32')][_0x24b8('0x33')](_0x584449)[_0x24b8('0x11')](function(){return _0x38892b;});})['then'](function(_0x2018cd){logger[_0x24b8('0x12')](_0x24b8('0x26'),_0x58bd98);logger[_0x24b8('0x23')](_0x24b8('0x26'),_0x58bd98,JSON[_0x24b8('0x24')](_0x2018cd));_0xd0bd4b(_0x2018cd);})['catch'](function(_0x546441){logger[_0x24b8('0x16')](_0x24b8('0x26'),_0x546441[_0x24b8('0x18')],_0x58bd98);_0x168b82(_0x54a30a[_0x24b8('0x16')](0x1f4,_0x546441['message']));});});};