9a895e05b9ad0e9a25989a1d2cfe74ac4b2538d1
[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 _0x0b04=['find','addTags','ids','spread','AddTags','lodash','util','moment','randomstring','ioredis','../../mysqldb','../../config/utils','../../config/logger','../../config/environment','client','http','redis','defaults','socket.io-emitter','./mailInteraction.socket','register','request','then','MailInteraction,\x20%s,\x20%s','debug','MailInteraction,\x20%s,\x20%s,\x20%s','request\x20sent','error','message','info','UpdateMailInteraction','options','raw','where','limit','stringify','catch','AddTagsToMailInteraction','MailInteraction'];(function(_0x353585,_0x4ddaad){var _0x25f624=function(_0x6bc3da){while(--_0x6bc3da){_0x353585['push'](_0x353585['shift']());}};_0x25f624(++_0x4ddaad);}(_0x0b04,0x164));var _0x40b0=function(_0x68ee8b,_0x3cc6c5){_0x68ee8b=_0x68ee8b-0x0;var _0x5148f7=_0x0b04[_0x68ee8b];return _0x5148f7;};'use strict';var _=require(_0x40b0('0x0'));var util=require(_0x40b0('0x1'));var moment=require(_0x40b0('0x2'));var BPromise=require('bluebird');var rs=require(_0x40b0('0x3'));var fs=require('fs');var Redis=require(_0x40b0('0x4'));var db=require(_0x40b0('0x5'))['db'];var utils=require(_0x40b0('0x6'));var logger=require(_0x40b0('0x7'))('rpc');var config=require(_0x40b0('0x8'));var jayson=require('jayson/promise');var client=jayson[_0x40b0('0x9')][_0x40b0('0xa')]({'port':0x232a});config[_0x40b0('0xb')]=_[_0x40b0('0xc')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x40b0('0xd'))(new Redis(config[_0x40b0('0xb')]));require(_0x40b0('0xe'))[_0x40b0('0xf')](socket);function respondWithRpcPromise(_0x42a633,_0xb8289c,_0x303728){return new BPromise(function(_0x1989ae,_0xd9d16a){return client[_0x40b0('0x10')](_0x42a633,_0x303728)[_0x40b0('0x11')](function(_0x520c88){logger['info'](_0x40b0('0x12'),_0xb8289c,'request\x20sent');logger[_0x40b0('0x13')](_0x40b0('0x14'),_0xb8289c,_0x40b0('0x15'),JSON['stringify'](_0x520c88));if(_0x520c88[_0x40b0('0x16')]){if(_0x520c88[_0x40b0('0x16')]['code']===0x1f4){logger[_0x40b0('0x16')]('MailInteraction,\x20%s,\x20%s',_0xb8289c,_0x520c88[_0x40b0('0x16')][_0x40b0('0x17')]);return _0xd9d16a(_0x520c88[_0x40b0('0x16')][_0x40b0('0x17')]);}logger[_0x40b0('0x16')](_0x40b0('0x12'),_0xb8289c,_0x520c88[_0x40b0('0x16')][_0x40b0('0x17')]);return _0x1989ae(_0x520c88['error']['message']);}else{logger[_0x40b0('0x18')]('MailInteraction,\x20%s,\x20%s',_0xb8289c,_0x40b0('0x15'));_0x1989ae(_0x520c88['result'][_0x40b0('0x17')]);}})['catch'](function(_0x12a6a8){logger['error'](_0x40b0('0x12'),_0xb8289c,_0x12a6a8);_0xd9d16a(_0x12a6a8);});});}exports[_0x40b0('0x19')]=function(_0xd63aa7){var _0x3ff080=this;return new Promise(function(_0x7d64bd,_0x3fa917){return db['MailInteraction']['update'](_0xd63aa7['body'],{'raw':_0xd63aa7[_0x40b0('0x1a')]?_0xd63aa7['options'][_0x40b0('0x1b')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0xd63aa7[_0x40b0('0x1a')]?_0xd63aa7[_0x40b0('0x1a')][_0x40b0('0x1c')]||null:null,'attributes':_0xd63aa7[_0x40b0('0x1a')]?_0xd63aa7['options']['attributes']||null:null,'limit':_0xd63aa7[_0x40b0('0x1a')]?_0xd63aa7[_0x40b0('0x1a')][_0x40b0('0x1d')]||null:null})[_0x40b0('0x11')](function(_0x2fda4c){logger[_0x40b0('0x18')]('UpdateMailInteraction',_0xd63aa7);logger[_0x40b0('0x13')](_0x40b0('0x19'),_0xd63aa7,JSON[_0x40b0('0x1e')](_0x2fda4c));_0x7d64bd(_0x2fda4c);})[_0x40b0('0x1f')](function(_0xdfcc3b){logger[_0x40b0('0x16')]('UpdateMailInteraction',_0xdfcc3b[_0x40b0('0x17')],_0xd63aa7);_0x3fa917(_0x3ff080['error'](0x1f4,_0xdfcc3b[_0x40b0('0x17')]));});});};exports[_0x40b0('0x20')]=function(_0x3485c4){return new Promise(function(_0x27bf4d,_0x2ef70d){return db[_0x40b0('0x21')][_0x40b0('0x22')]({'where':_0x3485c4['options']?_0x3485c4[_0x40b0('0x1a')]['where']||null:null})['then'](function(_0x1ceef9){if(_0x1ceef9){return _0x1ceef9[_0x40b0('0x23')](_0x3485c4['body'][_0x40b0('0x24')],_['omit'](_0x3485c4['body'],[_0x40b0('0x24'),'id'])||{});}})[_0x40b0('0x25')](function(_0x5967cc){logger['info'](_0x40b0('0x26'),_0x3485c4);logger['debug'](_0x40b0('0x26'),_0x3485c4,JSON[_0x40b0('0x1e')](_0x5967cc));_0x27bf4d(_0x5967cc);})[_0x40b0('0x1f')](function(_0x1d83ea){logger[_0x40b0('0x16')]('AddTags',_0x1d83ea['message'],_0x3485c4);_0x2ef70d(_this[_0x40b0('0x16')](0x1f4,_0x1d83ea[_0x40b0('0x17')]));});});};