Built motion from commit (unavailable).|2.5.20
[motion2.git] / server / api / chatInteraction / chatInteraction.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 _0x0992=['../../mysqldb','../../config/logger','rpc','client','http','redis','localhost','socket.io-emitter','./chatInteraction.socket','register','request','then','info','ChatInteraction,\x20%s,\x20%s','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify','error','message','request\x20sent','catch','UpdateChatInteraction','update','body','options','raw','attributes','limit','AddTagsToChatInteraction','ChatInteraction','find','addTags','ids','omit','spread','AddTags','lodash','moment','randomstring','ioredis'];(function(_0x47407c,_0x168356){var _0x52d635=function(_0x56d475){while(--_0x56d475){_0x47407c['push'](_0x47407c['shift']());}};_0x52d635(++_0x168356);}(_0x0992,0x1dc));var _0x2099=function(_0x1de4b8,_0x529b41){_0x1de4b8=_0x1de4b8-0x0;var _0x557699=_0x0992[_0x1de4b8];return _0x557699;};'use strict';var _=require(_0x2099('0x0'));var util=require('util');var moment=require(_0x2099('0x1'));var BPromise=require('bluebird');var rs=require(_0x2099('0x2'));var fs=require('fs');var Redis=require(_0x2099('0x3'));var db=require(_0x2099('0x4'))['db'];var utils=require('../../config/utils');var logger=require(_0x2099('0x5'))(_0x2099('0x6'));var config=require('../../config/environment');var jayson=require('jayson/promise');var client=jayson[_0x2099('0x7')][_0x2099('0x8')]({'port':0x232a});config[_0x2099('0x9')]=_['defaults'](config[_0x2099('0x9')],{'host':_0x2099('0xa'),'port':0x18eb});var socket=require(_0x2099('0xb'))(new Redis(config[_0x2099('0x9')]));require(_0x2099('0xc'))[_0x2099('0xd')](socket);function respondWithRpcPromise(_0x1eec2b,_0x53a6c7,_0x783bea){return new BPromise(function(_0x48f8fe,_0x5d617b){return client[_0x2099('0xe')](_0x1eec2b,_0x783bea)[_0x2099('0xf')](function(_0x473c89){logger[_0x2099('0x10')](_0x2099('0x11'),_0x53a6c7,'request\x20sent');logger[_0x2099('0x12')](_0x2099('0x13'),_0x53a6c7,'request\x20sent',JSON[_0x2099('0x14')](_0x473c89));if(_0x473c89[_0x2099('0x15')]){if(_0x473c89[_0x2099('0x15')]['code']===0x1f4){logger[_0x2099('0x15')](_0x2099('0x11'),_0x53a6c7,_0x473c89['error'][_0x2099('0x16')]);return _0x5d617b(_0x473c89['error']['message']);}logger[_0x2099('0x15')](_0x2099('0x11'),_0x53a6c7,_0x473c89[_0x2099('0x15')][_0x2099('0x16')]);return _0x48f8fe(_0x473c89[_0x2099('0x15')][_0x2099('0x16')]);}else{logger[_0x2099('0x10')]('ChatInteraction,\x20%s,\x20%s',_0x53a6c7,_0x2099('0x17'));_0x48f8fe(_0x473c89['result'][_0x2099('0x16')]);}})[_0x2099('0x18')](function(_0x37bdff){logger[_0x2099('0x15')](_0x2099('0x11'),_0x53a6c7,_0x37bdff);_0x5d617b(_0x37bdff);});});}exports[_0x2099('0x19')]=function(_0x590f6a){var _0x29d892=this;return new Promise(function(_0x22ff1b,_0x2a1d3b){return db['ChatInteraction'][_0x2099('0x1a')](_0x590f6a[_0x2099('0x1b')],{'raw':_0x590f6a['options']?_0x590f6a[_0x2099('0x1c')][_0x2099('0x1d')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x590f6a['options']?_0x590f6a[_0x2099('0x1c')]['where']||null:null,'attributes':_0x590f6a[_0x2099('0x1c')]?_0x590f6a[_0x2099('0x1c')][_0x2099('0x1e')]||null:null,'limit':_0x590f6a[_0x2099('0x1c')]?_0x590f6a[_0x2099('0x1c')][_0x2099('0x1f')]||null:null})['then'](function(_0x8c68ff){logger['info'](_0x2099('0x19'),_0x590f6a);logger[_0x2099('0x12')]('UpdateChatInteraction',_0x590f6a,JSON[_0x2099('0x14')](_0x8c68ff));_0x22ff1b(_0x8c68ff);})['catch'](function(_0x14fcfc){logger[_0x2099('0x15')](_0x2099('0x19'),_0x14fcfc[_0x2099('0x16')],_0x590f6a);_0x2a1d3b(_0x29d892[_0x2099('0x15')](0x1f4,_0x14fcfc[_0x2099('0x16')]));});});};exports[_0x2099('0x20')]=function(_0x3c1f0b){return new Promise(function(_0x2c42f7,_0x37a822){return db[_0x2099('0x21')][_0x2099('0x22')]({'where':_0x3c1f0b[_0x2099('0x1c')]?_0x3c1f0b[_0x2099('0x1c')]['where']||null:null})[_0x2099('0xf')](function(_0xbc94e7){if(_0xbc94e7){return _0xbc94e7[_0x2099('0x23')](_0x3c1f0b[_0x2099('0x1b')][_0x2099('0x24')],_[_0x2099('0x25')](_0x3c1f0b[_0x2099('0x1b')],[_0x2099('0x24'),'id'])||{});}})[_0x2099('0x26')](function(_0x2993bb){logger[_0x2099('0x10')](_0x2099('0x27'),_0x3c1f0b);logger[_0x2099('0x12')]('AddTags',_0x3c1f0b,JSON['stringify'](_0x2993bb));_0x2c42f7(_0x2993bb);})[_0x2099('0x18')](function(_0x5ce672){logger[_0x2099('0x15')](_0x2099('0x27'),_0x5ce672[_0x2099('0x16')],_0x3c1f0b);_0x37a822(_this[_0x2099('0x15')](0x1f4,_0x5ce672[_0x2099('0x16')]));});});};