518d483c68a63d56c4d1afe5cf932aab81a248db
[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 _0xfa68=['raw','where','limit','stringify','AddTagsToMailInteraction','addTags','body','ids','omit','spread','AddTags','lodash','util','moment','randomstring','ioredis','../../mysqldb','../../config/logger','rpc','../../config/environment','jayson/promise','client','redis','defaults','localhost','socket.io-emitter','register','then','MailInteraction,\x20%s,\x20%s','request\x20sent','MailInteraction,\x20%s,\x20%s,\x20%s','error','code','message','info','result','catch','UpdateMailInteraction','MailInteraction','update','options'];(function(_0x53ac73,_0x1481c7){var _0x369208=function(_0x454867){while(--_0x454867){_0x53ac73['push'](_0x53ac73['shift']());}};_0x369208(++_0x1481c7);}(_0xfa68,0x86));var _0x8fa6=function(_0x26ed7b,_0x214636){_0x26ed7b=_0x26ed7b-0x0;var _0x1fd22f=_0xfa68[_0x26ed7b];return _0x1fd22f;};'use strict';var _=require(_0x8fa6('0x0'));var util=require(_0x8fa6('0x1'));var moment=require(_0x8fa6('0x2'));var BPromise=require('bluebird');var rs=require(_0x8fa6('0x3'));var fs=require('fs');var Redis=require(_0x8fa6('0x4'));var db=require(_0x8fa6('0x5'))['db'];var utils=require('../../config/utils');var logger=require(_0x8fa6('0x6'))(_0x8fa6('0x7'));var config=require(_0x8fa6('0x8'));var jayson=require(_0x8fa6('0x9'));var client=jayson[_0x8fa6('0xa')]['http']({'port':0x232a});config[_0x8fa6('0xb')]=_[_0x8fa6('0xc')](config['redis'],{'host':_0x8fa6('0xd'),'port':0x18eb});var socket=require(_0x8fa6('0xe'))(new Redis(config['redis']));require('./mailInteraction.socket')[_0x8fa6('0xf')](socket);function respondWithRpcPromise(_0x1da4af,_0x4ad85d,_0x1a98cc){return new BPromise(function(_0x176ee6,_0x48b1a1){return client['request'](_0x1da4af,_0x1a98cc)[_0x8fa6('0x10')](function(_0x69bf77){logger['info'](_0x8fa6('0x11'),_0x4ad85d,_0x8fa6('0x12'));logger['debug'](_0x8fa6('0x13'),_0x4ad85d,_0x8fa6('0x12'),JSON['stringify'](_0x69bf77));if(_0x69bf77[_0x8fa6('0x14')]){if(_0x69bf77[_0x8fa6('0x14')][_0x8fa6('0x15')]===0x1f4){logger[_0x8fa6('0x14')](_0x8fa6('0x11'),_0x4ad85d,_0x69bf77['error']['message']);return _0x48b1a1(_0x69bf77[_0x8fa6('0x14')]['message']);}logger[_0x8fa6('0x14')](_0x8fa6('0x11'),_0x4ad85d,_0x69bf77[_0x8fa6('0x14')]['message']);return _0x176ee6(_0x69bf77[_0x8fa6('0x14')][_0x8fa6('0x16')]);}else{logger[_0x8fa6('0x17')]('MailInteraction,\x20%s,\x20%s',_0x4ad85d,_0x8fa6('0x12'));_0x176ee6(_0x69bf77[_0x8fa6('0x18')][_0x8fa6('0x16')]);}})[_0x8fa6('0x19')](function(_0x5bc897){logger[_0x8fa6('0x14')]('MailInteraction,\x20%s,\x20%s',_0x4ad85d,_0x5bc897);_0x48b1a1(_0x5bc897);});});}exports[_0x8fa6('0x1a')]=function(_0x3a3c15){var _0x4581c3=this;return new Promise(function(_0x40190f,_0x50e633){return db[_0x8fa6('0x1b')][_0x8fa6('0x1c')](_0x3a3c15['body'],{'raw':_0x3a3c15[_0x8fa6('0x1d')]?_0x3a3c15[_0x8fa6('0x1d')][_0x8fa6('0x1e')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x3a3c15['options']?_0x3a3c15[_0x8fa6('0x1d')][_0x8fa6('0x1f')]||null:null,'attributes':_0x3a3c15[_0x8fa6('0x1d')]?_0x3a3c15['options']['attributes']||null:null,'limit':_0x3a3c15['options']?_0x3a3c15[_0x8fa6('0x1d')][_0x8fa6('0x20')]||null:null})['then'](function(_0x5b1915){logger[_0x8fa6('0x17')](_0x8fa6('0x1a'),_0x3a3c15);logger['debug']('UpdateMailInteraction',_0x3a3c15,JSON[_0x8fa6('0x21')](_0x5b1915));_0x40190f(_0x5b1915);})[_0x8fa6('0x19')](function(_0x424546){logger['error'](_0x8fa6('0x1a'),_0x424546[_0x8fa6('0x16')],_0x3a3c15);_0x50e633(_0x4581c3['error'](0x1f4,_0x424546[_0x8fa6('0x16')]));});});};exports[_0x8fa6('0x22')]=function(_0x492b1f){return new Promise(function(_0x360230,_0x39cf7c){return db['MailInteraction']['find']({'where':_0x492b1f[_0x8fa6('0x1d')]?_0x492b1f[_0x8fa6('0x1d')]['where']||null:null})['then'](function(_0x43917e){if(_0x43917e){return _0x43917e[_0x8fa6('0x23')](_0x492b1f[_0x8fa6('0x24')][_0x8fa6('0x25')],_[_0x8fa6('0x26')](_0x492b1f[_0x8fa6('0x24')],[_0x8fa6('0x25'),'id'])||{});}})[_0x8fa6('0x27')](function(_0x53ea54){logger['info'](_0x8fa6('0x28'),_0x492b1f);logger['debug'](_0x8fa6('0x28'),_0x492b1f,JSON[_0x8fa6('0x21')](_0x53ea54));_0x360230(_0x53ea54);})[_0x8fa6('0x19')](function(_0x50ed35){logger[_0x8fa6('0x14')](_0x8fa6('0x28'),_0x50ed35['message'],_0x492b1f);_0x39cf7c(_this[_0x8fa6('0x14')](0x1f4,_0x50ed35[_0x8fa6('0x16')]));});});};