9ee1560a3636600507e326839db448adf7811f47
[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 _0x52b5=['randomstring','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','http','redis','localhost','socket.io-emitter','register','then','info','ChatMessage,\x20%s,\x20%s','debug','request\x20sent','error','message','result','ChatMessage','body','options','raw','CreateChatMessage','stringify','catch','util','bluebird'];(function(_0x2dafbe,_0x5d04de){var _0x58a45a=function(_0x50ac96){while(--_0x50ac96){_0x2dafbe['push'](_0x2dafbe['shift']());}};_0x58a45a(++_0x5d04de);}(_0x52b5,0xe6));var _0x552b=function(_0x515283,_0x813dea){_0x515283=_0x515283-0x0;var _0x38f836=_0x52b5[_0x515283];return _0x38f836;};'use strict';var _=require('lodash');var util=require(_0x552b('0x0'));var moment=require('moment');var BPromise=require(_0x552b('0x1'));var rs=require(_0x552b('0x2'));var fs=require('fs');var Redis=require(_0x552b('0x3'));var db=require('../../mysqldb')['db'];var utils=require(_0x552b('0x4'));var logger=require(_0x552b('0x5'))(_0x552b('0x6'));var config=require(_0x552b('0x7'));var jayson=require(_0x552b('0x8'));var client=jayson['client'][_0x552b('0x9')]({'port':0x232a});config[_0x552b('0xa')]=_['defaults'](config[_0x552b('0xa')],{'host':_0x552b('0xb'),'port':0x18eb});var socket=require(_0x552b('0xc'))(new Redis(config[_0x552b('0xa')]));require('./chatMessage.socket')[_0x552b('0xd')](socket);function respondWithRpcPromise(_0x3dc6f0,_0x41eb80,_0x429346){return new BPromise(function(_0x55a31c,_0xba6665){return client['request'](_0x3dc6f0,_0x429346)[_0x552b('0xe')](function(_0x1c52b6){logger[_0x552b('0xf')](_0x552b('0x10'),_0x41eb80,'request\x20sent');logger[_0x552b('0x11')]('ChatMessage,\x20%s,\x20%s,\x20%s',_0x41eb80,_0x552b('0x12'),JSON['stringify'](_0x1c52b6));if(_0x1c52b6[_0x552b('0x13')]){if(_0x1c52b6[_0x552b('0x13')]['code']===0x1f4){logger['error'](_0x552b('0x10'),_0x41eb80,_0x1c52b6[_0x552b('0x13')][_0x552b('0x14')]);return _0xba6665(_0x1c52b6[_0x552b('0x13')][_0x552b('0x14')]);}logger['error'](_0x552b('0x10'),_0x41eb80,_0x1c52b6[_0x552b('0x13')][_0x552b('0x14')]);return _0x55a31c(_0x1c52b6[_0x552b('0x13')][_0x552b('0x14')]);}else{logger[_0x552b('0xf')](_0x552b('0x10'),_0x41eb80,_0x552b('0x12'));_0x55a31c(_0x1c52b6[_0x552b('0x15')][_0x552b('0x14')]);}})['catch'](function(_0x3993cc){logger['error'](_0x552b('0x10'),_0x41eb80,_0x3993cc);_0xba6665(_0x3993cc);});});}exports['CreateChatMessage']=function(_0x5e5299){var _0x1649e4=this;return new Promise(function(_0x3d3235,_0x103e49){return db[_0x552b('0x16')]['create'](_0x5e5299[_0x552b('0x17')],{'raw':_0x5e5299['options']?_0x5e5299[_0x552b('0x18')][_0x552b('0x19')]===undefined?!![]:![]:!![]})[_0x552b('0xe')](function(_0x363d92){logger[_0x552b('0xf')](_0x552b('0x1a'),_0x5e5299);logger[_0x552b('0x11')](_0x552b('0x1a'),_0x5e5299,JSON[_0x552b('0x1b')](_0x363d92));_0x3d3235(_0x363d92);})[_0x552b('0x1c')](function(_0x3584df){logger[_0x552b('0x13')]('CreateChatMessage',_0x3584df[_0x552b('0x14')],_0x5e5299);_0x103e49(_0x1649e4['error'](0x1f4,_0x3584df['message']));});});};