dcbe48d81f01345c40eacbffa26c377af552cf9a
[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 _0xde97=['spread','AddTags','moment','randomstring','ioredis','../../mysqldb','../../config/utils','rpc','../../config/environment','jayson/promise','client','http','redis','defaults','localhost','./mailInteraction.socket','register','then','info','MailInteraction,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','UpdateMailInteraction','MailInteraction','update','raw','options','where','attributes','limit','catch','find','addTags','ids','omit','body'];(function(_0x2e3417,_0x33ddd1){var _0x10ea53=function(_0x19ad71){while(--_0x19ad71){_0x2e3417['push'](_0x2e3417['shift']());}};_0x10ea53(++_0x33ddd1);}(_0xde97,0x192));var _0x7de9=function(_0x4551f6,_0x48151b){_0x4551f6=_0x4551f6-0x0;var _0x581dc2=_0xde97[_0x4551f6];return _0x581dc2;};'use strict';var _=require('lodash');var util=require('util');var moment=require(_0x7de9('0x0'));var BPromise=require('bluebird');var rs=require(_0x7de9('0x1'));var fs=require('fs');var Redis=require(_0x7de9('0x2'));var db=require(_0x7de9('0x3'))['db'];var utils=require(_0x7de9('0x4'));var logger=require('../../config/logger')(_0x7de9('0x5'));var config=require(_0x7de9('0x6'));var jayson=require(_0x7de9('0x7'));var client=jayson[_0x7de9('0x8')][_0x7de9('0x9')]({'port':0x232a});config[_0x7de9('0xa')]=_[_0x7de9('0xb')](config['redis'],{'host':_0x7de9('0xc'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x7de9('0xa')]));require(_0x7de9('0xd'))[_0x7de9('0xe')](socket);function respondWithRpcPromise(_0x237b30,_0x21179a,_0x1c4d6d){return new BPromise(function(_0x575362,_0x15d85d){return client['request'](_0x237b30,_0x1c4d6d)[_0x7de9('0xf')](function(_0x2e2a06){logger[_0x7de9('0x10')](_0x7de9('0x11'),_0x21179a,_0x7de9('0x12'));logger[_0x7de9('0x13')]('MailInteraction,\x20%s,\x20%s,\x20%s',_0x21179a,'request\x20sent',JSON[_0x7de9('0x14')](_0x2e2a06));if(_0x2e2a06[_0x7de9('0x15')]){if(_0x2e2a06[_0x7de9('0x15')][_0x7de9('0x16')]===0x1f4){logger[_0x7de9('0x15')](_0x7de9('0x11'),_0x21179a,_0x2e2a06[_0x7de9('0x15')]['message']);return _0x15d85d(_0x2e2a06[_0x7de9('0x15')]['message']);}logger[_0x7de9('0x15')](_0x7de9('0x11'),_0x21179a,_0x2e2a06[_0x7de9('0x15')]['message']);return _0x575362(_0x2e2a06[_0x7de9('0x15')]['message']);}else{logger['info'](_0x7de9('0x11'),_0x21179a,'request\x20sent');_0x575362(_0x2e2a06['result'][_0x7de9('0x17')]);}})['catch'](function(_0x43e4a0){logger[_0x7de9('0x15')](_0x7de9('0x11'),_0x21179a,_0x43e4a0);_0x15d85d(_0x43e4a0);});});}exports[_0x7de9('0x18')]=function(_0x1a7769){var _0xd5f0e9=this;return new Promise(function(_0x5a1e1a,_0x5b0ee5){return db[_0x7de9('0x19')][_0x7de9('0x1a')](_0x1a7769['body'],{'raw':_0x1a7769['options']?_0x1a7769['options'][_0x7de9('0x1b')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x1a7769[_0x7de9('0x1c')]?_0x1a7769['options'][_0x7de9('0x1d')]||null:null,'attributes':_0x1a7769[_0x7de9('0x1c')]?_0x1a7769[_0x7de9('0x1c')][_0x7de9('0x1e')]||null:null,'limit':_0x1a7769[_0x7de9('0x1c')]?_0x1a7769[_0x7de9('0x1c')][_0x7de9('0x1f')]||null:null})[_0x7de9('0xf')](function(_0x115a93){logger[_0x7de9('0x10')](_0x7de9('0x18'),_0x1a7769);logger[_0x7de9('0x13')](_0x7de9('0x18'),_0x1a7769,JSON['stringify'](_0x115a93));_0x5a1e1a(_0x115a93);})[_0x7de9('0x20')](function(_0x18777d){logger['error'](_0x7de9('0x18'),_0x18777d['message'],_0x1a7769);_0x5b0ee5(_0xd5f0e9[_0x7de9('0x15')](0x1f4,_0x18777d['message']));});});};exports['AddTagsToMailInteraction']=function(_0x22ef7d){return new Promise(function(_0x5c7990,_0x4e6250){return db['MailInteraction'][_0x7de9('0x21')]({'where':_0x22ef7d[_0x7de9('0x1c')]?_0x22ef7d[_0x7de9('0x1c')]['where']||null:null})[_0x7de9('0xf')](function(_0x15cd91){if(_0x15cd91){return _0x15cd91[_0x7de9('0x22')](_0x22ef7d['body'][_0x7de9('0x23')],_[_0x7de9('0x24')](_0x22ef7d[_0x7de9('0x25')],[_0x7de9('0x23'),'id'])||{});}})[_0x7de9('0x26')](function(_0x227d0c){logger[_0x7de9('0x10')]('AddTags',_0x22ef7d);logger[_0x7de9('0x13')](_0x7de9('0x27'),_0x22ef7d,JSON[_0x7de9('0x14')](_0x227d0c));_0x5c7990(_0x227d0c);})[_0x7de9('0x20')](function(_0xe107c4){logger[_0x7de9('0x15')](_0x7de9('0x27'),_0xe107c4[_0x7de9('0x17')],_0x22ef7d);_0x4e6250(_this['error'](0x1f4,_0xe107c4['message']));});});};