Built motion from commit 43538d75.|2.5.35
[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 _0x811a=['randomstring','ioredis','squel','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','./cmContact.socket','register','request','then','info','CmContact,\x20%s,\x20%s','stringify','error','code','message','request\x20sent','result','catch','GetCmContact','CmContact','options','attributes','limit','include','map','model','debug','body','raw','keys','startsWith','cf_','update','table','cm_contacts','set','sequelize','query','CreateCmContact','lodash','util','moment','bluebird'];(function(_0x253ce6,_0xd96d04){var _0x5e31dd=function(_0x40efb3){while(--_0x40efb3){_0x253ce6['push'](_0x253ce6['shift']());}};_0x5e31dd(++_0xd96d04);}(_0x811a,0xc8));var _0xa811=function(_0x2ce047,_0x36dcc7){_0x2ce047=_0x2ce047-0x0;var _0x21c233=_0x811a[_0x2ce047];return _0x21c233;};'use strict';var _=require(_0xa811('0x0'));var util=require(_0xa811('0x1'));var moment=require(_0xa811('0x2'));var BPromise=require(_0xa811('0x3'));var rs=require(_0xa811('0x4'));var fs=require('fs');var Redis=require(_0xa811('0x5'));var squel=require(_0xa811('0x6'));var db=require('../../mysqldb')['db'];var utils=require(_0xa811('0x7'));var logger=require(_0xa811('0x8'))(_0xa811('0x9'));var config=require(_0xa811('0xa'));var jayson=require(_0xa811('0xb'));var client=jayson[_0xa811('0xc')][_0xa811('0xd')]({'port':0x232a});config[_0xa811('0xe')]=_[_0xa811('0xf')](config[_0xa811('0xe')],{'host':_0xa811('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xa811('0xe')]));require(_0xa811('0x11'))[_0xa811('0x12')](socket);function respondWithRpcPromise(_0x27d5d8,_0x29f262,_0x179bd4){return new BPromise(function(_0x249bdc,_0x3760cd){return client[_0xa811('0x13')](_0x27d5d8,_0x179bd4)[_0xa811('0x14')](function(_0x313fdd){logger[_0xa811('0x15')](_0xa811('0x16'),_0x29f262,'request\x20sent');logger['debug']('CmContact,\x20%s,\x20%s,\x20%s',_0x29f262,'request\x20sent',JSON[_0xa811('0x17')](_0x313fdd));if(_0x313fdd[_0xa811('0x18')]){if(_0x313fdd['error'][_0xa811('0x19')]===0x1f4){logger[_0xa811('0x18')]('CmContact,\x20%s,\x20%s',_0x29f262,_0x313fdd[_0xa811('0x18')][_0xa811('0x1a')]);return _0x3760cd(_0x313fdd[_0xa811('0x18')][_0xa811('0x1a')]);}logger['error'](_0xa811('0x16'),_0x29f262,_0x313fdd[_0xa811('0x18')][_0xa811('0x1a')]);return _0x249bdc(_0x313fdd[_0xa811('0x18')][_0xa811('0x1a')]);}else{logger[_0xa811('0x15')]('CmContact,\x20%s,\x20%s',_0x29f262,_0xa811('0x1b'));_0x249bdc(_0x313fdd[_0xa811('0x1c')]['message']);}})[_0xa811('0x1d')](function(_0x23fdaf){logger[_0xa811('0x18')](_0xa811('0x16'),_0x29f262,_0x23fdaf);_0x3760cd(_0x23fdaf);});});}exports[_0xa811('0x1e')]=function(_0x486088){var _0x61996c=this;return new Promise(function(_0x2c28da,_0x1b8e1d){return db[_0xa811('0x1f')]['findAll']({'raw':_0x486088[_0xa811('0x20')]?_0x486088[_0xa811('0x20')]['raw']===undefined?!![]:![]:!![],'where':_0x486088[_0xa811('0x20')]?_0x486088['options']['where']||null:null,'attributes':_0x486088[_0xa811('0x20')]?_0x486088[_0xa811('0x20')][_0xa811('0x21')]||null:null,'limit':_0x486088[_0xa811('0x20')]?_0x486088[_0xa811('0x20')][_0xa811('0x22')]||null:null,'include':_0x486088[_0xa811('0x20')]?_0x486088[_0xa811('0x20')][_0xa811('0x23')]?_[_0xa811('0x24')](_0x486088[_0xa811('0x20')][_0xa811('0x23')],function(_0x17d9d1){return{'model':db[_0x17d9d1[_0xa811('0x25')]],'as':_0x17d9d1['as'],'attributes':_0x17d9d1[_0xa811('0x21')],'include':_0x17d9d1[_0xa811('0x23')]?_[_0xa811('0x24')](_0x17d9d1['include'],function(_0x2e33e5){return{'model':db[_0x2e33e5[_0xa811('0x25')]],'as':_0x2e33e5['as'],'attributes':_0x2e33e5[_0xa811('0x21')],'include':_0x2e33e5[_0xa811('0x23')]?_[_0xa811('0x24')](_0x2e33e5['include'],function(_0x49ae91){return{'model':db[_0x49ae91['model']],'as':_0x49ae91['as'],'attributes':_0x49ae91['attributes']};}):[]};}):[]};}):[]:[]})[_0xa811('0x14')](function(_0x4e21d6){logger[_0xa811('0x15')](_0xa811('0x1e'),_0x486088);logger[_0xa811('0x26')](_0xa811('0x1e'),_0x486088,JSON[_0xa811('0x17')](_0x4e21d6));_0x2c28da(_0x4e21d6);})['catch'](function(_0x35e907){logger['error'](_0xa811('0x1e'),_0x35e907['message'],_0x486088);_0x1b8e1d(_0x61996c[_0xa811('0x18')](0x1f4,_0x35e907[_0xa811('0x1a')]));});});};exports['CreateCmContact']=function(_0x593131){var _0x43f510=this;return new Promise(function(_0x4356c5,_0x3de33f){return db[_0xa811('0x1f')]['create'](_0x593131[_0xa811('0x27')],{'raw':_0x593131[_0xa811('0x20')]?_0x593131[_0xa811('0x20')][_0xa811('0x28')]===undefined?!![]:![]:!![]})[_0xa811('0x14')](function(_0x101e99){var _0x4543d4;for(var _0x993c5d=0x0;_0x993c5d<Object[_0xa811('0x29')](_0x593131[_0xa811('0x27')])['length'];_0x993c5d++){var _0x3a04ef=Object['keys'](_0x593131[_0xa811('0x27')])[_0x993c5d];if(_0x3a04ef[_0xa811('0x2a')](_0xa811('0x2b'))){_0x4543d4=squel[_0xa811('0x2c')]()[_0xa811('0x2d')](_0xa811('0x2e'))[_0xa811('0x2f')](_0x3a04ef,_0x593131['body'][_0x3a04ef])['where']('id\x20=\x20?',_0x101e99['id'])['toString']();break;}}if(!_0x4543d4)return _0x101e99;return db[_0xa811('0x30')][_0xa811('0x31')](_0x4543d4)['then'](function(){return _0x101e99;});})[_0xa811('0x14')](function(_0x520948){logger[_0xa811('0x15')](_0xa811('0x32'),_0x593131);logger[_0xa811('0x26')](_0xa811('0x32'),_0x593131,JSON[_0xa811('0x17')](_0x520948));_0x4356c5(_0x520948);})[_0xa811('0x1d')](function(_0x3c99ea){logger['error'](_0xa811('0x32'),_0x3c99ea['message'],_0x593131);_0x3de33f(_0x43f510[_0xa811('0x18')](0x1f4,_0x3c99ea[_0xa811('0x1a')]));});});};