9c935b5d1accc87c8144d8f168532147058314d7
[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 _0x3299=['error','message','catch','UpdateMailInteraction','MailInteraction','update','body','options','where','then','AddTagsToMailInteraction','find','ids','spread','AddTags','util','moment','bluebird','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','./mailInteraction.socket','register','info','MailInteraction,\x20%s,\x20%s','request\x20sent','debug','MailInteraction,\x20%s,\x20%s,\x20%s','stringify'];(function(_0x4fdf44,_0x4e8679){var _0x2c52b3=function(_0x52f92d){while(--_0x52f92d){_0x4fdf44['push'](_0x4fdf44['shift']());}};_0x2c52b3(++_0x4e8679);}(_0x3299,0x1bc));var _0x9329=function(_0x10fb07,_0xa5bcef){_0x10fb07=_0x10fb07-0x0;var _0x43389f=_0x3299[_0x10fb07];return _0x43389f;};'use strict';var _=require('lodash');var util=require(_0x9329('0x0'));var moment=require(_0x9329('0x1'));var BPromise=require(_0x9329('0x2'));var rs=require(_0x9329('0x3'));var fs=require('fs');var Redis=require(_0x9329('0x4'));var db=require(_0x9329('0x5'))['db'];var utils=require(_0x9329('0x6'));var logger=require(_0x9329('0x7'))(_0x9329('0x8'));var config=require(_0x9329('0x9'));var jayson=require(_0x9329('0xa'));var client=jayson[_0x9329('0xb')][_0x9329('0xc')]({'port':0x232a});config[_0x9329('0xd')]=_[_0x9329('0xe')](config[_0x9329('0xd')],{'host':_0x9329('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x9329('0xd')]));require(_0x9329('0x10'))[_0x9329('0x11')](socket);function respondWithRpcPromise(_0x171f53,_0x330155,_0x53d176){return new BPromise(function(_0x181558,_0x354e9b){return client['request'](_0x171f53,_0x53d176)['then'](function(_0x5d72d0){logger[_0x9329('0x12')](_0x9329('0x13'),_0x330155,_0x9329('0x14'));logger[_0x9329('0x15')](_0x9329('0x16'),_0x330155,'request\x20sent',JSON[_0x9329('0x17')](_0x5d72d0));if(_0x5d72d0[_0x9329('0x18')]){if(_0x5d72d0[_0x9329('0x18')]['code']===0x1f4){logger[_0x9329('0x18')](_0x9329('0x13'),_0x330155,_0x5d72d0['error'][_0x9329('0x19')]);return _0x354e9b(_0x5d72d0[_0x9329('0x18')]['message']);}logger[_0x9329('0x18')](_0x9329('0x13'),_0x330155,_0x5d72d0[_0x9329('0x18')][_0x9329('0x19')]);return _0x181558(_0x5d72d0['error'][_0x9329('0x19')]);}else{logger['info'](_0x9329('0x13'),_0x330155,_0x9329('0x14'));_0x181558(_0x5d72d0['result'][_0x9329('0x19')]);}})[_0x9329('0x1a')](function(_0x5aa406){logger[_0x9329('0x18')]('MailInteraction,\x20%s,\x20%s',_0x330155,_0x5aa406);_0x354e9b(_0x5aa406);});});}exports[_0x9329('0x1b')]=function(_0x488ddc){var _0x38fdbf=this;return new Promise(function(_0x4d978a,_0x6676d7){return db[_0x9329('0x1c')][_0x9329('0x1d')](_0x488ddc[_0x9329('0x1e')],{'raw':_0x488ddc[_0x9329('0x1f')]?_0x488ddc[_0x9329('0x1f')]['raw']===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x488ddc[_0x9329('0x1f')]?_0x488ddc[_0x9329('0x1f')][_0x9329('0x20')]||null:null,'attributes':_0x488ddc[_0x9329('0x1f')]?_0x488ddc[_0x9329('0x1f')]['attributes']||null:null,'limit':_0x488ddc[_0x9329('0x1f')]?_0x488ddc[_0x9329('0x1f')]['limit']||null:null})[_0x9329('0x21')](function(_0x84dacf){logger[_0x9329('0x12')](_0x9329('0x1b'),_0x488ddc);logger['debug']('UpdateMailInteraction',_0x488ddc,JSON[_0x9329('0x17')](_0x84dacf));_0x4d978a(_0x84dacf);})[_0x9329('0x1a')](function(_0x4419fc){logger['error'](_0x9329('0x1b'),_0x4419fc['message'],_0x488ddc);_0x6676d7(_0x38fdbf[_0x9329('0x18')](0x1f4,_0x4419fc[_0x9329('0x19')]));});});};exports[_0x9329('0x22')]=function(_0x573209){return new Promise(function(_0x57ba4b,_0x36765a){return db['MailInteraction'][_0x9329('0x23')]({'where':_0x573209['options']?_0x573209[_0x9329('0x1f')]['where']||null:null})[_0x9329('0x21')](function(_0x469fa5){if(_0x469fa5){return _0x469fa5['addTags'](_0x573209[_0x9329('0x1e')][_0x9329('0x24')],_['omit'](_0x573209[_0x9329('0x1e')],[_0x9329('0x24'),'id'])||{});}})[_0x9329('0x25')](function(_0x333bc2){logger['info']('AddTags',_0x573209);logger['debug'](_0x9329('0x26'),_0x573209,JSON['stringify'](_0x333bc2));_0x57ba4b(_0x333bc2);})[_0x9329('0x1a')](function(_0x5a1a33){logger[_0x9329('0x18')](_0x9329('0x26'),_0x5a1a33['message'],_0x573209);_0x36765a(_this[_0x9329('0x18')](0x1f4,_0x5a1a33[_0x9329('0x19')]));});});};