Built motion from commit 013e4bb4.|2.6.18
[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 _0xcbfd=['redis','defaults','localhost','socket.io-emitter','./chatInteraction.socket','register','request','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','stringify','message','error','info','result','catch','UpdateChatInteraction','ChatInteraction','body','options','raw','attributes','limit','then','AddTagsToChatInteraction','find','where','addTags','omit','ids','lodash','util','moment','bluebird','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','client','http'];(function(_0x59ee6f,_0x450239){var _0x4c0979=function(_0x565e92){while(--_0x565e92){_0x59ee6f['push'](_0x59ee6f['shift']());}};_0x4c0979(++_0x450239);}(_0xcbfd,0x70));var _0xdcbf=function(_0x45b0ad,_0xd22c0c){_0x45b0ad=_0x45b0ad-0x0;var _0x2af781=_0xcbfd[_0x45b0ad];return _0x2af781;};'use strict';var _=require(_0xdcbf('0x0'));var util=require(_0xdcbf('0x1'));var moment=require(_0xdcbf('0x2'));var BPromise=require(_0xdcbf('0x3'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0xdcbf('0x4'));var db=require('../../mysqldb')['db'];var utils=require(_0xdcbf('0x5'));var logger=require(_0xdcbf('0x6'))(_0xdcbf('0x7'));var config=require(_0xdcbf('0x8'));var jayson=require('jayson/promise');var client=jayson[_0xdcbf('0x9')][_0xdcbf('0xa')]({'port':0x232a});config[_0xdcbf('0xb')]=_[_0xdcbf('0xc')](config['redis'],{'host':_0xdcbf('0xd'),'port':0x18eb});var socket=require(_0xdcbf('0xe'))(new Redis(config[_0xdcbf('0xb')]));require(_0xdcbf('0xf'))[_0xdcbf('0x10')](socket);function respondWithRpcPromise(_0x4757dd,_0x5736f7,_0x5c9c9b){return new BPromise(function(_0x584e0d,_0x18f8c9){return client[_0xdcbf('0x11')](_0x4757dd,_0x5c9c9b)['then'](function(_0x20eca5){logger['info'](_0xdcbf('0x12'),_0x5736f7,_0xdcbf('0x13'));logger[_0xdcbf('0x14')]('ChatInteraction,\x20%s,\x20%s,\x20%s',_0x5736f7,_0xdcbf('0x13'),JSON[_0xdcbf('0x15')](_0x20eca5));if(_0x20eca5['error']){if(_0x20eca5['error']['code']===0x1f4){logger['error']('ChatInteraction,\x20%s,\x20%s',_0x5736f7,_0x20eca5['error'][_0xdcbf('0x16')]);return _0x18f8c9(_0x20eca5[_0xdcbf('0x17')][_0xdcbf('0x16')]);}logger['error'](_0xdcbf('0x12'),_0x5736f7,_0x20eca5[_0xdcbf('0x17')][_0xdcbf('0x16')]);return _0x584e0d(_0x20eca5[_0xdcbf('0x17')][_0xdcbf('0x16')]);}else{logger[_0xdcbf('0x18')]('ChatInteraction,\x20%s,\x20%s',_0x5736f7,_0xdcbf('0x13'));_0x584e0d(_0x20eca5[_0xdcbf('0x19')]['message']);}})[_0xdcbf('0x1a')](function(_0x167fb0){logger[_0xdcbf('0x17')](_0xdcbf('0x12'),_0x5736f7,_0x167fb0);_0x18f8c9(_0x167fb0);});});}exports[_0xdcbf('0x1b')]=function(_0x693e15){var _0x6e2a48=this;return new Promise(function(_0x423c0e,_0x5e2c60){return db[_0xdcbf('0x1c')]['update'](_0x693e15[_0xdcbf('0x1d')],{'raw':_0x693e15[_0xdcbf('0x1e')]?_0x693e15[_0xdcbf('0x1e')][_0xdcbf('0x1f')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x693e15[_0xdcbf('0x1e')]?_0x693e15['options']['where']||null:null,'attributes':_0x693e15['options']?_0x693e15[_0xdcbf('0x1e')][_0xdcbf('0x20')]||null:null,'limit':_0x693e15['options']?_0x693e15['options'][_0xdcbf('0x21')]||null:null})[_0xdcbf('0x22')](function(_0x6fa036){logger[_0xdcbf('0x18')]('UpdateChatInteraction',_0x693e15);logger[_0xdcbf('0x14')]('UpdateChatInteraction',_0x693e15,JSON[_0xdcbf('0x15')](_0x6fa036));_0x423c0e(_0x6fa036);})[_0xdcbf('0x1a')](function(_0x1c3ae0){logger['error'](_0xdcbf('0x1b'),_0x1c3ae0[_0xdcbf('0x16')],_0x693e15);_0x5e2c60(_0x6e2a48['error'](0x1f4,_0x1c3ae0[_0xdcbf('0x16')]));});});};exports[_0xdcbf('0x23')]=function(_0x6b29f5){return new Promise(function(_0x361b11,_0x304fd6){return db[_0xdcbf('0x1c')][_0xdcbf('0x24')]({'where':_0x6b29f5['options']?_0x6b29f5[_0xdcbf('0x1e')][_0xdcbf('0x25')]||null:null})[_0xdcbf('0x22')](function(_0x37281f){if(_0x37281f){return _0x37281f[_0xdcbf('0x26')](_0x6b29f5[_0xdcbf('0x1d')]['ids'],_[_0xdcbf('0x27')](_0x6b29f5[_0xdcbf('0x1d')],[_0xdcbf('0x28'),'id'])||{});}})['spread'](function(_0x7dc692){logger[_0xdcbf('0x18')]('AddTags',_0x6b29f5);logger[_0xdcbf('0x14')]('AddTags',_0x6b29f5,JSON[_0xdcbf('0x15')](_0x7dc692));_0x361b11(_0x7dc692);})[_0xdcbf('0x1a')](function(_0x389c91){logger[_0xdcbf('0x17')]('AddTags',_0x389c91[_0xdcbf('0x16')],_0x6b29f5);_0x304fd6(_this[_0xdcbf('0x17')](0x1f4,_0x389c91['message']));});});};