Built motion from commit (unavailable).|2.5.26
[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 _0x7a24=['defaults','localhost','socket.io-emitter','./cmContact.socket','register','request','then','CmContact,\x20%s,\x20%s','request\x20sent','debug','CmContact,\x20%s,\x20%s,\x20%s','error','message','result','catch','findAll','options','raw','where','attributes','limit','include','map','model','info','GetCmContact','CreateCmContact','CmContact','body','keys','length','cf_','update','cm_contacts','id\x20=\x20?','toString','sequelize','query','stringify','lodash','moment','bluebird','randomstring','ioredis','squel','../../config/utils','../../config/environment','jayson/promise','client','http','redis'];(function(_0x3511ba,_0x9281e1){var _0x32df25=function(_0x196649){while(--_0x196649){_0x3511ba['push'](_0x3511ba['shift']());}};_0x32df25(++_0x9281e1);}(_0x7a24,0x1bf));var _0x47a2=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x7a24[_0x3dd15e];return _0x231fd0;};'use strict';var _=require(_0x47a2('0x0'));var util=require('util');var moment=require(_0x47a2('0x1'));var BPromise=require(_0x47a2('0x2'));var rs=require(_0x47a2('0x3'));var fs=require('fs');var Redis=require(_0x47a2('0x4'));var squel=require(_0x47a2('0x5'));var db=require('../../mysqldb')['db'];var utils=require(_0x47a2('0x6'));var logger=require('../../config/logger')('rpc');var config=require(_0x47a2('0x7'));var jayson=require(_0x47a2('0x8'));var client=jayson[_0x47a2('0x9')][_0x47a2('0xa')]({'port':0x232a});config[_0x47a2('0xb')]=_[_0x47a2('0xc')](config[_0x47a2('0xb')],{'host':_0x47a2('0xd'),'port':0x18eb});var socket=require(_0x47a2('0xe'))(new Redis(config[_0x47a2('0xb')]));require(_0x47a2('0xf'))[_0x47a2('0x10')](socket);function respondWithRpcPromise(_0x5652e0,_0x6cd3ae,_0x22874c){return new BPromise(function(_0x377e75,_0xb198f8){return client[_0x47a2('0x11')](_0x5652e0,_0x22874c)[_0x47a2('0x12')](function(_0x342efe){logger['info'](_0x47a2('0x13'),_0x6cd3ae,_0x47a2('0x14'));logger[_0x47a2('0x15')](_0x47a2('0x16'),_0x6cd3ae,_0x47a2('0x14'),JSON['stringify'](_0x342efe));if(_0x342efe[_0x47a2('0x17')]){if(_0x342efe[_0x47a2('0x17')]['code']===0x1f4){logger[_0x47a2('0x17')](_0x47a2('0x13'),_0x6cd3ae,_0x342efe['error']['message']);return _0xb198f8(_0x342efe[_0x47a2('0x17')][_0x47a2('0x18')]);}logger['error']('CmContact,\x20%s,\x20%s',_0x6cd3ae,_0x342efe[_0x47a2('0x17')]['message']);return _0x377e75(_0x342efe[_0x47a2('0x17')]['message']);}else{logger['info']('CmContact,\x20%s,\x20%s',_0x6cd3ae,_0x47a2('0x14'));_0x377e75(_0x342efe[_0x47a2('0x19')][_0x47a2('0x18')]);}})[_0x47a2('0x1a')](function(_0x2d9492){logger[_0x47a2('0x17')](_0x47a2('0x13'),_0x6cd3ae,_0x2d9492);_0xb198f8(_0x2d9492);});});}exports['GetCmContact']=function(_0x8c16f5){var _0x5ed5b8=this;return new Promise(function(_0x24b078,_0x171256){return db['CmContact'][_0x47a2('0x1b')]({'raw':_0x8c16f5[_0x47a2('0x1c')]?_0x8c16f5[_0x47a2('0x1c')][_0x47a2('0x1d')]===undefined?!![]:![]:!![],'where':_0x8c16f5[_0x47a2('0x1c')]?_0x8c16f5['options'][_0x47a2('0x1e')]||null:null,'attributes':_0x8c16f5['options']?_0x8c16f5['options'][_0x47a2('0x1f')]||null:null,'limit':_0x8c16f5[_0x47a2('0x1c')]?_0x8c16f5[_0x47a2('0x1c')][_0x47a2('0x20')]||null:null,'include':_0x8c16f5['options']?_0x8c16f5[_0x47a2('0x1c')][_0x47a2('0x21')]?_[_0x47a2('0x22')](_0x8c16f5['options'][_0x47a2('0x21')],function(_0x493162){return{'model':db[_0x493162['model']],'as':_0x493162['as'],'attributes':_0x493162[_0x47a2('0x1f')],'include':_0x493162[_0x47a2('0x21')]?_[_0x47a2('0x22')](_0x493162[_0x47a2('0x21')],function(_0x11c1aa){return{'model':db[_0x11c1aa[_0x47a2('0x23')]],'as':_0x11c1aa['as'],'attributes':_0x11c1aa['attributes'],'include':_0x11c1aa[_0x47a2('0x21')]?_[_0x47a2('0x22')](_0x11c1aa['include'],function(_0x1e9606){return{'model':db[_0x1e9606[_0x47a2('0x23')]],'as':_0x1e9606['as'],'attributes':_0x1e9606['attributes']};}):[]};}):[]};}):[]:[]})['then'](function(_0x3e8f55){logger[_0x47a2('0x24')](_0x47a2('0x25'),_0x8c16f5);logger[_0x47a2('0x15')](_0x47a2('0x25'),_0x8c16f5,JSON['stringify'](_0x3e8f55));_0x24b078(_0x3e8f55);})[_0x47a2('0x1a')](function(_0x2b0103){logger[_0x47a2('0x17')](_0x47a2('0x25'),_0x2b0103[_0x47a2('0x18')],_0x8c16f5);_0x171256(_0x5ed5b8[_0x47a2('0x17')](0x1f4,_0x2b0103[_0x47a2('0x18')]));});});};exports[_0x47a2('0x26')]=function(_0x19a27c){var _0x18f5dd=this;return new Promise(function(_0x124444,_0x5d3dd8){return db[_0x47a2('0x27')]['create'](_0x19a27c[_0x47a2('0x28')],{'raw':_0x19a27c[_0x47a2('0x1c')]?_0x19a27c[_0x47a2('0x1c')][_0x47a2('0x1d')]===undefined?!![]:![]:!![]})[_0x47a2('0x12')](function(_0x2f60ab){var _0x312c22;for(var _0x1b63b5=0x0;_0x1b63b5<Object[_0x47a2('0x29')](_0x19a27c[_0x47a2('0x28')])[_0x47a2('0x2a')];_0x1b63b5++){var _0x237034=Object[_0x47a2('0x29')](_0x19a27c['body'])[_0x1b63b5];if(_0x237034['startsWith'](_0x47a2('0x2b'))){_0x312c22=squel[_0x47a2('0x2c')]()['table'](_0x47a2('0x2d'))['set'](_0x237034,_0x19a27c[_0x47a2('0x28')][_0x237034])['where'](_0x47a2('0x2e'),_0x2f60ab['id'])[_0x47a2('0x2f')]();break;}}if(!_0x312c22)return _0x2f60ab;return db[_0x47a2('0x30')][_0x47a2('0x31')](_0x312c22)['then'](function(){return _0x2f60ab;});})['then'](function(_0x34d901){logger['info']('CreateCmContact',_0x19a27c);logger[_0x47a2('0x15')](_0x47a2('0x26'),_0x19a27c,JSON[_0x47a2('0x32')](_0x34d901));_0x124444(_0x34d901);})[_0x47a2('0x1a')](function(_0x1acdf8){logger['error'](_0x47a2('0x26'),_0x1acdf8[_0x47a2('0x18')],_0x19a27c);_0x5d3dd8(_0x18f5dd[_0x47a2('0x17')](0x1f4,_0x1acdf8[_0x47a2('0x18')]));});});};