Built motion from commit ab870f9e.|2.5.44
[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 _0x950e=['catch','CmContact','findAll','options','raw','where','limit','include','map','model','attributes','GetCmContact','CreateCmContact','body','keys','length','cf_','update','set','id\x20=\x20?','toString','sequelize','query','lodash','util','moment','bluebird','ioredis','squel','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','./cmContact.socket','register','request','then','info','CmContact,\x20%s,\x20%s','debug','CmContact,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','code','message','error','result'];(function(_0xd57796,_0x4bf570){var _0x2ffcf3=function(_0xa11be7){while(--_0xa11be7){_0xd57796['push'](_0xd57796['shift']());}};_0x2ffcf3(++_0x4bf570);}(_0x950e,0x116));var _0xe950=function(_0x5c2935,_0x57a86e){_0x5c2935=_0x5c2935-0x0;var _0x29fd1d=_0x950e[_0x5c2935];return _0x29fd1d;};'use strict';var _=require(_0xe950('0x0'));var util=require(_0xe950('0x1'));var moment=require(_0xe950('0x2'));var BPromise=require(_0xe950('0x3'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0xe950('0x4'));var squel=require(_0xe950('0x5'));var db=require('../../mysqldb')['db'];var utils=require(_0xe950('0x6'));var logger=require(_0xe950('0x7'))(_0xe950('0x8'));var config=require(_0xe950('0x9'));var jayson=require(_0xe950('0xa'));var client=jayson[_0xe950('0xb')][_0xe950('0xc')]({'port':0x232a});config[_0xe950('0xd')]=_['defaults'](config[_0xe950('0xd')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0xe950('0xe'))[_0xe950('0xf')](socket);function respondWithRpcPromise(_0x5369d6,_0x3e8821,_0x487389){return new BPromise(function(_0x559216,_0x1f3c9d){return client[_0xe950('0x10')](_0x5369d6,_0x487389)[_0xe950('0x11')](function(_0x3a904e){logger[_0xe950('0x12')](_0xe950('0x13'),_0x3e8821,'request\x20sent');logger[_0xe950('0x14')](_0xe950('0x15'),_0x3e8821,_0xe950('0x16'),JSON[_0xe950('0x17')](_0x3a904e));if(_0x3a904e['error']){if(_0x3a904e['error'][_0xe950('0x18')]===0x1f4){logger['error'](_0xe950('0x13'),_0x3e8821,_0x3a904e['error'][_0xe950('0x19')]);return _0x1f3c9d(_0x3a904e['error'][_0xe950('0x19')]);}logger[_0xe950('0x1a')](_0xe950('0x13'),_0x3e8821,_0x3a904e[_0xe950('0x1a')][_0xe950('0x19')]);return _0x559216(_0x3a904e[_0xe950('0x1a')][_0xe950('0x19')]);}else{logger[_0xe950('0x12')](_0xe950('0x13'),_0x3e8821,_0xe950('0x16'));_0x559216(_0x3a904e[_0xe950('0x1b')][_0xe950('0x19')]);}})[_0xe950('0x1c')](function(_0x31d8f5){logger[_0xe950('0x1a')](_0xe950('0x13'),_0x3e8821,_0x31d8f5);_0x1f3c9d(_0x31d8f5);});});}exports['GetCmContact']=function(_0x452847){var _0x35c488=this;return new Promise(function(_0x1a0a57,_0x4182d4){return db[_0xe950('0x1d')][_0xe950('0x1e')]({'raw':_0x452847[_0xe950('0x1f')]?_0x452847[_0xe950('0x1f')][_0xe950('0x20')]===undefined?!![]:![]:!![],'where':_0x452847[_0xe950('0x1f')]?_0x452847[_0xe950('0x1f')][_0xe950('0x21')]||null:null,'attributes':_0x452847[_0xe950('0x1f')]?_0x452847[_0xe950('0x1f')]['attributes']||null:null,'limit':_0x452847[_0xe950('0x1f')]?_0x452847[_0xe950('0x1f')][_0xe950('0x22')]||null:null,'include':_0x452847['options']?_0x452847[_0xe950('0x1f')][_0xe950('0x23')]?_[_0xe950('0x24')](_0x452847['options'][_0xe950('0x23')],function(_0x1a4e64){return{'model':db[_0x1a4e64[_0xe950('0x25')]],'as':_0x1a4e64['as'],'attributes':_0x1a4e64['attributes'],'include':_0x1a4e64[_0xe950('0x23')]?_[_0xe950('0x24')](_0x1a4e64['include'],function(_0x1cec0a){return{'model':db[_0x1cec0a[_0xe950('0x25')]],'as':_0x1cec0a['as'],'attributes':_0x1cec0a[_0xe950('0x26')],'include':_0x1cec0a[_0xe950('0x23')]?_[_0xe950('0x24')](_0x1cec0a['include'],function(_0x48d72d){return{'model':db[_0x48d72d[_0xe950('0x25')]],'as':_0x48d72d['as'],'attributes':_0x48d72d[_0xe950('0x26')]};}):[]};}):[]};}):[]:[]})['then'](function(_0x2f85b7){logger[_0xe950('0x12')](_0xe950('0x27'),_0x452847);logger[_0xe950('0x14')]('GetCmContact',_0x452847,JSON[_0xe950('0x17')](_0x2f85b7));_0x1a0a57(_0x2f85b7);})[_0xe950('0x1c')](function(_0x3498e2){logger[_0xe950('0x1a')](_0xe950('0x27'),_0x3498e2[_0xe950('0x19')],_0x452847);_0x4182d4(_0x35c488['error'](0x1f4,_0x3498e2[_0xe950('0x19')]));});});};exports[_0xe950('0x28')]=function(_0x17470b){var _0x1b6e74=this;return new Promise(function(_0x6f9424,_0x41b2aa){return db[_0xe950('0x1d')]['create'](_0x17470b[_0xe950('0x29')],{'raw':_0x17470b[_0xe950('0x1f')]?_0x17470b[_0xe950('0x1f')][_0xe950('0x20')]===undefined?!![]:![]:!![]})['then'](function(_0x32e6c4){var _0x53a7de;for(var _0x36c1d9=0x0;_0x36c1d9<Object[_0xe950('0x2a')](_0x17470b[_0xe950('0x29')])[_0xe950('0x2b')];_0x36c1d9++){var _0x14a953=Object[_0xe950('0x2a')](_0x17470b[_0xe950('0x29')])[_0x36c1d9];if(_0x14a953['startsWith'](_0xe950('0x2c'))){_0x53a7de=squel[_0xe950('0x2d')]()['table']('cm_contacts')[_0xe950('0x2e')](_0x14a953,_0x17470b[_0xe950('0x29')][_0x14a953])[_0xe950('0x21')](_0xe950('0x2f'),_0x32e6c4['id'])[_0xe950('0x30')]();break;}}if(!_0x53a7de)return _0x32e6c4;return db[_0xe950('0x31')][_0xe950('0x32')](_0x53a7de)[_0xe950('0x11')](function(){return _0x32e6c4;});})[_0xe950('0x11')](function(_0x4a4fbc){logger['info'](_0xe950('0x28'),_0x17470b);logger[_0xe950('0x14')](_0xe950('0x28'),_0x17470b,JSON['stringify'](_0x4a4fbc));_0x6f9424(_0x4a4fbc);})[_0xe950('0x1c')](function(_0x460741){logger[_0xe950('0x1a')](_0xe950('0x28'),_0x460741[_0xe950('0x19')],_0x17470b);_0x41b2aa(_0x1b6e74[_0xe950('0x1a')](0x1f4,_0x460741[_0xe950('0x19')]));});});};