9bd765fdbf5d667f626c273c70d5ffef160fa9f2
[motion2.git] / server / api / mailInteraction / mailInteraction.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 _0x14b2=['localhost','register','request','then','info','MailInteraction,\x20%s,\x20%s','request\x20sent','MailInteraction,\x20%s,\x20%s,\x20%s','error','code','message','MailInteraction','options','raw','where','attributes','limit','UpdateMailInteraction','debug','stringify','catch','AddTagsToMailInteraction','ids','omit','body','spread','AddTags','lodash','util','bluebird','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','client','http','redis','defaults'];(function(_0x3dc86c,_0x9de6b0){var _0x30c8c0=function(_0x2be893){while(--_0x2be893){_0x3dc86c['push'](_0x3dc86c['shift']());}};_0x30c8c0(++_0x9de6b0);}(_0x14b2,0x1a1));var _0x214b=function(_0x2b44e3,_0x82a548){_0x2b44e3=_0x2b44e3-0x0;var _0x352473=_0x14b2[_0x2b44e3];return _0x352473;};'use strict';var _=require(_0x214b('0x0'));var util=require(_0x214b('0x1'));var moment=require('moment');var BPromise=require(_0x214b('0x2'));var rs=require(_0x214b('0x3'));var fs=require('fs');var Redis=require(_0x214b('0x4'));var db=require(_0x214b('0x5'))['db'];var utils=require('../../config/utils');var logger=require(_0x214b('0x6'))(_0x214b('0x7'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson[_0x214b('0x8')][_0x214b('0x9')]({'port':0x232a});config[_0x214b('0xa')]=_[_0x214b('0xb')](config[_0x214b('0xa')],{'host':_0x214b('0xc'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x214b('0xa')]));require('./mailInteraction.socket')[_0x214b('0xd')](socket);function respondWithRpcPromise(_0x53d959,_0x322c4c,_0x5256ad){return new BPromise(function(_0x5ccdfd,_0x4cae5e){return client[_0x214b('0xe')](_0x53d959,_0x5256ad)[_0x214b('0xf')](function(_0x49acef){logger[_0x214b('0x10')](_0x214b('0x11'),_0x322c4c,_0x214b('0x12'));logger['debug'](_0x214b('0x13'),_0x322c4c,'request\x20sent',JSON['stringify'](_0x49acef));if(_0x49acef[_0x214b('0x14')]){if(_0x49acef[_0x214b('0x14')][_0x214b('0x15')]===0x1f4){logger[_0x214b('0x14')](_0x214b('0x11'),_0x322c4c,_0x49acef[_0x214b('0x14')]['message']);return _0x4cae5e(_0x49acef[_0x214b('0x14')]['message']);}logger[_0x214b('0x14')](_0x214b('0x11'),_0x322c4c,_0x49acef[_0x214b('0x14')]['message']);return _0x5ccdfd(_0x49acef['error'][_0x214b('0x16')]);}else{logger['info'](_0x214b('0x11'),_0x322c4c,_0x214b('0x12'));_0x5ccdfd(_0x49acef['result'][_0x214b('0x16')]);}})['catch'](function(_0x44028f){logger[_0x214b('0x14')](_0x214b('0x11'),_0x322c4c,_0x44028f);_0x4cae5e(_0x44028f);});});}exports['UpdateMailInteraction']=function(_0x14c45c){var _0x1e80bc=this;return new Promise(function(_0x2dacc1,_0x3dc351){return db[_0x214b('0x17')]['update'](_0x14c45c['body'],{'raw':_0x14c45c[_0x214b('0x18')]?_0x14c45c[_0x214b('0x18')][_0x214b('0x19')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x14c45c[_0x214b('0x18')]?_0x14c45c['options'][_0x214b('0x1a')]||null:null,'attributes':_0x14c45c[_0x214b('0x18')]?_0x14c45c[_0x214b('0x18')][_0x214b('0x1b')]||null:null,'limit':_0x14c45c['options']?_0x14c45c[_0x214b('0x18')][_0x214b('0x1c')]||null:null})[_0x214b('0xf')](function(_0x220d38){logger[_0x214b('0x10')](_0x214b('0x1d'),_0x14c45c);logger[_0x214b('0x1e')](_0x214b('0x1d'),_0x14c45c,JSON[_0x214b('0x1f')](_0x220d38));_0x2dacc1(_0x220d38);})[_0x214b('0x20')](function(_0x2aaaf1){logger['error']('UpdateMailInteraction',_0x2aaaf1[_0x214b('0x16')],_0x14c45c);_0x3dc351(_0x1e80bc[_0x214b('0x14')](0x1f4,_0x2aaaf1[_0x214b('0x16')]));});});};exports[_0x214b('0x21')]=function(_0x49bed4){return new Promise(function(_0xf137ee,_0x787560){return db['MailInteraction']['find']({'where':_0x49bed4[_0x214b('0x18')]?_0x49bed4[_0x214b('0x18')][_0x214b('0x1a')]||null:null})['then'](function(_0x1b3a94){if(_0x1b3a94){return _0x1b3a94['addTags'](_0x49bed4['body'][_0x214b('0x22')],_[_0x214b('0x23')](_0x49bed4[_0x214b('0x24')],[_0x214b('0x22'),'id'])||{});}})[_0x214b('0x25')](function(_0x42a9d3){logger[_0x214b('0x10')](_0x214b('0x26'),_0x49bed4);logger['debug']('AddTags',_0x49bed4,JSON[_0x214b('0x1f')](_0x42a9d3));_0xf137ee(_0x42a9d3);})[_0x214b('0x20')](function(_0x131860){logger[_0x214b('0x14')]('AddTags',_0x131860['message'],_0x49bed4);_0x787560(_this[_0x214b('0x14')](0x1f4,_0x131860[_0x214b('0x16')]));});});};