5a5828cc6e285c055fba6996396b2d8d83a716ae
[motion2.git] / server / api / chatInteraction / chatInteraction.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 _0x2082=['ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','defaults','redis','localhost','socket.io-emitter','./chatInteraction.socket','register','request','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','UpdateChatInteraction','update','body','options','raw','where','attributes','limit','then','AddTagsToChatInteraction','ChatInteraction','find','ids','omit','AddTags','lodash','moment','bluebird','randomstring'];(function(_0x599751,_0xfb990a){var _0x30a379=function(_0x267ab5){while(--_0x267ab5){_0x599751['push'](_0x599751['shift']());}};_0x30a379(++_0xfb990a);}(_0x2082,0x7d));var _0x2208=function(_0xfbdff6,_0x2af690){_0xfbdff6=_0xfbdff6-0x0;var _0x4cb9be=_0x2082[_0xfbdff6];return _0x4cb9be;};'use strict';var _=require(_0x2208('0x0'));var util=require('util');var moment=require(_0x2208('0x1'));var BPromise=require(_0x2208('0x2'));var rs=require(_0x2208('0x3'));var fs=require('fs');var Redis=require(_0x2208('0x4'));var db=require(_0x2208('0x5'))['db'];var utils=require(_0x2208('0x6'));var logger=require(_0x2208('0x7'))(_0x2208('0x8'));var config=require(_0x2208('0x9'));var jayson=require('jayson/promise');var client=jayson['client']['http']({'port':0x232a});config['redis']=_[_0x2208('0xa')](config[_0x2208('0xb')],{'host':_0x2208('0xc'),'port':0x18eb});var socket=require(_0x2208('0xd'))(new Redis(config[_0x2208('0xb')]));require(_0x2208('0xe'))[_0x2208('0xf')](socket);function respondWithRpcPromise(_0x5da919,_0x3d5d99,_0x48833a){return new BPromise(function(_0x91cc81,_0x199fe9){return client[_0x2208('0x10')](_0x5da919,_0x48833a)['then'](function(_0x34d990){logger[_0x2208('0x11')](_0x2208('0x12'),_0x3d5d99,_0x2208('0x13'));logger[_0x2208('0x14')](_0x2208('0x15'),_0x3d5d99,_0x2208('0x13'),JSON[_0x2208('0x16')](_0x34d990));if(_0x34d990[_0x2208('0x17')]){if(_0x34d990['error'][_0x2208('0x18')]===0x1f4){logger[_0x2208('0x17')](_0x2208('0x12'),_0x3d5d99,_0x34d990[_0x2208('0x17')][_0x2208('0x19')]);return _0x199fe9(_0x34d990[_0x2208('0x17')]['message']);}logger[_0x2208('0x17')](_0x2208('0x12'),_0x3d5d99,_0x34d990[_0x2208('0x17')][_0x2208('0x19')]);return _0x91cc81(_0x34d990[_0x2208('0x17')][_0x2208('0x19')]);}else{logger['info']('ChatInteraction,\x20%s,\x20%s',_0x3d5d99,'request\x20sent');_0x91cc81(_0x34d990[_0x2208('0x1a')]['message']);}})[_0x2208('0x1b')](function(_0x5f3ada){logger[_0x2208('0x17')](_0x2208('0x12'),_0x3d5d99,_0x5f3ada);_0x199fe9(_0x5f3ada);});});}exports[_0x2208('0x1c')]=function(_0x187a3c){var _0x310a7e=this;return new Promise(function(_0x3ebf63,_0x14d8a8){return db['ChatInteraction'][_0x2208('0x1d')](_0x187a3c[_0x2208('0x1e')],{'raw':_0x187a3c[_0x2208('0x1f')]?_0x187a3c[_0x2208('0x1f')][_0x2208('0x20')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x187a3c[_0x2208('0x1f')]?_0x187a3c['options'][_0x2208('0x21')]||null:null,'attributes':_0x187a3c['options']?_0x187a3c['options'][_0x2208('0x22')]||null:null,'limit':_0x187a3c[_0x2208('0x1f')]?_0x187a3c['options'][_0x2208('0x23')]||null:null})[_0x2208('0x24')](function(_0x8300f5){logger[_0x2208('0x11')](_0x2208('0x1c'),_0x187a3c);logger[_0x2208('0x14')]('UpdateChatInteraction',_0x187a3c,JSON['stringify'](_0x8300f5));_0x3ebf63(_0x8300f5);})[_0x2208('0x1b')](function(_0x27b3e9){logger[_0x2208('0x17')](_0x2208('0x1c'),_0x27b3e9[_0x2208('0x19')],_0x187a3c);_0x14d8a8(_0x310a7e[_0x2208('0x17')](0x1f4,_0x27b3e9[_0x2208('0x19')]));});});};exports[_0x2208('0x25')]=function(_0x27bdec){return new Promise(function(_0x24b387,_0x1eb628){return db[_0x2208('0x26')][_0x2208('0x27')]({'where':_0x27bdec[_0x2208('0x1f')]?_0x27bdec[_0x2208('0x1f')][_0x2208('0x21')]||null:null})['then'](function(_0x49ab6e){if(_0x49ab6e){return _0x49ab6e['addTags'](_0x27bdec[_0x2208('0x1e')][_0x2208('0x28')],_[_0x2208('0x29')](_0x27bdec[_0x2208('0x1e')],[_0x2208('0x28'),'id'])||{});}})['spread'](function(_0x502e63){logger['info'](_0x2208('0x2a'),_0x27bdec);logger[_0x2208('0x14')](_0x2208('0x2a'),_0x27bdec,JSON[_0x2208('0x16')](_0x502e63));_0x24b387(_0x502e63);})['catch'](function(_0x25e7f1){logger['error'](_0x2208('0x2a'),_0x25e7f1['message'],_0x27bdec);_0x1eb628(_this[_0x2208('0x17')](0x1f4,_0x25e7f1[_0x2208('0x19')]));});});};