a5704266cda9d846bd2cb0644d56034d6ec13318
[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 _0x6382=['socket.io-emitter','./cmContact.socket','request','info','CmContact,\x20%s,\x20%s','debug','request\x20sent','stringify','error','code','message','result','GetCmContact','CmContact','options','raw','where','attributes','limit','map','include','catch','create','body','then','keys','length','startsWith','update','table','cm_contacts','set','id\x20=\x20?','toString','sequelize','query','CreateCmContact','util','moment','bluebird','randomstring','ioredis','squel','../../config/utils','rpc','../../config/environment','client','http','redis'];(function(_0x490ef3,_0x15ae09){var _0x4f9dc0=function(_0x559420){while(--_0x559420){_0x490ef3['push'](_0x490ef3['shift']());}};_0x4f9dc0(++_0x15ae09);}(_0x6382,0x14b));var _0x2638=function(_0x1ee627,_0x23a5d4){_0x1ee627=_0x1ee627-0x0;var _0x2f7649=_0x6382[_0x1ee627];return _0x2f7649;};'use strict';var _=require('lodash');var util=require(_0x2638('0x0'));var moment=require(_0x2638('0x1'));var BPromise=require(_0x2638('0x2'));var rs=require(_0x2638('0x3'));var fs=require('fs');var Redis=require(_0x2638('0x4'));var squel=require(_0x2638('0x5'));var db=require('../../mysqldb')['db'];var utils=require(_0x2638('0x6'));var logger=require('../../config/logger')(_0x2638('0x7'));var config=require(_0x2638('0x8'));var jayson=require('jayson/promise');var client=jayson[_0x2638('0x9')][_0x2638('0xa')]({'port':0x232a});config[_0x2638('0xb')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x2638('0xc'))(new Redis(config[_0x2638('0xb')]));require(_0x2638('0xd'))['register'](socket);function respondWithRpcPromise(_0x5208ce,_0x4e33b8,_0x399ab4){return new BPromise(function(_0x3758cf,_0x485512){return client[_0x2638('0xe')](_0x5208ce,_0x399ab4)['then'](function(_0x48d090){logger[_0x2638('0xf')](_0x2638('0x10'),_0x4e33b8,'request\x20sent');logger[_0x2638('0x11')]('CmContact,\x20%s,\x20%s,\x20%s',_0x4e33b8,_0x2638('0x12'),JSON[_0x2638('0x13')](_0x48d090));if(_0x48d090[_0x2638('0x14')]){if(_0x48d090[_0x2638('0x14')][_0x2638('0x15')]===0x1f4){logger[_0x2638('0x14')](_0x2638('0x10'),_0x4e33b8,_0x48d090[_0x2638('0x14')]['message']);return _0x485512(_0x48d090[_0x2638('0x14')][_0x2638('0x16')]);}logger['error'](_0x2638('0x10'),_0x4e33b8,_0x48d090[_0x2638('0x14')][_0x2638('0x16')]);return _0x3758cf(_0x48d090[_0x2638('0x14')][_0x2638('0x16')]);}else{logger[_0x2638('0xf')](_0x2638('0x10'),_0x4e33b8,_0x2638('0x12'));_0x3758cf(_0x48d090[_0x2638('0x17')][_0x2638('0x16')]);}})['catch'](function(_0x13e2c9){logger[_0x2638('0x14')](_0x2638('0x10'),_0x4e33b8,_0x13e2c9);_0x485512(_0x13e2c9);});});}exports[_0x2638('0x18')]=function(_0x275339){var _0x431bf2=this;return new Promise(function(_0x2c9776,_0xfbdc7d){return db[_0x2638('0x19')]['findAll']({'raw':_0x275339[_0x2638('0x1a')]?_0x275339[_0x2638('0x1a')][_0x2638('0x1b')]===undefined?!![]:![]:!![],'where':_0x275339[_0x2638('0x1a')]?_0x275339[_0x2638('0x1a')][_0x2638('0x1c')]||null:null,'attributes':_0x275339[_0x2638('0x1a')]?_0x275339['options'][_0x2638('0x1d')]||null:null,'limit':_0x275339['options']?_0x275339[_0x2638('0x1a')][_0x2638('0x1e')]||null:null,'include':_0x275339['options']?_0x275339['options']['include']?_[_0x2638('0x1f')](_0x275339[_0x2638('0x1a')][_0x2638('0x20')],function(_0x4593ff){return{'model':db[_0x4593ff['model']],'as':_0x4593ff['as'],'attributes':_0x4593ff[_0x2638('0x1d')],'include':_0x4593ff[_0x2638('0x20')]?_[_0x2638('0x1f')](_0x4593ff[_0x2638('0x20')],function(_0x15cf65){return{'model':db[_0x15cf65['model']],'as':_0x15cf65['as'],'attributes':_0x15cf65[_0x2638('0x1d')],'include':_0x15cf65[_0x2638('0x20')]?_[_0x2638('0x1f')](_0x15cf65[_0x2638('0x20')],function(_0x551820){return{'model':db[_0x551820['model']],'as':_0x551820['as'],'attributes':_0x551820[_0x2638('0x1d')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x228904){logger['info'](_0x2638('0x18'),_0x275339);logger[_0x2638('0x11')]('GetCmContact',_0x275339,JSON['stringify'](_0x228904));_0x2c9776(_0x228904);})[_0x2638('0x21')](function(_0x160eb9){logger[_0x2638('0x14')](_0x2638('0x18'),_0x160eb9[_0x2638('0x16')],_0x275339);_0xfbdc7d(_0x431bf2[_0x2638('0x14')](0x1f4,_0x160eb9[_0x2638('0x16')]));});});};exports['CreateCmContact']=function(_0x48110c){var _0x1390d1=this;return new Promise(function(_0x2b352a,_0xf1473c){return db['CmContact'][_0x2638('0x22')](_0x48110c[_0x2638('0x23')],{'raw':_0x48110c[_0x2638('0x1a')]?_0x48110c[_0x2638('0x1a')]['raw']===undefined?!![]:![]:!![]})[_0x2638('0x24')](function(_0x5372f6){var _0xe372e7;for(var _0x13bdb3=0x0;_0x13bdb3<Object[_0x2638('0x25')](_0x48110c['body'])[_0x2638('0x26')];_0x13bdb3++){var _0x497ff5=Object[_0x2638('0x25')](_0x48110c[_0x2638('0x23')])[_0x13bdb3];if(_0x497ff5[_0x2638('0x27')]('cf_')){_0xe372e7=squel[_0x2638('0x28')]()[_0x2638('0x29')](_0x2638('0x2a'))[_0x2638('0x2b')](_0x497ff5,_0x48110c[_0x2638('0x23')][_0x497ff5])[_0x2638('0x1c')](_0x2638('0x2c'),_0x5372f6['id'])[_0x2638('0x2d')]();break;}}if(!_0xe372e7)return _0x5372f6;return db[_0x2638('0x2e')][_0x2638('0x2f')](_0xe372e7)['then'](function(){return _0x5372f6;});})[_0x2638('0x24')](function(_0x1cace8){logger[_0x2638('0xf')](_0x2638('0x30'),_0x48110c);logger[_0x2638('0x11')](_0x2638('0x30'),_0x48110c,JSON['stringify'](_0x1cace8));_0x2b352a(_0x1cace8);})[_0x2638('0x21')](function(_0x32b372){logger[_0x2638('0x14')](_0x2638('0x30'),_0x32b372[_0x2638('0x16')],_0x48110c);_0xf1473c(_0x1390d1[_0x2638('0x14')](0x1f4,_0x32b372[_0x2638('0x16')]));});});};