49f555d7601c2701b3d9a7d33636173d7fca4bf0
[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 _0x19db=['code','error','message','result','catch','update','body','options','raw','attributes','limit','UpdateChatInteraction','AddTagsToChatInteraction','ChatInteraction','addTags','ids','omit','spread','AddTags','util','moment','bluebird','ioredis','../../mysqldb','../../config/utils','../../config/logger','rpc','../../config/environment','client','http','redis','defaults','localhost','./chatInteraction.socket','then','info','ChatInteraction,\x20%s,\x20%s','request\x20sent','debug','ChatInteraction,\x20%s,\x20%s,\x20%s','stringify'];(function(_0x1d6686,_0x3bbb1d){var _0x448a19=function(_0x3b00ac){while(--_0x3b00ac){_0x1d6686['push'](_0x1d6686['shift']());}};_0x448a19(++_0x3bbb1d);}(_0x19db,0x1ad));var _0xb19d=function(_0x4b5733,_0x345f7a){_0x4b5733=_0x4b5733-0x0;var _0x511d04=_0x19db[_0x4b5733];return _0x511d04;};'use strict';var _=require('lodash');var util=require(_0xb19d('0x0'));var moment=require(_0xb19d('0x1'));var BPromise=require(_0xb19d('0x2'));var rs=require('randomstring');var fs=require('fs');var Redis=require(_0xb19d('0x3'));var db=require(_0xb19d('0x4'))['db'];var utils=require(_0xb19d('0x5'));var logger=require(_0xb19d('0x6'))(_0xb19d('0x7'));var config=require(_0xb19d('0x8'));var jayson=require('jayson/promise');var client=jayson[_0xb19d('0x9')][_0xb19d('0xa')]({'port':0x232a});config[_0xb19d('0xb')]=_[_0xb19d('0xc')](config[_0xb19d('0xb')],{'host':_0xb19d('0xd'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0xb19d('0xe'))['register'](socket);function respondWithRpcPromise(_0x1c8727,_0x316b27,_0x4d2b89){return new BPromise(function(_0x530e9f,_0x2640d5){return client['request'](_0x1c8727,_0x4d2b89)[_0xb19d('0xf')](function(_0x4b4413){logger[_0xb19d('0x10')](_0xb19d('0x11'),_0x316b27,_0xb19d('0x12'));logger[_0xb19d('0x13')](_0xb19d('0x14'),_0x316b27,'request\x20sent',JSON[_0xb19d('0x15')](_0x4b4413));if(_0x4b4413['error']){if(_0x4b4413['error'][_0xb19d('0x16')]===0x1f4){logger[_0xb19d('0x17')]('ChatInteraction,\x20%s,\x20%s',_0x316b27,_0x4b4413['error'][_0xb19d('0x18')]);return _0x2640d5(_0x4b4413[_0xb19d('0x17')]['message']);}logger[_0xb19d('0x17')](_0xb19d('0x11'),_0x316b27,_0x4b4413[_0xb19d('0x17')][_0xb19d('0x18')]);return _0x530e9f(_0x4b4413[_0xb19d('0x17')]['message']);}else{logger['info'](_0xb19d('0x11'),_0x316b27,'request\x20sent');_0x530e9f(_0x4b4413[_0xb19d('0x19')][_0xb19d('0x18')]);}})[_0xb19d('0x1a')](function(_0x232c5a){logger[_0xb19d('0x17')](_0xb19d('0x11'),_0x316b27,_0x232c5a);_0x2640d5(_0x232c5a);});});}exports['UpdateChatInteraction']=function(_0x5af5f9){var _0x4f976=this;return new Promise(function(_0x57bcea,_0x3df74c){return db['ChatInteraction'][_0xb19d('0x1b')](_0x5af5f9[_0xb19d('0x1c')],{'raw':_0x5af5f9[_0xb19d('0x1d')]?_0x5af5f9[_0xb19d('0x1d')][_0xb19d('0x1e')]===undefined?!![]:![]:!![],'individualHooks':!![],'where':_0x5af5f9[_0xb19d('0x1d')]?_0x5af5f9[_0xb19d('0x1d')]['where']||null:null,'attributes':_0x5af5f9[_0xb19d('0x1d')]?_0x5af5f9[_0xb19d('0x1d')][_0xb19d('0x1f')]||null:null,'limit':_0x5af5f9[_0xb19d('0x1d')]?_0x5af5f9[_0xb19d('0x1d')][_0xb19d('0x20')]||null:null})[_0xb19d('0xf')](function(_0x14cbca){logger['info'](_0xb19d('0x21'),_0x5af5f9);logger['debug'](_0xb19d('0x21'),_0x5af5f9,JSON[_0xb19d('0x15')](_0x14cbca));_0x57bcea(_0x14cbca);})[_0xb19d('0x1a')](function(_0x4e371a){logger[_0xb19d('0x17')]('UpdateChatInteraction',_0x4e371a['message'],_0x5af5f9);_0x3df74c(_0x4f976[_0xb19d('0x17')](0x1f4,_0x4e371a[_0xb19d('0x18')]));});});};exports[_0xb19d('0x22')]=function(_0x291541){return new Promise(function(_0x16ac30,_0x408636){return db[_0xb19d('0x23')]['find']({'where':_0x291541[_0xb19d('0x1d')]?_0x291541['options']['where']||null:null})[_0xb19d('0xf')](function(_0x48d2d9){if(_0x48d2d9){return _0x48d2d9[_0xb19d('0x24')](_0x291541[_0xb19d('0x1c')][_0xb19d('0x25')],_[_0xb19d('0x26')](_0x291541[_0xb19d('0x1c')],[_0xb19d('0x25'),'id'])||{});}})[_0xb19d('0x27')](function(_0x401c96){logger[_0xb19d('0x10')]('AddTags',_0x291541);logger['debug'](_0xb19d('0x28'),_0x291541,JSON[_0xb19d('0x15')](_0x401c96));_0x16ac30(_0x401c96);})[_0xb19d('0x1a')](function(_0x5592ef){logger[_0xb19d('0x17')](_0xb19d('0x28'),_0x5592ef['message'],_0x291541);_0x408636(_this[_0xb19d('0x17')](0x1f4,_0x5592ef[_0xb19d('0x18')]));});});};