6310efc60b2007b055a5be04e51a1c135e893c91
[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 _0x3013=['info','MailInteraction,\x20%s,\x20%s','request\x20sent','debug','MailInteraction,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','MailInteraction','update','body','options','attributes','limit','UpdateMailInteraction','find','where','addTags','ids','spread','AddTags','lodash','util','moment','bluebird','ioredis','../../config/utils','../../config/logger','rpc','../../config/environment','client','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','request','then'];(function(_0x23959c,_0x2c3a19){var _0x55c852=function(_0x5b6629){while(--_0x5b6629){_0x23959c['push'](_0x23959c['shift']());}};_0x55c852(++_0x2c3a19);}(_0x3013,0xea));var _0x3301=function(_0x29cace,_0x50fc77){_0x29cace=_0x29cace-0x0;var _0x37401b=_0x3013[_0x29cace];return _0x37401b;};'use strict';var _=require(_0x3301('0x0'));var util=require(_0x3301('0x1'));var moment=require(_0x3301('0x2'));var BPromise=require(_0x3301('0x3'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0x3301('0x4'));var db=require('../../mysqldb')['db'];var utils=require(_0x3301('0x5'));var logger=require(_0x3301('0x6'))(_0x3301('0x7'));var config=require(_0x3301('0x8'));var jayson=require('jayson/promise');var client=jayson[_0x3301('0x9')]['http']({'port':0x232a});config[_0x3301('0xa')]=_[_0x3301('0xb')](config[_0x3301('0xa')],{'host':_0x3301('0xc'),'port':0x18eb});var socket=require(_0x3301('0xd'))(new Redis(config['redis']));require(_0x3301('0xe'))[_0x3301('0xf')](socket);function respondWithRpcPromise(_0x394691,_0x237b47,_0x27d95e){return new BPromise(function(_0x57039b,_0x1231a6){return client[_0x3301('0x10')](_0x394691,_0x27d95e)[_0x3301('0x11')](function(_0x365e2b){logger[_0x3301('0x12')](_0x3301('0x13'),_0x237b47,_0x3301('0x14'));logger[_0x3301('0x15')](_0x3301('0x16'),_0x237b47,_0x3301('0x14'),JSON[_0x3301('0x17')](_0x365e2b));if(_0x365e2b[_0x3301('0x18')]){if(_0x365e2b[_0x3301('0x18')][_0x3301('0x19')]===0x1f4){logger['error'](_0x3301('0x13'),_0x237b47,_0x365e2b[_0x3301('0x18')]['message']);return _0x1231a6(_0x365e2b['error'][_0x3301('0x1a')]);}logger[_0x3301('0x18')]('MailInteraction,\x20%s,\x20%s',_0x237b47,_0x365e2b[_0x3301('0x18')][_0x3301('0x1a')]);return _0x57039b(_0x365e2b['error'][_0x3301('0x1a')]);}else{logger[_0x3301('0x12')](_0x3301('0x13'),_0x237b47,'request\x20sent');_0x57039b(_0x365e2b[_0x3301('0x1b')][_0x3301('0x1a')]);}})[_0x3301('0x1c')](function(_0x3133b4){logger[_0x3301('0x18')](_0x3301('0x13'),_0x237b47,_0x3133b4);_0x1231a6(_0x3133b4);});});}exports['UpdateMailInteraction']=function(_0x4b0016){var _0x5c3170=this;return new Promise(function(_0x5c15e1,_0x23dcc8){return db[_0x3301('0x1d')][_0x3301('0x1e')](_0x4b0016[_0x3301('0x1f')],{'raw':_0x4b0016['options']?_0x4b0016['options']['raw']===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x4b0016[_0x3301('0x20')]?_0x4b0016['options']['where']||null:null,'attributes':_0x4b0016[_0x3301('0x20')]?_0x4b0016[_0x3301('0x20')][_0x3301('0x21')]||null:null,'limit':_0x4b0016[_0x3301('0x20')]?_0x4b0016[_0x3301('0x20')][_0x3301('0x22')]||null:null})['then'](function(_0x1a4264){logger[_0x3301('0x12')](_0x3301('0x23'),_0x4b0016);logger[_0x3301('0x15')]('UpdateMailInteraction',_0x4b0016,JSON[_0x3301('0x17')](_0x1a4264));_0x5c15e1(_0x1a4264);})[_0x3301('0x1c')](function(_0x150f73){logger[_0x3301('0x18')](_0x3301('0x23'),_0x150f73['message'],_0x4b0016);_0x23dcc8(_0x5c3170['error'](0x1f4,_0x150f73['message']));});});};exports['AddTagsToMailInteraction']=function(_0x114e5d){return new Promise(function(_0x1268d,_0x1684a9){return db['MailInteraction'][_0x3301('0x24')]({'where':_0x114e5d[_0x3301('0x20')]?_0x114e5d[_0x3301('0x20')][_0x3301('0x25')]||null:null})[_0x3301('0x11')](function(_0x3f3811){if(_0x3f3811){return _0x3f3811[_0x3301('0x26')](_0x114e5d[_0x3301('0x1f')]['ids'],_['omit'](_0x114e5d[_0x3301('0x1f')],[_0x3301('0x27'),'id'])||{});}})[_0x3301('0x28')](function(_0x2c3a0f){logger[_0x3301('0x12')](_0x3301('0x29'),_0x114e5d);logger[_0x3301('0x15')]('AddTags',_0x114e5d,JSON['stringify'](_0x2c3a0f));_0x1268d(_0x2c3a0f);})[_0x3301('0x1c')](function(_0x301cab){logger[_0x3301('0x18')](_0x3301('0x29'),_0x301cab[_0x3301('0x1a')],_0x114e5d);_0x1684a9(_this[_0x3301('0x18')](0x1f4,_0x301cab[_0x3301('0x1a')]));});});};