559988c347c824162de9b5086f96d2d19490a71f
[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 _0xc831=['ioredis','squel','../../mysqldb','../../config/utils','../../config/logger','client','http','redis','defaults','socket.io-emitter','request','then','request\x20sent','CmContact,\x20%s,\x20%s,\x20%s','stringify','error','code','CmContact,\x20%s,\x20%s','message','info','result','findAll','options','raw','limit','include','map','model','attributes','debug','GetCmContact','CreateCmContact','CmContact','create','body','keys','length','startsWith','update','table','cm_contacts','set','id\x20=\x20?','toString','query','catch','bluebird'];(function(_0x10e0f2,_0x21d83c){var _0x343452=function(_0x25fb88){while(--_0x25fb88){_0x10e0f2['push'](_0x10e0f2['shift']());}};_0x343452(++_0x21d83c);}(_0xc831,0xbb));var _0x1c83=function(_0xa9836b,_0x420f60){_0xa9836b=_0xa9836b-0x0;var _0x52c84a=_0xc831[_0xa9836b];return _0x52c84a;};'use strict';var _=require('lodash');var util=require('util');var moment=require('moment');var BPromise=require(_0x1c83('0x0'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x1c83('0x1'));var squel=require(_0x1c83('0x2'));var db=require(_0x1c83('0x3'))['db'];var utils=require(_0x1c83('0x4'));var logger=require(_0x1c83('0x5'))('rpc');var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson[_0x1c83('0x6')][_0x1c83('0x7')]({'port':0x232a});config[_0x1c83('0x8')]=_[_0x1c83('0x9')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x1c83('0xa'))(new Redis(config[_0x1c83('0x8')]));require('./cmContact.socket')['register'](socket);function respondWithRpcPromise(_0x38dda6,_0x1db611,_0x3cc257){return new BPromise(function(_0x536f46,_0x264f14){return client[_0x1c83('0xb')](_0x38dda6,_0x3cc257)[_0x1c83('0xc')](function(_0x1d8eae){logger['info']('CmContact,\x20%s,\x20%s',_0x1db611,_0x1c83('0xd'));logger['debug'](_0x1c83('0xe'),_0x1db611,_0x1c83('0xd'),JSON[_0x1c83('0xf')](_0x1d8eae));if(_0x1d8eae[_0x1c83('0x10')]){if(_0x1d8eae[_0x1c83('0x10')][_0x1c83('0x11')]===0x1f4){logger['error'](_0x1c83('0x12'),_0x1db611,_0x1d8eae['error'][_0x1c83('0x13')]);return _0x264f14(_0x1d8eae[_0x1c83('0x10')]['message']);}logger[_0x1c83('0x10')]('CmContact,\x20%s,\x20%s',_0x1db611,_0x1d8eae['error'][_0x1c83('0x13')]);return _0x536f46(_0x1d8eae[_0x1c83('0x10')][_0x1c83('0x13')]);}else{logger[_0x1c83('0x14')]('CmContact,\x20%s,\x20%s',_0x1db611,_0x1c83('0xd'));_0x536f46(_0x1d8eae[_0x1c83('0x15')][_0x1c83('0x13')]);}})['catch'](function(_0x35675c){logger[_0x1c83('0x10')](_0x1c83('0x12'),_0x1db611,_0x35675c);_0x264f14(_0x35675c);});});}exports['GetCmContact']=function(_0x112036){var _0x373496=this;return new Promise(function(_0x106486,_0x1bc471){return db['CmContact'][_0x1c83('0x16')]({'raw':_0x112036['options']?_0x112036[_0x1c83('0x17')][_0x1c83('0x18')]===undefined?!![]:![]:!![],'where':_0x112036[_0x1c83('0x17')]?_0x112036[_0x1c83('0x17')]['where']||null:null,'attributes':_0x112036[_0x1c83('0x17')]?_0x112036[_0x1c83('0x17')]['attributes']||null:null,'limit':_0x112036[_0x1c83('0x17')]?_0x112036['options'][_0x1c83('0x19')]||null:null,'include':_0x112036[_0x1c83('0x17')]?_0x112036[_0x1c83('0x17')][_0x1c83('0x1a')]?_[_0x1c83('0x1b')](_0x112036['options'][_0x1c83('0x1a')],function(_0x5941c5){return{'model':db[_0x5941c5[_0x1c83('0x1c')]],'as':_0x5941c5['as'],'attributes':_0x5941c5['attributes'],'include':_0x5941c5['include']?_[_0x1c83('0x1b')](_0x5941c5['include'],function(_0x2153a3){return{'model':db[_0x2153a3['model']],'as':_0x2153a3['as'],'attributes':_0x2153a3['attributes'],'include':_0x2153a3['include']?_[_0x1c83('0x1b')](_0x2153a3[_0x1c83('0x1a')],function(_0x4f6238){return{'model':db[_0x4f6238[_0x1c83('0x1c')]],'as':_0x4f6238['as'],'attributes':_0x4f6238[_0x1c83('0x1d')]};}):[]};}):[]};}):[]:[]})[_0x1c83('0xc')](function(_0x57249e){logger[_0x1c83('0x14')]('GetCmContact',_0x112036);logger[_0x1c83('0x1e')]('GetCmContact',_0x112036,JSON[_0x1c83('0xf')](_0x57249e));_0x106486(_0x57249e);})['catch'](function(_0x1411fc){logger[_0x1c83('0x10')](_0x1c83('0x1f'),_0x1411fc['message'],_0x112036);_0x1bc471(_0x373496[_0x1c83('0x10')](0x1f4,_0x1411fc[_0x1c83('0x13')]));});});};exports[_0x1c83('0x20')]=function(_0x14f45b){var _0x45da6a=this;return new Promise(function(_0x356d4e,_0x58a3ed){return db[_0x1c83('0x21')][_0x1c83('0x22')](_0x14f45b[_0x1c83('0x23')],{'raw':_0x14f45b[_0x1c83('0x17')]?_0x14f45b['options'][_0x1c83('0x18')]===undefined?!![]:![]:!![]})[_0x1c83('0xc')](function(_0xe60e46){var _0x51a2bb;for(var _0x2fd266=0x0;_0x2fd266<Object[_0x1c83('0x24')](_0x14f45b[_0x1c83('0x23')])[_0x1c83('0x25')];_0x2fd266++){var _0x567344=Object[_0x1c83('0x24')](_0x14f45b[_0x1c83('0x23')])[_0x2fd266];if(_0x567344[_0x1c83('0x26')]('cf_')){_0x51a2bb=squel[_0x1c83('0x27')]()[_0x1c83('0x28')](_0x1c83('0x29'))[_0x1c83('0x2a')](_0x567344,_0x14f45b[_0x1c83('0x23')][_0x567344])['where'](_0x1c83('0x2b'),_0xe60e46['id'])[_0x1c83('0x2c')]();break;}}if(!_0x51a2bb)return _0xe60e46;return db['sequelize'][_0x1c83('0x2d')](_0x51a2bb)[_0x1c83('0xc')](function(){return _0xe60e46;});})[_0x1c83('0xc')](function(_0x5a4d1b){logger['info'](_0x1c83('0x20'),_0x14f45b);logger['debug'](_0x1c83('0x20'),_0x14f45b,JSON[_0x1c83('0xf')](_0x5a4d1b));_0x356d4e(_0x5a4d1b);})[_0x1c83('0x2e')](function(_0x1d9a7d){logger[_0x1c83('0x10')]('CreateCmContact',_0x1d9a7d['message'],_0x14f45b);_0x58a3ed(_0x45da6a[_0x1c83('0x10')](0x1f4,_0x1d9a7d[_0x1c83('0x13')]));});});};