Built motion from commit f0b1811d.|2.6.6
[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 _0x1838=['options','raw','CreateChatMessage','moment','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise','client','http','redis','defaults','register','request','then','debug','request\x20sent','stringify','error','ChatMessage,\x20%s,\x20%s','message','info','result','catch','ChatMessage','create','body'];(function(_0x22cbe7,_0x42212d){var _0x21fb3b=function(_0x166de1){while(--_0x166de1){_0x22cbe7['push'](_0x22cbe7['shift']());}};_0x21fb3b(++_0x42212d);}(_0x1838,0xb7));var _0x8183=function(_0x3078bf,_0x11c569){_0x3078bf=_0x3078bf-0x0;var _0x40012d=_0x1838[_0x3078bf];return _0x40012d;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0x8183('0x0'));var BPromise=require(_0x8183('0x1'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x8183('0x2'));var db=require(_0x8183('0x3'))['db'];var utils=require(_0x8183('0x4'));var logger=require(_0x8183('0x5'))(_0x8183('0x6'));var config=require('../../config/environment');var jayson=require(_0x8183('0x7'));var client=jayson[_0x8183('0x8')][_0x8183('0x9')]({'port':0x232a});config[_0x8183('0xa')]=_[_0x8183('0xb')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x8183('0xa')]));require('./chatMessage.socket')[_0x8183('0xc')](socket);function respondWithRpcPromise(_0x597fe5,_0x169b03,_0x126130){return new BPromise(function(_0x23b875,_0x9d7dfb){return client[_0x8183('0xd')](_0x597fe5,_0x126130)[_0x8183('0xe')](function(_0x58e3fe){logger['info']('ChatMessage,\x20%s,\x20%s',_0x169b03,'request\x20sent');logger[_0x8183('0xf')]('ChatMessage,\x20%s,\x20%s,\x20%s',_0x169b03,_0x8183('0x10'),JSON[_0x8183('0x11')](_0x58e3fe));if(_0x58e3fe[_0x8183('0x12')]){if(_0x58e3fe[_0x8183('0x12')]['code']===0x1f4){logger[_0x8183('0x12')](_0x8183('0x13'),_0x169b03,_0x58e3fe[_0x8183('0x12')][_0x8183('0x14')]);return _0x9d7dfb(_0x58e3fe['error'][_0x8183('0x14')]);}logger[_0x8183('0x12')]('ChatMessage,\x20%s,\x20%s',_0x169b03,_0x58e3fe[_0x8183('0x12')][_0x8183('0x14')]);return _0x23b875(_0x58e3fe[_0x8183('0x12')]['message']);}else{logger[_0x8183('0x15')](_0x8183('0x13'),_0x169b03,_0x8183('0x10'));_0x23b875(_0x58e3fe[_0x8183('0x16')][_0x8183('0x14')]);}})[_0x8183('0x17')](function(_0x2cde83){logger[_0x8183('0x12')](_0x8183('0x13'),_0x169b03,_0x2cde83);_0x9d7dfb(_0x2cde83);});});}exports['CreateChatMessage']=function(_0x1200a7){var _0x681530=this;return new Promise(function(_0x35e1ce,_0x3fc8ca){return db[_0x8183('0x18')][_0x8183('0x19')](_0x1200a7[_0x8183('0x1a')],{'raw':_0x1200a7[_0x8183('0x1b')]?_0x1200a7['options'][_0x8183('0x1c')]===undefined?!![]:![]:!![]})[_0x8183('0xe')](function(_0x924a2c){logger[_0x8183('0x15')](_0x8183('0x1d'),_0x1200a7);logger[_0x8183('0xf')](_0x8183('0x1d'),_0x1200a7,JSON[_0x8183('0x11')](_0x924a2c));_0x35e1ce(_0x924a2c);})['catch'](function(_0x57c41d){logger[_0x8183('0x12')](_0x8183('0x1d'),_0x57c41d[_0x8183('0x14')],_0x1200a7);_0x3fc8ca(_0x681530[_0x8183('0x12')](0x1f4,_0x57c41d['message']));});});};