Built motion from commit (unavailable).|2.5.6
[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 _0x038b=['./cmContact.socket','register','request\x20sent','debug','CmContact,\x20%s,\x20%s,\x20%s','stringify','error','code','message','CmContact,\x20%s,\x20%s','info','result','CmContact','options','where','attributes','limit','include','map','model','GetCmContact','catch','CreateCmContact','create','body','raw','then','length','keys','startsWith','cf_','update','table','cm_contacts','set','id\x20=\x20?','query','lodash','util','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','socket.io-emitter'];(function(_0x4b7b69,_0x3ab075){var _0x173b4c=function(_0x234d5f){while(--_0x234d5f){_0x4b7b69['push'](_0x4b7b69['shift']());}};_0x173b4c(++_0x3ab075);}(_0x038b,0xf9));var _0xb038=function(_0x2c987d,_0x133c46){_0x2c987d=_0x2c987d-0x0;var _0x3a7d7a=_0x038b[_0x2c987d];return _0x3a7d7a;};'use strict';var _=require(_0xb038('0x0'));var util=require(_0xb038('0x1'));var moment=require('moment');var BPromise=require('bluebird');var rs=require(_0xb038('0x2'));var fs=require('fs');var Redis=require(_0xb038('0x3'));var squel=require('squel');var db=require(_0xb038('0x4'))['db'];var utils=require(_0xb038('0x5'));var logger=require(_0xb038('0x6'))(_0xb038('0x7'));var config=require(_0xb038('0x8'));var jayson=require(_0xb038('0x9'));var client=jayson[_0xb038('0xa')][_0xb038('0xb')]({'port':0x232a});config[_0xb038('0xc')]=_[_0xb038('0xd')](config[_0xb038('0xc')],{'host':_0xb038('0xe'),'port':0x18eb});var socket=require(_0xb038('0xf'))(new Redis(config[_0xb038('0xc')]));require(_0xb038('0x10'))[_0xb038('0x11')](socket);function respondWithRpcPromise(_0x2a9aaa,_0x478dfd,_0x4d1ace){return new BPromise(function(_0x1f8b09,_0x199f90){return client['request'](_0x2a9aaa,_0x4d1ace)['then'](function(_0x527471){logger['info']('CmContact,\x20%s,\x20%s',_0x478dfd,_0xb038('0x12'));logger[_0xb038('0x13')](_0xb038('0x14'),_0x478dfd,_0xb038('0x12'),JSON[_0xb038('0x15')](_0x527471));if(_0x527471[_0xb038('0x16')]){if(_0x527471[_0xb038('0x16')][_0xb038('0x17')]===0x1f4){logger[_0xb038('0x16')]('CmContact,\x20%s,\x20%s',_0x478dfd,_0x527471[_0xb038('0x16')]['message']);return _0x199f90(_0x527471['error'][_0xb038('0x18')]);}logger[_0xb038('0x16')](_0xb038('0x19'),_0x478dfd,_0x527471[_0xb038('0x16')]['message']);return _0x1f8b09(_0x527471[_0xb038('0x16')]['message']);}else{logger[_0xb038('0x1a')]('CmContact,\x20%s,\x20%s',_0x478dfd,_0xb038('0x12'));_0x1f8b09(_0x527471[_0xb038('0x1b')]['message']);}})['catch'](function(_0x4e4f56){logger[_0xb038('0x16')](_0xb038('0x19'),_0x478dfd,_0x4e4f56);_0x199f90(_0x4e4f56);});});}exports['GetCmContact']=function(_0x11e799){var _0x43c01e=this;return new Promise(function(_0x46fa33,_0x207dc1){return db[_0xb038('0x1c')]['findAll']({'raw':_0x11e799['options']?_0x11e799['options']['raw']===undefined?!![]:![]:!![],'where':_0x11e799[_0xb038('0x1d')]?_0x11e799['options'][_0xb038('0x1e')]||null:null,'attributes':_0x11e799[_0xb038('0x1d')]?_0x11e799[_0xb038('0x1d')][_0xb038('0x1f')]||null:null,'limit':_0x11e799[_0xb038('0x1d')]?_0x11e799[_0xb038('0x1d')][_0xb038('0x20')]||null:null,'include':_0x11e799[_0xb038('0x1d')]?_0x11e799[_0xb038('0x1d')][_0xb038('0x21')]?_[_0xb038('0x22')](_0x11e799[_0xb038('0x1d')]['include'],function(_0x5b80f2){return{'model':db[_0x5b80f2[_0xb038('0x23')]],'as':_0x5b80f2['as'],'attributes':_0x5b80f2[_0xb038('0x1f')],'include':_0x5b80f2[_0xb038('0x21')]?_['map'](_0x5b80f2[_0xb038('0x21')],function(_0x3ceafd){return{'model':db[_0x3ceafd[_0xb038('0x23')]],'as':_0x3ceafd['as'],'attributes':_0x3ceafd[_0xb038('0x1f')],'include':_0x3ceafd[_0xb038('0x21')]?_['map'](_0x3ceafd[_0xb038('0x21')],function(_0x493738){return{'model':db[_0x493738[_0xb038('0x23')]],'as':_0x493738['as'],'attributes':_0x493738[_0xb038('0x1f')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x4c4cce){logger['info'](_0xb038('0x24'),_0x11e799);logger['debug']('GetCmContact',_0x11e799,JSON[_0xb038('0x15')](_0x4c4cce));_0x46fa33(_0x4c4cce);})[_0xb038('0x25')](function(_0x25896d){logger[_0xb038('0x16')]('GetCmContact',_0x25896d[_0xb038('0x18')],_0x11e799);_0x207dc1(_0x43c01e[_0xb038('0x16')](0x1f4,_0x25896d[_0xb038('0x18')]));});});};exports[_0xb038('0x26')]=function(_0x3ff3bc){var _0x5061f6=this;return new Promise(function(_0x255bcb,_0x3df721){return db[_0xb038('0x1c')][_0xb038('0x27')](_0x3ff3bc[_0xb038('0x28')],{'raw':_0x3ff3bc[_0xb038('0x1d')]?_0x3ff3bc[_0xb038('0x1d')][_0xb038('0x29')]===undefined?!![]:![]:!![]})[_0xb038('0x2a')](function(_0x585eed){var _0xd37903;for(var _0x9a9b44=0x0;_0x9a9b44<Object['keys'](_0x3ff3bc[_0xb038('0x28')])[_0xb038('0x2b')];_0x9a9b44++){var _0x39c532=Object[_0xb038('0x2c')](_0x3ff3bc[_0xb038('0x28')])[_0x9a9b44];if(_0x39c532[_0xb038('0x2d')](_0xb038('0x2e'))){_0xd37903=squel[_0xb038('0x2f')]()[_0xb038('0x30')](_0xb038('0x31'))[_0xb038('0x32')](_0x39c532,_0x3ff3bc[_0xb038('0x28')][_0x39c532])[_0xb038('0x1e')](_0xb038('0x33'),_0x585eed['id'])['toString']();break;}}if(!_0xd37903)return _0x585eed;return db['sequelize'][_0xb038('0x34')](_0xd37903)[_0xb038('0x2a')](function(){return _0x585eed;});})[_0xb038('0x2a')](function(_0x380954){logger[_0xb038('0x1a')]('CreateCmContact',_0x3ff3bc);logger[_0xb038('0x13')]('CreateCmContact',_0x3ff3bc,JSON[_0xb038('0x15')](_0x380954));_0x255bcb(_0x380954);})[_0xb038('0x25')](function(_0x42e328){logger[_0xb038('0x16')]('CreateCmContact',_0x42e328[_0xb038('0x18')],_0x3ff3bc);_0x3df721(_0x5061f6[_0xb038('0x16')](0x1f4,_0x42e328[_0xb038('0x18')]));});});};