ee62c413fa6b71de351e481a631649ac3f50a6df
[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 _0x377e=['error','message','result','catch','ChatInteraction','body','options','raw','where','limit','UpdateChatInteraction','AddTagsToChatInteraction','find','ids','omit','spread','AddTags','lodash','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','socket.io-emitter','./chatInteraction.socket','request','then','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify'];(function(_0x4d3b3f,_0x3308ae){var _0x3b159e=function(_0x215ee8){while(--_0x215ee8){_0x4d3b3f['push'](_0x4d3b3f['shift']());}};_0x3b159e(++_0x3308ae);}(_0x377e,0x1bf));var _0xe377=function(_0x30ba61,_0x48b905){_0x30ba61=_0x30ba61-0x0;var _0x7300ad=_0x377e[_0x30ba61];return _0x7300ad;};'use strict';var _=require(_0xe377('0x0'));var util=require(_0xe377('0x1'));var moment=require(_0xe377('0x2'));var BPromise=require(_0xe377('0x3'));var rs=require(_0xe377('0x4'));var fs=require('fs');var Redis=require(_0xe377('0x5'));var db=require(_0xe377('0x6'))['db'];var utils=require('../../config/utils');var logger=require(_0xe377('0x7'))(_0xe377('0x8'));var config=require(_0xe377('0x9'));var jayson=require(_0xe377('0xa'));var client=jayson[_0xe377('0xb')][_0xe377('0xc')]({'port':0x232a});config[_0xe377('0xd')]=_[_0xe377('0xe')](config[_0xe377('0xd')],{'host':_0xe377('0xf'),'port':0x18eb});var socket=require(_0xe377('0x10'))(new Redis(config[_0xe377('0xd')]));require(_0xe377('0x11'))['register'](socket);function respondWithRpcPromise(_0x216768,_0x5c4c71,_0x332e4d){return new BPromise(function(_0x5e2c08,_0x3e0b65){return client[_0xe377('0x12')](_0x216768,_0x332e4d)[_0xe377('0x13')](function(_0x29b406){logger[_0xe377('0x14')](_0xe377('0x15'),_0x5c4c71,_0xe377('0x16'));logger[_0xe377('0x17')](_0xe377('0x18'),_0x5c4c71,_0xe377('0x16'),JSON[_0xe377('0x19')](_0x29b406));if(_0x29b406['error']){if(_0x29b406[_0xe377('0x1a')]['code']===0x1f4){logger[_0xe377('0x1a')]('ChatInteraction,\x20%s,\x20%s',_0x5c4c71,_0x29b406[_0xe377('0x1a')][_0xe377('0x1b')]);return _0x3e0b65(_0x29b406[_0xe377('0x1a')]['message']);}logger['error'](_0xe377('0x15'),_0x5c4c71,_0x29b406[_0xe377('0x1a')][_0xe377('0x1b')]);return _0x5e2c08(_0x29b406[_0xe377('0x1a')][_0xe377('0x1b')]);}else{logger[_0xe377('0x14')](_0xe377('0x15'),_0x5c4c71,_0xe377('0x16'));_0x5e2c08(_0x29b406[_0xe377('0x1c')]['message']);}})[_0xe377('0x1d')](function(_0xee44c2){logger[_0xe377('0x1a')](_0xe377('0x15'),_0x5c4c71,_0xee44c2);_0x3e0b65(_0xee44c2);});});}exports['UpdateChatInteraction']=function(_0x131e73){var _0x1276c7=this;return new Promise(function(_0x26bd3e,_0x298b7a){return db[_0xe377('0x1e')]['update'](_0x131e73[_0xe377('0x1f')],{'raw':_0x131e73[_0xe377('0x20')]?_0x131e73['options'][_0xe377('0x21')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x131e73[_0xe377('0x20')]?_0x131e73[_0xe377('0x20')][_0xe377('0x22')]||null:null,'attributes':_0x131e73[_0xe377('0x20')]?_0x131e73[_0xe377('0x20')]['attributes']||null:null,'limit':_0x131e73[_0xe377('0x20')]?_0x131e73[_0xe377('0x20')][_0xe377('0x23')]||null:null})[_0xe377('0x13')](function(_0x36b6b6){logger[_0xe377('0x14')](_0xe377('0x24'),_0x131e73);logger['debug'](_0xe377('0x24'),_0x131e73,JSON[_0xe377('0x19')](_0x36b6b6));_0x26bd3e(_0x36b6b6);})['catch'](function(_0x117e92){logger[_0xe377('0x1a')]('UpdateChatInteraction',_0x117e92[_0xe377('0x1b')],_0x131e73);_0x298b7a(_0x1276c7[_0xe377('0x1a')](0x1f4,_0x117e92[_0xe377('0x1b')]));});});};exports[_0xe377('0x25')]=function(_0xb00bca){return new Promise(function(_0x3605af,_0x1f45f6){return db[_0xe377('0x1e')][_0xe377('0x26')]({'where':_0xb00bca[_0xe377('0x20')]?_0xb00bca[_0xe377('0x20')][_0xe377('0x22')]||null:null})[_0xe377('0x13')](function(_0x2c8c84){if(_0x2c8c84){return _0x2c8c84['addTags'](_0xb00bca[_0xe377('0x1f')][_0xe377('0x27')],_[_0xe377('0x28')](_0xb00bca[_0xe377('0x1f')],[_0xe377('0x27'),'id'])||{});}})[_0xe377('0x29')](function(_0x4182cb){logger[_0xe377('0x14')](_0xe377('0x2a'),_0xb00bca);logger[_0xe377('0x17')](_0xe377('0x2a'),_0xb00bca,JSON[_0xe377('0x19')](_0x4182cb));_0x3605af(_0x4182cb);})[_0xe377('0x1d')](function(_0x46a0fb){logger['error']('AddTags',_0x46a0fb[_0xe377('0x1b')],_0xb00bca);_0x1f45f6(_this['error'](0x1f4,_0x46a0fb[_0xe377('0x1b')]));});});};