df5460390a9d0fdd3844c3e981763eb5d9c48d90
[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 _0xaeef=['randomstring','ioredis','../../config/logger','rpc','client','http','redis','defaults','localhost','./chatInteraction.socket','register','request','then','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','message','info','result','catch','options','raw','where','attributes','UpdateChatInteraction','ChatInteraction','find','addTags','body','ids','omit','spread','AddTags','lodash','util','moment','bluebird'];(function(_0x28947d,_0x4cc9c6){var _0x12d2ee=function(_0x3f38fc){while(--_0x3f38fc){_0x28947d['push'](_0x28947d['shift']());}};_0x12d2ee(++_0x4cc9c6);}(_0xaeef,0x1e8));var _0xfaee=function(_0x8df189,_0x5f4e9b){_0x8df189=_0x8df189-0x0;var _0x2aa166=_0xaeef[_0x8df189];return _0x2aa166;};'use strict';var _=require(_0xfaee('0x0'));var util=require(_0xfaee('0x1'));var moment=require(_0xfaee('0x2'));var BPromise=require(_0xfaee('0x3'));var rs=require(_0xfaee('0x4'));var fs=require('fs');var Redis=require(_0xfaee('0x5'));var db=require('../../mysqldb')['db'];var utils=require('../../config/utils');var logger=require(_0xfaee('0x6'))(_0xfaee('0x7'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson[_0xfaee('0x8')][_0xfaee('0x9')]({'port':0x232a});config[_0xfaee('0xa')]=_[_0xfaee('0xb')](config[_0xfaee('0xa')],{'host':_0xfaee('0xc'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0xfaee('0xd'))[_0xfaee('0xe')](socket);function respondWithRpcPromise(_0xa94834,_0x55ae39,_0xafac5a){return new BPromise(function(_0x3a570e,_0x5bb18f){return client[_0xfaee('0xf')](_0xa94834,_0xafac5a)[_0xfaee('0x10')](function(_0x34735e){logger['info'](_0xfaee('0x11'),_0x55ae39,_0xfaee('0x12'));logger[_0xfaee('0x13')](_0xfaee('0x14'),_0x55ae39,_0xfaee('0x12'),JSON[_0xfaee('0x15')](_0x34735e));if(_0x34735e[_0xfaee('0x16')]){if(_0x34735e[_0xfaee('0x16')][_0xfaee('0x17')]===0x1f4){logger['error'](_0xfaee('0x11'),_0x55ae39,_0x34735e[_0xfaee('0x16')]['message']);return _0x5bb18f(_0x34735e['error'][_0xfaee('0x18')]);}logger['error'](_0xfaee('0x11'),_0x55ae39,_0x34735e[_0xfaee('0x16')][_0xfaee('0x18')]);return _0x3a570e(_0x34735e['error']['message']);}else{logger[_0xfaee('0x19')]('ChatInteraction,\x20%s,\x20%s',_0x55ae39,_0xfaee('0x12'));_0x3a570e(_0x34735e[_0xfaee('0x1a')][_0xfaee('0x18')]);}})[_0xfaee('0x1b')](function(_0x477b42){logger['error'](_0xfaee('0x11'),_0x55ae39,_0x477b42);_0x5bb18f(_0x477b42);});});}exports['UpdateChatInteraction']=function(_0x596088){var _0x419201=this;return new Promise(function(_0x2e4753,_0x75521c){return db['ChatInteraction']['update'](_0x596088['body'],{'raw':_0x596088[_0xfaee('0x1c')]?_0x596088[_0xfaee('0x1c')][_0xfaee('0x1d')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x596088[_0xfaee('0x1c')]?_0x596088[_0xfaee('0x1c')][_0xfaee('0x1e')]||null:null,'attributes':_0x596088[_0xfaee('0x1c')]?_0x596088['options'][_0xfaee('0x1f')]||null:null,'limit':_0x596088[_0xfaee('0x1c')]?_0x596088[_0xfaee('0x1c')]['limit']||null:null})[_0xfaee('0x10')](function(_0x4f2b23){logger['info'](_0xfaee('0x20'),_0x596088);logger[_0xfaee('0x13')](_0xfaee('0x20'),_0x596088,JSON['stringify'](_0x4f2b23));_0x2e4753(_0x4f2b23);})['catch'](function(_0x1dfad6){logger[_0xfaee('0x16')](_0xfaee('0x20'),_0x1dfad6[_0xfaee('0x18')],_0x596088);_0x75521c(_0x419201[_0xfaee('0x16')](0x1f4,_0x1dfad6[_0xfaee('0x18')]));});});};exports['AddTagsToChatInteraction']=function(_0x3bdc74){return new Promise(function(_0x1a1cb5,_0x23e741){return db[_0xfaee('0x21')][_0xfaee('0x22')]({'where':_0x3bdc74[_0xfaee('0x1c')]?_0x3bdc74[_0xfaee('0x1c')][_0xfaee('0x1e')]||null:null})['then'](function(_0x54e06b){if(_0x54e06b){return _0x54e06b[_0xfaee('0x23')](_0x3bdc74[_0xfaee('0x24')][_0xfaee('0x25')],_[_0xfaee('0x26')](_0x3bdc74['body'],[_0xfaee('0x25'),'id'])||{});}})[_0xfaee('0x27')](function(_0x4bde8b){logger['info'](_0xfaee('0x28'),_0x3bdc74);logger[_0xfaee('0x13')](_0xfaee('0x28'),_0x3bdc74,JSON['stringify'](_0x4bde8b));_0x1a1cb5(_0x4bde8b);})[_0xfaee('0x1b')](function(_0x2dc1af){logger[_0xfaee('0x16')]('AddTags',_0x2dc1af[_0xfaee('0x18')],_0x3bdc74);_0x23e741(_this[_0xfaee('0x16')](0x1f4,_0x2dc1af[_0xfaee('0x18')]));});});};