aadd508d6c45e15fb8db832c1a2b4057a53333dc
[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 _0x50b9=['ids','omit','spread','AddTags','lodash','util','moment','bluebird','randomstring','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','defaults','redis','register','then','info','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','ChatInteraction,\x20%s,\x20%s','message','result','UpdateChatInteraction','update','body','options','raw','limit','AddTagsToChatInteraction','ChatInteraction','find','where'];(function(_0x4bd26e,_0x4ae638){var _0x10c357=function(_0x11537d){while(--_0x11537d){_0x4bd26e['push'](_0x4bd26e['shift']());}};_0x10c357(++_0x4ae638);}(_0x50b9,0x1bc));var _0x950b=function(_0x10dc94,_0x2fed4f){_0x10dc94=_0x10dc94-0x0;var _0x4a462d=_0x50b9[_0x10dc94];return _0x4a462d;};'use strict';var _=require(_0x950b('0x0'));var util=require(_0x950b('0x1'));var moment=require(_0x950b('0x2'));var BPromise=require(_0x950b('0x3'));var rs=require(_0x950b('0x4'));var fs=require('fs');var Redis=require('ioredis');var db=require(_0x950b('0x5'))['db'];var utils=require(_0x950b('0x6'));var logger=require(_0x950b('0x7'))(_0x950b('0x8'));var config=require(_0x950b('0x9'));var jayson=require(_0x950b('0xa'));var client=jayson[_0x950b('0xb')]['http']({'port':0x232a});config['redis']=_[_0x950b('0xc')](config[_0x950b('0xd')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./chatInteraction.socket')[_0x950b('0xe')](socket);function respondWithRpcPromise(_0x1cce8d,_0x5000b2,_0x2c26cb){return new BPromise(function(_0x211436,_0x5c76b2){return client['request'](_0x1cce8d,_0x2c26cb)[_0x950b('0xf')](function(_0x2e85ba){logger[_0x950b('0x10')]('ChatInteraction,\x20%s,\x20%s',_0x5000b2,_0x950b('0x11'));logger[_0x950b('0x12')](_0x950b('0x13'),_0x5000b2,_0x950b('0x11'),JSON[_0x950b('0x14')](_0x2e85ba));if(_0x2e85ba[_0x950b('0x15')]){if(_0x2e85ba[_0x950b('0x15')][_0x950b('0x16')]===0x1f4){logger[_0x950b('0x15')](_0x950b('0x17'),_0x5000b2,_0x2e85ba[_0x950b('0x15')][_0x950b('0x18')]);return _0x5c76b2(_0x2e85ba['error'][_0x950b('0x18')]);}logger['error'](_0x950b('0x17'),_0x5000b2,_0x2e85ba[_0x950b('0x15')]['message']);return _0x211436(_0x2e85ba[_0x950b('0x15')]['message']);}else{logger['info'](_0x950b('0x17'),_0x5000b2,_0x950b('0x11'));_0x211436(_0x2e85ba[_0x950b('0x19')]['message']);}})['catch'](function(_0x369005){logger[_0x950b('0x15')]('ChatInteraction,\x20%s,\x20%s',_0x5000b2,_0x369005);_0x5c76b2(_0x369005);});});}exports[_0x950b('0x1a')]=function(_0x55a89f){var _0x272b6b=this;return new Promise(function(_0x4f69af,_0x4b5113){return db['ChatInteraction'][_0x950b('0x1b')](_0x55a89f[_0x950b('0x1c')],{'raw':_0x55a89f[_0x950b('0x1d')]?_0x55a89f[_0x950b('0x1d')][_0x950b('0x1e')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x55a89f[_0x950b('0x1d')]?_0x55a89f[_0x950b('0x1d')]['where']||null:null,'attributes':_0x55a89f['options']?_0x55a89f[_0x950b('0x1d')]['attributes']||null:null,'limit':_0x55a89f[_0x950b('0x1d')]?_0x55a89f['options'][_0x950b('0x1f')]||null:null})[_0x950b('0xf')](function(_0x5d6a45){logger[_0x950b('0x10')]('UpdateChatInteraction',_0x55a89f);logger[_0x950b('0x12')](_0x950b('0x1a'),_0x55a89f,JSON[_0x950b('0x14')](_0x5d6a45));_0x4f69af(_0x5d6a45);})['catch'](function(_0x18e998){logger[_0x950b('0x15')](_0x950b('0x1a'),_0x18e998[_0x950b('0x18')],_0x55a89f);_0x4b5113(_0x272b6b[_0x950b('0x15')](0x1f4,_0x18e998[_0x950b('0x18')]));});});};exports[_0x950b('0x20')]=function(_0x16a000){return new Promise(function(_0x408518,_0x41c4de){return db[_0x950b('0x21')][_0x950b('0x22')]({'where':_0x16a000[_0x950b('0x1d')]?_0x16a000[_0x950b('0x1d')][_0x950b('0x23')]||null:null})[_0x950b('0xf')](function(_0x3f77b5){if(_0x3f77b5){return _0x3f77b5['addTags'](_0x16a000['body'][_0x950b('0x24')],_[_0x950b('0x25')](_0x16a000[_0x950b('0x1c')],[_0x950b('0x24'),'id'])||{});}})[_0x950b('0x26')](function(_0x3a5ebd){logger[_0x950b('0x10')]('AddTags',_0x16a000);logger[_0x950b('0x12')](_0x950b('0x27'),_0x16a000,JSON['stringify'](_0x3a5ebd));_0x408518(_0x3a5ebd);})['catch'](function(_0x3b072f){logger[_0x950b('0x15')]('AddTags',_0x3b072f[_0x950b('0x18')],_0x16a000);_0x41c4de(_this[_0x950b('0x15')](0x1f4,_0x3b072f[_0x950b('0x18')]));});});};