ad4ce5f78bb385bcc33f29029a532aab81b04dc9
[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 _0xdf00=['where','attributes','limit','ChatInteraction','find','addTags','ids','spread','AddTags','debug','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','../../config/environment','jayson/promise','http','redis','defaults','socket.io-emitter','./chatInteraction.socket','register','request','then','info','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','message','ChatInteraction,\x20%s,\x20%s','result','catch','UpdateChatInteraction','update','body','options','raw'];(function(_0x5a9c0c,_0x4ec485){var _0x53c77d=function(_0x1cf384){while(--_0x1cf384){_0x5a9c0c['push'](_0x5a9c0c['shift']());}};_0x53c77d(++_0x4ec485);}(_0xdf00,0x1b8));var _0x0df0=function(_0x4379fc,_0x5e3330){_0x4379fc=_0x4379fc-0x0;var _0x1dce06=_0xdf00[_0x4379fc];return _0x1dce06;};'use strict';var _=require(_0x0df0('0x0'));var util=require(_0x0df0('0x1'));var moment=require(_0x0df0('0x2'));var BPromise=require(_0x0df0('0x3'));var rs=require(_0x0df0('0x4'));var fs=require('fs');var Redis=require(_0x0df0('0x5'));var db=require(_0x0df0('0x6'))['db'];var utils=require('../../config/utils');var logger=require(_0x0df0('0x7'))(_0x0df0('0x8'));var config=require(_0x0df0('0x9'));var jayson=require(_0x0df0('0xa'));var client=jayson['client'][_0x0df0('0xb')]({'port':0x232a});config[_0x0df0('0xc')]=_[_0x0df0('0xd')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x0df0('0xe'))(new Redis(config[_0x0df0('0xc')]));require(_0x0df0('0xf'))[_0x0df0('0x10')](socket);function respondWithRpcPromise(_0x4121d8,_0x4fb4cc,_0x492a93){return new BPromise(function(_0xbec0d6,_0x4453e8){return client[_0x0df0('0x11')](_0x4121d8,_0x492a93)[_0x0df0('0x12')](function(_0x286cec){logger[_0x0df0('0x13')]('ChatInteraction,\x20%s,\x20%s',_0x4fb4cc,'request\x20sent');logger['debug'](_0x0df0('0x14'),_0x4fb4cc,'request\x20sent',JSON[_0x0df0('0x15')](_0x286cec));if(_0x286cec[_0x0df0('0x16')]){if(_0x286cec[_0x0df0('0x16')][_0x0df0('0x17')]===0x1f4){logger['error']('ChatInteraction,\x20%s,\x20%s',_0x4fb4cc,_0x286cec[_0x0df0('0x16')][_0x0df0('0x18')]);return _0x4453e8(_0x286cec[_0x0df0('0x16')][_0x0df0('0x18')]);}logger[_0x0df0('0x16')](_0x0df0('0x19'),_0x4fb4cc,_0x286cec['error'][_0x0df0('0x18')]);return _0xbec0d6(_0x286cec[_0x0df0('0x16')]['message']);}else{logger[_0x0df0('0x13')](_0x0df0('0x19'),_0x4fb4cc,'request\x20sent');_0xbec0d6(_0x286cec[_0x0df0('0x1a')]['message']);}})[_0x0df0('0x1b')](function(_0x214cc4){logger['error'](_0x0df0('0x19'),_0x4fb4cc,_0x214cc4);_0x4453e8(_0x214cc4);});});}exports[_0x0df0('0x1c')]=function(_0x264e46){var _0x5f1a9e=this;return new Promise(function(_0x30f8f9,_0x5cbb20){return db['ChatInteraction'][_0x0df0('0x1d')](_0x264e46[_0x0df0('0x1e')],{'raw':_0x264e46[_0x0df0('0x1f')]?_0x264e46[_0x0df0('0x1f')][_0x0df0('0x20')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x264e46['options']?_0x264e46[_0x0df0('0x1f')][_0x0df0('0x21')]||null:null,'attributes':_0x264e46[_0x0df0('0x1f')]?_0x264e46[_0x0df0('0x1f')][_0x0df0('0x22')]||null:null,'limit':_0x264e46[_0x0df0('0x1f')]?_0x264e46[_0x0df0('0x1f')][_0x0df0('0x23')]||null:null})[_0x0df0('0x12')](function(_0xea9c3c){logger[_0x0df0('0x13')](_0x0df0('0x1c'),_0x264e46);logger['debug'](_0x0df0('0x1c'),_0x264e46,JSON[_0x0df0('0x15')](_0xea9c3c));_0x30f8f9(_0xea9c3c);})[_0x0df0('0x1b')](function(_0xd13611){logger[_0x0df0('0x16')](_0x0df0('0x1c'),_0xd13611['message'],_0x264e46);_0x5cbb20(_0x5f1a9e[_0x0df0('0x16')](0x1f4,_0xd13611['message']));});});};exports['AddTagsToChatInteraction']=function(_0x3a08aa){return new Promise(function(_0x3f15e4,_0x12043f){return db[_0x0df0('0x24')][_0x0df0('0x25')]({'where':_0x3a08aa[_0x0df0('0x1f')]?_0x3a08aa['options'][_0x0df0('0x21')]||null:null})[_0x0df0('0x12')](function(_0x13b04f){if(_0x13b04f){return _0x13b04f[_0x0df0('0x26')](_0x3a08aa[_0x0df0('0x1e')][_0x0df0('0x27')],_['omit'](_0x3a08aa[_0x0df0('0x1e')],[_0x0df0('0x27'),'id'])||{});}})[_0x0df0('0x28')](function(_0x3c69e1){logger['info'](_0x0df0('0x29'),_0x3a08aa);logger[_0x0df0('0x2a')]('AddTags',_0x3a08aa,JSON['stringify'](_0x3c69e1));_0x3f15e4(_0x3c69e1);})[_0x0df0('0x1b')](function(_0x3cd391){logger[_0x0df0('0x16')]('AddTags',_0x3cd391[_0x0df0('0x18')],_0x3a08aa);_0x12043f(_this[_0x0df0('0x16')](0x1f4,_0x3cd391[_0x0df0('0x18')]));});});};