f658efe50e1a4bc1bc205533de1ed365f582b1b7
[motion2.git] / server / api / chatMessage / chatMessage.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 _0x0c63=['register','request','then','ChatMessage,\x20%s,\x20%s','debug','ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','message','info','result','catch','CreateChatMessage','body','options','raw','stringify','util','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','./chatMessage.socket'];(function(_0x4111cb,_0x3d8d5b){var _0x40cbbd=function(_0xcc720d){while(--_0xcc720d){_0x4111cb['push'](_0x4111cb['shift']());}};_0x40cbbd(++_0x3d8d5b);}(_0x0c63,0x15c));var _0x30c6=function(_0x372fab,_0x4f7b9c){_0x372fab=_0x372fab-0x0;var _0x593a7a=_0x0c63[_0x372fab];return _0x593a7a;};'use strict';var _=require('lodash');var util=require(_0x30c6('0x0'));var moment=require('moment');var BPromise=require(_0x30c6('0x1'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x30c6('0x2'));var db=require(_0x30c6('0x3'))['db'];var utils=require(_0x30c6('0x4'));var logger=require(_0x30c6('0x5'))(_0x30c6('0x6'));var config=require(_0x30c6('0x7'));var jayson=require(_0x30c6('0x8'));var client=jayson[_0x30c6('0x9')][_0x30c6('0xa')]({'port':0x232a});config[_0x30c6('0xb')]=_[_0x30c6('0xc')](config['redis'],{'host':_0x30c6('0xd'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x30c6('0xb')]));require(_0x30c6('0xe'))[_0x30c6('0xf')](socket);function respondWithRpcPromise(_0x59bc09,_0x5c3edf,_0x186d32){return new BPromise(function(_0x5dff79,_0x39cad0){return client[_0x30c6('0x10')](_0x59bc09,_0x186d32)[_0x30c6('0x11')](function(_0x5e14e7){logger['info'](_0x30c6('0x12'),_0x5c3edf,'request\x20sent');logger[_0x30c6('0x13')](_0x30c6('0x14'),_0x5c3edf,_0x30c6('0x15'),JSON['stringify'](_0x5e14e7));if(_0x5e14e7[_0x30c6('0x16')]){if(_0x5e14e7['error'][_0x30c6('0x17')]===0x1f4){logger[_0x30c6('0x16')](_0x30c6('0x12'),_0x5c3edf,_0x5e14e7['error'][_0x30c6('0x18')]);return _0x39cad0(_0x5e14e7[_0x30c6('0x16')]['message']);}logger['error']('ChatMessage,\x20%s,\x20%s',_0x5c3edf,_0x5e14e7[_0x30c6('0x16')]['message']);return _0x5dff79(_0x5e14e7['error'][_0x30c6('0x18')]);}else{logger[_0x30c6('0x19')](_0x30c6('0x12'),_0x5c3edf,_0x30c6('0x15'));_0x5dff79(_0x5e14e7[_0x30c6('0x1a')][_0x30c6('0x18')]);}})[_0x30c6('0x1b')](function(_0xfa05b6){logger[_0x30c6('0x16')](_0x30c6('0x12'),_0x5c3edf,_0xfa05b6);_0x39cad0(_0xfa05b6);});});}exports[_0x30c6('0x1c')]=function(_0xeaa907){var _0x10f360=this;return new Promise(function(_0x24b5b1,_0x6238e7){return db['ChatMessage']['create'](_0xeaa907[_0x30c6('0x1d')],{'raw':_0xeaa907[_0x30c6('0x1e')]?_0xeaa907['options'][_0x30c6('0x1f')]===undefined?!![]:![]:!![]})['then'](function(_0x11f585){logger[_0x30c6('0x19')](_0x30c6('0x1c'),_0xeaa907);logger[_0x30c6('0x13')](_0x30c6('0x1c'),_0xeaa907,JSON[_0x30c6('0x20')](_0x11f585));_0x24b5b1(_0x11f585);})['catch'](function(_0x5a5f4c){logger[_0x30c6('0x16')](_0x30c6('0x1c'),_0x5a5f4c[_0x30c6('0x18')],_0xeaa907);_0x6238e7(_0x10f360[_0x30c6('0x16')](0x1f4,_0x5a5f4c['message']));});});};