31cdd3645d12ec2f174591a59952a0218181aa84
[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 _0x8702=['jayson/promise','client','http','redis','socket.io-emitter','./cmContact.socket','register','request','then','info','request\x20sent','debug','CmContact,\x20%s,\x20%s,\x20%s','stringify','error','code','CmContact,\x20%s,\x20%s','message','result','catch','GetCmContact','options','where','attributes','limit','include','model','map','CreateCmContact','CmContact','create','keys','body','length','startsWith','cf_','update','cm_contacts','set','id\x20=\x20?','toString','sequelize','query','lodash','util','moment','randomstring','ioredis','squel','../../mysqldb','../../config/utils','../../config/logger','rpc'];(function(_0x1da04e,_0x31024b){var _0xdd8c41=function(_0x2036f9){while(--_0x2036f9){_0x1da04e['push'](_0x1da04e['shift']());}};_0xdd8c41(++_0x31024b);}(_0x8702,0x134));var _0x2870=function(_0x5247d0,_0x4d0656){_0x5247d0=_0x5247d0-0x0;var _0x48bd59=_0x8702[_0x5247d0];return _0x48bd59;};'use strict';var _=require(_0x2870('0x0'));var util=require(_0x2870('0x1'));var moment=require(_0x2870('0x2'));var BPromise=require('bluebird');var rs=require(_0x2870('0x3'));var fs=require('fs');var Redis=require(_0x2870('0x4'));var squel=require(_0x2870('0x5'));var db=require(_0x2870('0x6'))['db'];var utils=require(_0x2870('0x7'));var logger=require(_0x2870('0x8'))(_0x2870('0x9'));var config=require('../../config/environment');var jayson=require(_0x2870('0xa'));var client=jayson[_0x2870('0xb')][_0x2870('0xc')]({'port':0x232a});config[_0x2870('0xd')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x2870('0xe'))(new Redis(config[_0x2870('0xd')]));require(_0x2870('0xf'))[_0x2870('0x10')](socket);function respondWithRpcPromise(_0xfd5082,_0x4d3ff1,_0x1654a5){return new BPromise(function(_0x4fcb4e,_0xe08b36){return client[_0x2870('0x11')](_0xfd5082,_0x1654a5)[_0x2870('0x12')](function(_0x13df87){logger[_0x2870('0x13')]('CmContact,\x20%s,\x20%s',_0x4d3ff1,_0x2870('0x14'));logger[_0x2870('0x15')](_0x2870('0x16'),_0x4d3ff1,_0x2870('0x14'),JSON[_0x2870('0x17')](_0x13df87));if(_0x13df87[_0x2870('0x18')]){if(_0x13df87[_0x2870('0x18')][_0x2870('0x19')]===0x1f4){logger[_0x2870('0x18')]('CmContact,\x20%s,\x20%s',_0x4d3ff1,_0x13df87[_0x2870('0x18')]['message']);return _0xe08b36(_0x13df87[_0x2870('0x18')]['message']);}logger['error'](_0x2870('0x1a'),_0x4d3ff1,_0x13df87[_0x2870('0x18')][_0x2870('0x1b')]);return _0x4fcb4e(_0x13df87[_0x2870('0x18')][_0x2870('0x1b')]);}else{logger[_0x2870('0x13')]('CmContact,\x20%s,\x20%s',_0x4d3ff1,'request\x20sent');_0x4fcb4e(_0x13df87[_0x2870('0x1c')][_0x2870('0x1b')]);}})[_0x2870('0x1d')](function(_0x6c6208){logger[_0x2870('0x18')](_0x2870('0x1a'),_0x4d3ff1,_0x6c6208);_0xe08b36(_0x6c6208);});});}exports[_0x2870('0x1e')]=function(_0x25cc74){var _0x4c887b=this;return new Promise(function(_0x3a1fca,_0x24733c){return db['CmContact']['findAll']({'raw':_0x25cc74[_0x2870('0x1f')]?_0x25cc74[_0x2870('0x1f')]['raw']===undefined?!![]:![]:!![],'where':_0x25cc74[_0x2870('0x1f')]?_0x25cc74['options'][_0x2870('0x20')]||null:null,'attributes':_0x25cc74[_0x2870('0x1f')]?_0x25cc74[_0x2870('0x1f')][_0x2870('0x21')]||null:null,'limit':_0x25cc74[_0x2870('0x1f')]?_0x25cc74[_0x2870('0x1f')][_0x2870('0x22')]||null:null,'include':_0x25cc74[_0x2870('0x1f')]?_0x25cc74[_0x2870('0x1f')][_0x2870('0x23')]?_['map'](_0x25cc74[_0x2870('0x1f')][_0x2870('0x23')],function(_0x1d3437){return{'model':db[_0x1d3437[_0x2870('0x24')]],'as':_0x1d3437['as'],'attributes':_0x1d3437[_0x2870('0x21')],'include':_0x1d3437[_0x2870('0x23')]?_[_0x2870('0x25')](_0x1d3437[_0x2870('0x23')],function(_0x6021db){return{'model':db[_0x6021db['model']],'as':_0x6021db['as'],'attributes':_0x6021db[_0x2870('0x21')],'include':_0x6021db[_0x2870('0x23')]?_[_0x2870('0x25')](_0x6021db['include'],function(_0x357b33){return{'model':db[_0x357b33[_0x2870('0x24')]],'as':_0x357b33['as'],'attributes':_0x357b33[_0x2870('0x21')]};}):[]};}):[]};}):[]:[]})[_0x2870('0x12')](function(_0x4ca559){logger[_0x2870('0x13')](_0x2870('0x1e'),_0x25cc74);logger[_0x2870('0x15')](_0x2870('0x1e'),_0x25cc74,JSON['stringify'](_0x4ca559));_0x3a1fca(_0x4ca559);})[_0x2870('0x1d')](function(_0x160ecf){logger['error'](_0x2870('0x1e'),_0x160ecf[_0x2870('0x1b')],_0x25cc74);_0x24733c(_0x4c887b[_0x2870('0x18')](0x1f4,_0x160ecf['message']));});});};exports[_0x2870('0x26')]=function(_0x494ca7){var _0x54802f=this;return new Promise(function(_0x2d62c7,_0x41db64){return db[_0x2870('0x27')][_0x2870('0x28')](_0x494ca7['body'],{'raw':_0x494ca7[_0x2870('0x1f')]?_0x494ca7[_0x2870('0x1f')]['raw']===undefined?!![]:![]:!![]})['then'](function(_0x32a734){var _0xe20376;for(var _0x32d23d=0x0;_0x32d23d<Object[_0x2870('0x29')](_0x494ca7[_0x2870('0x2a')])[_0x2870('0x2b')];_0x32d23d++){var _0x90befa=Object[_0x2870('0x29')](_0x494ca7[_0x2870('0x2a')])[_0x32d23d];if(_0x90befa[_0x2870('0x2c')](_0x2870('0x2d'))){_0xe20376=squel[_0x2870('0x2e')]()['table'](_0x2870('0x2f'))[_0x2870('0x30')](_0x90befa,_0x494ca7[_0x2870('0x2a')][_0x90befa])[_0x2870('0x20')](_0x2870('0x31'),_0x32a734['id'])[_0x2870('0x32')]();break;}}if(!_0xe20376)return _0x32a734;return db[_0x2870('0x33')][_0x2870('0x34')](_0xe20376)[_0x2870('0x12')](function(){return _0x32a734;});})['then'](function(_0x1c01ce){logger[_0x2870('0x13')](_0x2870('0x26'),_0x494ca7);logger[_0x2870('0x15')](_0x2870('0x26'),_0x494ca7,JSON[_0x2870('0x17')](_0x1c01ce));_0x2d62c7(_0x1c01ce);})[_0x2870('0x1d')](function(_0x48df39){logger[_0x2870('0x18')]('CreateCmContact',_0x48df39[_0x2870('0x1b')],_0x494ca7);_0x41db64(_0x54802f[_0x2870('0x18')](0x1f4,_0x48df39['message']));});});};