5580f8a926880b775674971d542a0f31eb0e9eb8
[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 _0x33a1=['limit','debug','catch','AddTagsToMailInteraction','find','addTags','ids','omit','spread','AddTags','lodash','util','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','jayson/promise','client','redis','defaults','socket.io-emitter','./mailInteraction.socket','register','request','then','request\x20sent','stringify','error','code','message','info','MailInteraction,\x20%s,\x20%s','result','UpdateMailInteraction','MailInteraction','body','options','raw'];(function(_0x330a60,_0x239b1a){var _0x1cabe8=function(_0x14cfef){while(--_0x14cfef){_0x330a60['push'](_0x330a60['shift']());}};_0x1cabe8(++_0x239b1a);}(_0x33a1,0x7c));var _0x133a=function(_0x59ee6f,_0x450239){_0x59ee6f=_0x59ee6f-0x0;var _0x4c0979=_0x33a1[_0x59ee6f];return _0x4c0979;};'use strict';var _=require(_0x133a('0x0'));var util=require(_0x133a('0x1'));var moment=require('moment');var BPromise=require('bluebird');var rs=require('randomstring');var fs=require('fs');var Redis=require('ioredis');var db=require(_0x133a('0x2'))['db'];var utils=require(_0x133a('0x3'));var logger=require(_0x133a('0x4'))('rpc');var config=require(_0x133a('0x5'));var jayson=require(_0x133a('0x6'));var client=jayson[_0x133a('0x7')]['http']({'port':0x232a});config[_0x133a('0x8')]=_[_0x133a('0x9')](config[_0x133a('0x8')],{'host':'localhost','port':0x18eb});var socket=require(_0x133a('0xa'))(new Redis(config[_0x133a('0x8')]));require(_0x133a('0xb'))[_0x133a('0xc')](socket);function respondWithRpcPromise(_0x4aa969,_0x5cba56,_0x4866ce){return new BPromise(function(_0x3b022c,_0x26f740){return client[_0x133a('0xd')](_0x4aa969,_0x4866ce)[_0x133a('0xe')](function(_0x1b60c3){logger['info']('MailInteraction,\x20%s,\x20%s',_0x5cba56,_0x133a('0xf'));logger['debug']('MailInteraction,\x20%s,\x20%s,\x20%s',_0x5cba56,_0x133a('0xf'),JSON[_0x133a('0x10')](_0x1b60c3));if(_0x1b60c3['error']){if(_0x1b60c3[_0x133a('0x11')][_0x133a('0x12')]===0x1f4){logger[_0x133a('0x11')]('MailInteraction,\x20%s,\x20%s',_0x5cba56,_0x1b60c3['error'][_0x133a('0x13')]);return _0x26f740(_0x1b60c3[_0x133a('0x11')][_0x133a('0x13')]);}logger[_0x133a('0x11')]('MailInteraction,\x20%s,\x20%s',_0x5cba56,_0x1b60c3['error']['message']);return _0x3b022c(_0x1b60c3[_0x133a('0x11')]['message']);}else{logger[_0x133a('0x14')](_0x133a('0x15'),_0x5cba56,'request\x20sent');_0x3b022c(_0x1b60c3[_0x133a('0x16')][_0x133a('0x13')]);}})['catch'](function(_0x4843c0){logger[_0x133a('0x11')]('MailInteraction,\x20%s,\x20%s',_0x5cba56,_0x4843c0);_0x26f740(_0x4843c0);});});}exports[_0x133a('0x17')]=function(_0x3f9c12){var _0x473b7b=this;return new Promise(function(_0x30d49d,_0x86ba96){return db[_0x133a('0x18')]['update'](_0x3f9c12[_0x133a('0x19')],{'raw':_0x3f9c12[_0x133a('0x1a')]?_0x3f9c12[_0x133a('0x1a')][_0x133a('0x1b')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x3f9c12[_0x133a('0x1a')]?_0x3f9c12[_0x133a('0x1a')]['where']||null:null,'attributes':_0x3f9c12['options']?_0x3f9c12['options']['attributes']||null:null,'limit':_0x3f9c12[_0x133a('0x1a')]?_0x3f9c12[_0x133a('0x1a')][_0x133a('0x1c')]||null:null})['then'](function(_0x33c486){logger[_0x133a('0x14')]('UpdateMailInteraction',_0x3f9c12);logger[_0x133a('0x1d')](_0x133a('0x17'),_0x3f9c12,JSON['stringify'](_0x33c486));_0x30d49d(_0x33c486);})[_0x133a('0x1e')](function(_0x2952f8){logger[_0x133a('0x11')](_0x133a('0x17'),_0x2952f8[_0x133a('0x13')],_0x3f9c12);_0x86ba96(_0x473b7b[_0x133a('0x11')](0x1f4,_0x2952f8[_0x133a('0x13')]));});});};exports[_0x133a('0x1f')]=function(_0x1f2607){return new Promise(function(_0x3f1ecc,_0x291d07){return db['MailInteraction'][_0x133a('0x20')]({'where':_0x1f2607['options']?_0x1f2607[_0x133a('0x1a')]['where']||null:null})[_0x133a('0xe')](function(_0x4e073e){if(_0x4e073e){return _0x4e073e[_0x133a('0x21')](_0x1f2607[_0x133a('0x19')][_0x133a('0x22')],_[_0x133a('0x23')](_0x1f2607[_0x133a('0x19')],[_0x133a('0x22'),'id'])||{});}})[_0x133a('0x24')](function(_0x44c38d){logger[_0x133a('0x14')](_0x133a('0x25'),_0x1f2607);logger[_0x133a('0x1d')](_0x133a('0x25'),_0x1f2607,JSON[_0x133a('0x10')](_0x44c38d));_0x3f1ecc(_0x44c38d);})[_0x133a('0x1e')](function(_0x143f52){logger[_0x133a('0x11')](_0x133a('0x25'),_0x143f52[_0x133a('0x13')],_0x1f2607);_0x291d07(_this[_0x133a('0x11')](0x1f4,_0x143f52[_0x133a('0x13')]));});});};