018b7ef0428fe0814547be5b149f482b29e9017a
[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 _0xdf44=['randomstring','../../mysqldb','../../config/utils','../../config/logger','rpc','jayson/promise','client','http','redis','localhost','socket.io-emitter','./chatInteraction.socket','register','then','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','UpdateChatInteraction','ChatInteraction','update','body','options','where','info','catch','AddTagsToChatInteraction','find','ids','omit','spread','AddTags','util','bluebird'];(function(_0x2d1600,_0x261562){var _0x3f7626=function(_0x3ee5f8){while(--_0x3ee5f8){_0x2d1600['push'](_0x2d1600['shift']());}};_0x3f7626(++_0x261562);}(_0xdf44,0x73));var _0x4df4=function(_0x5d4607,_0x6b5e7b){_0x5d4607=_0x5d4607-0x0;var _0x5e4a86=_0xdf44[_0x5d4607];return _0x5e4a86;};'use strict';var _=require('lodash');var util=require(_0x4df4('0x0'));var moment=require('moment');var BPromise=require(_0x4df4('0x1'));var rs=require(_0x4df4('0x2'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x4df4('0x3'))['db'];var utils=require(_0x4df4('0x4'));var logger=require(_0x4df4('0x5'))(_0x4df4('0x6'));var config=require('../../config/environment');var jayson=require(_0x4df4('0x7'));var client=jayson[_0x4df4('0x8')][_0x4df4('0x9')]({'port':0x232a});config[_0x4df4('0xa')]=_['defaults'](config[_0x4df4('0xa')],{'host':_0x4df4('0xb'),'port':0x18eb});var socket=require(_0x4df4('0xc'))(new Redis(config['redis']));require(_0x4df4('0xd'))[_0x4df4('0xe')](socket);function respondWithRpcPromise(_0x52deef,_0x193a4b,_0x4fec34){return new BPromise(function(_0x5c90e9,_0xe4889c){return client['request'](_0x52deef,_0x4fec34)[_0x4df4('0xf')](function(_0x36f502){logger['info'](_0x4df4('0x10'),_0x193a4b,_0x4df4('0x11'));logger[_0x4df4('0x12')](_0x4df4('0x13'),_0x193a4b,_0x4df4('0x11'),JSON[_0x4df4('0x14')](_0x36f502));if(_0x36f502[_0x4df4('0x15')]){if(_0x36f502[_0x4df4('0x15')][_0x4df4('0x16')]===0x1f4){logger['error'](_0x4df4('0x10'),_0x193a4b,_0x36f502['error']['message']);return _0xe4889c(_0x36f502[_0x4df4('0x15')][_0x4df4('0x17')]);}logger['error'](_0x4df4('0x10'),_0x193a4b,_0x36f502['error']['message']);return _0x5c90e9(_0x36f502['error'][_0x4df4('0x17')]);}else{logger['info'](_0x4df4('0x10'),_0x193a4b,_0x4df4('0x11'));_0x5c90e9(_0x36f502[_0x4df4('0x18')][_0x4df4('0x17')]);}})['catch'](function(_0x3b4f07){logger[_0x4df4('0x15')](_0x4df4('0x10'),_0x193a4b,_0x3b4f07);_0xe4889c(_0x3b4f07);});});}exports[_0x4df4('0x19')]=function(_0x376233){var _0x2a03d5=this;return new Promise(function(_0x30f883,_0x1b5d50){return db[_0x4df4('0x1a')][_0x4df4('0x1b')](_0x376233[_0x4df4('0x1c')],{'raw':_0x376233[_0x4df4('0x1d')]?_0x376233['options']['raw']===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x376233['options']?_0x376233['options'][_0x4df4('0x1e')]||null:null,'attributes':_0x376233[_0x4df4('0x1d')]?_0x376233[_0x4df4('0x1d')]['attributes']||null:null,'limit':_0x376233[_0x4df4('0x1d')]?_0x376233[_0x4df4('0x1d')]['limit']||null:null})[_0x4df4('0xf')](function(_0x43d657){logger[_0x4df4('0x1f')](_0x4df4('0x19'),_0x376233);logger[_0x4df4('0x12')](_0x4df4('0x19'),_0x376233,JSON['stringify'](_0x43d657));_0x30f883(_0x43d657);})[_0x4df4('0x20')](function(_0x5353fd){logger[_0x4df4('0x15')](_0x4df4('0x19'),_0x5353fd[_0x4df4('0x17')],_0x376233);_0x1b5d50(_0x2a03d5[_0x4df4('0x15')](0x1f4,_0x5353fd['message']));});});};exports[_0x4df4('0x21')]=function(_0x1aaad0){return new Promise(function(_0x81209c,_0x41ab03){return db[_0x4df4('0x1a')][_0x4df4('0x22')]({'where':_0x1aaad0['options']?_0x1aaad0[_0x4df4('0x1d')][_0x4df4('0x1e')]||null:null})[_0x4df4('0xf')](function(_0x42a4c1){if(_0x42a4c1){return _0x42a4c1['addTags'](_0x1aaad0['body'][_0x4df4('0x23')],_[_0x4df4('0x24')](_0x1aaad0[_0x4df4('0x1c')],['ids','id'])||{});}})[_0x4df4('0x25')](function(_0x4c6d4d){logger[_0x4df4('0x1f')](_0x4df4('0x26'),_0x1aaad0);logger[_0x4df4('0x12')](_0x4df4('0x26'),_0x1aaad0,JSON[_0x4df4('0x14')](_0x4c6d4d));_0x81209c(_0x4c6d4d);})[_0x4df4('0x20')](function(_0x2d5c7c){logger['error'](_0x4df4('0x26'),_0x2d5c7c[_0x4df4('0x17')],_0x1aaad0);_0x41ab03(_this[_0x4df4('0x15')](0x1f4,_0x2d5c7c[_0x4df4('0x17')]));});});};